Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
Last revision Both sides next revision
lesson_12 [2019/10/07 12:37]
britaldo
lesson_12 [2019/10/07 12:52]
britaldo
Line 14: Line 14:
 The [[model_presentation#​functor_action_bar|functor action bar]] of all functors within a submodel script exhibits additional options for **exporting functor inputs and outputs**. Exporting a new input or output can be performed following the steps below: The [[model_presentation#​functor_action_bar|functor action bar]] of all functors within a submodel script exhibits additional options for **exporting functor inputs and outputs**. Exporting a new input or output can be performed following the steps below:
 \\ \\
-  ​First, click on the functor whose inputs or outputs will be exported.+\\ 
 +  ​Click on the functor whose inputs or outputs will be exported.
 \\ \\
   * Select the **export functor inputs and outputs** on the [[model_presentation#​functor_action_bar|functor action bar]] and choose the input or outputs that will be exported. It is possible to define the input and output names and their corresponding descriptions. It is also possible to mark an exported input as advanced or optional. Optional inputs can also define an optional value that will be assigned to the port if no explicit value is provided.   * Select the **export functor inputs and outputs** on the [[model_presentation#​functor_action_bar|functor action bar]] and choose the input or outputs that will be exported. It is possible to define the input and output names and their corresponding descriptions. It is also possible to mark an exported input as advanced or optional. Optional inputs can also define an optional value that will be assigned to the port if no explicit value is provided.
Line 21: Line 22:
 \\ \\
 Below you can see two examples of updating the inputs and output ports of a local submodel. ​ Below you can see two examples of updating the inputs and output ports of a local submodel. ​
 +\\
 \\ \\
 ===Example 1=== ===Example 1===
Line 39: Line 41:
 {{ youtube>​wDtyrRbUNo4?​size=853x480&​rel=0 |Updating local submodels }} {{ youtube>​wDtyrRbUNo4?​size=853x480&​rel=0 |Updating local submodels }}
 \\ \\
-  * Removing ports from a local submodel is also similar to updating the exported ports. You can remove the ports using the "export functor inputs and outputs" ​option on the [[model_presentation#​functor_action_bar|functor action bar]] and unchecking the corresponding port on the "Exported Ports" ​dialog or using the "Apply Changes / Edit Submodel Properties" ​dialog. Changing the order of the inputs or output ports can only be done by editing the port list on the "Apply Changes / Edit Submodel Properties" ​dialog.+  * Removing ports from a local submodel is also similar to updating the exported ports. You can remove the ports using the **export functor inputs and outputs** option on the [[model_presentation#​functor_action_bar|functor action bar]] and unchecking the corresponding port on the **Exported Ports** dialog or using the **Apply Changes / Edit Submodel Properties** dialog. Changing the order of the inputs or output ports can only be done by editing the port list on the **Apply Changes / Edit Submodel Properties** dialog.
 \\ \\
 {{ youtube>​zx6moYBS3YU?​size=853x480&​rel=0 |Removing portos and changing port order }} {{ youtube>​zx6moYBS3YU?​size=853x480&​rel=0 |Removing portos and changing port order }}
Line 51: Line 53:
 {{ youtube>​v8OKfyWsYoM?​size=853x480&​rel=0 |Importing local submodels }} {{ youtube>​v8OKfyWsYoM?​size=853x480&​rel=0 |Importing local submodels }}
 \\ \\
-It is also possible to copy the submodel definition by clicking on the "Import submodel definition" ​button on the [[functor_library#​functor_library_bar|functor library bar]] of the local submodel tab of the [[functor library]]. The definition of system submodel and system submodels can also be imported using the corresponding "​Import submodel definition"​ button on the [[functor_library#​functor_library_bar|functor library bar]] of the submodel tab of the [[functor library]].+It is also possible to copy the submodel definition by clicking on the **Import submodel definition** button on the [[functor_library#​functor_library_bar|functor library bar]] of the local submodel tab of the [[functor library]]. The definition of system submodel and system submodels can also be imported using the corresponding "​Import submodel definition"​ button on the [[functor_library#​functor_library_bar|functor library bar]] of the submodel tab of the [[functor library]].
 \\ \\
 \\ \\
-===== Publishing a Local Submodel ​into a User Submodel ===== +===== Publishing a Local Submodel ​as a User Submodel ===== 
- +\\ 
-Once your local submodel ​was developed and fully tested, you can turn your local submodel ​into a user submodel. +Once your local submodel ​is developed and fully tested, you can turn it into a user submodel. 
 +\\
 To publish a local submodel into a user submodel, click on the "​Publish Submodel"​ button on the submodel "​Submodel Options"​ drop down menu located on the model toolbar. ​ To publish a local submodel into a user submodel, click on the "​Publish Submodel"​ button on the submodel "​Submodel Options"​ drop down menu located on the model toolbar. ​
- 
-Turning a local submodel into a user submodel make reusing a submodel easier, the submodel will always be available to be used on your next models, but it have some drawbacks as well. You are fully responsible for the consequences of updating a user submodel. Beware, that unlike local submodels, your models will not carry a copy of a user submodel as part of their definition. So, if you change a user submodel in a way that breaks compatibility with the model using its definition, your models will not work anymore. 
 \\ \\
 +Turning a local submodel into a user submodel makes reusing a submodel easier, the submodel will always be available to be used on your next models, but that implies in some drawbacks as well. You are fully responsible for the consequences of updating a user submodel. Unlike local submodels, your models will not carry a copy of a user submodel as part of their definition. So, if you change a user submodel in a way that breaks compatibility with the model using its definition, your models will not work anymore.
 +\\
 +\\
 +===Congratulations,​ you have successfully completed this lesson!===
 +\\
 +\\
 +☞[[:​lesson_13 | Next Lesson]]
 \\ \\
-Congratulations,​ you have successfully completed this lesson! Now let’s move to the **next lesson:​** ​[[lesson_13|LESSON 13: Loop structures on Dinamica EGO]]+[[:​guidebook_startBack to Guidebook Start]]