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
lesson_12 [2019/10/07 12:37]
britaldo
lesson_12 [2020/01/27 09:31]
britaldo
Line 1: Line 1:
 +
 {{ :​logo_logo.png?​400 |}} {{ :​logo_logo.png?​400 |}}
 \\ \\
Line 14: Line 15:
 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 ​which 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 23:
 \\ \\
 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 31: Line 34:
 \\ \\
 <note tip> <note tip>
-Dinamica EGO comes with a set of icons from the [[http://​www.fatcow.com/​free-icons|Fat Cow Icon Set]] that can be used to customize the local submodels created by users. The icons come in size 16x16 and 32x32 pixels. The overall color of the icon choosen ​is automatically used to define the color of the functor representing the submodel on the graphical interface.+Dinamica EGO comes with a set of icons from the [[http://​www.fatcow.com/​free-icons|Fat Cow Icon Set]] that can be used to customize the local submodels created by users. The icons come in size 16x16 and 32x32 pixels. The overall color of the icon chosen ​is automatically used to define the color of the functor representing the submodel on the graphical interface.
 The set of icons are usually installed in the folder ''​IconSamples''​ in your Dinamica EGO installation folder The set of icons are usually installed in the folder ''​IconSamples''​ in your Dinamica EGO installation folder
 </​note>​ </​note>​
Line 39: Line 42:
 {{ 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 45: Line 48:
 ==== Importing a Local Submodel Between Models ==== ==== Importing a Local Submodel Between Models ====
 \\ \\
-It is possible to copy local submodels definitions between models. Once the submodel is copied from one model to another ​model, the submodels can be modified and updated independently.+It is possible to copy local submodels definitions between models. Once the submodel is copied from one model to another, the submodels can be modified and updated independently.
 \\ \\
 You can copy a local submodel definition by dragging a local submodel from the [[functor library]] to the [[model presentation]] area. The process is similar to the instantiation of a regular functor. You can copy a local submodel definition by dragging a local submodel from the [[functor library]] to the [[model presentation]] area. The process is similar to the instantiation of a regular functor.
 +\\
 \\ \\
 {{ 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]]