tutorials:import-object-in-groimp
Differences
This shows you the differences between two versions of the page.
Next revision | Previous revision | ||
tutorials:import-object-in-groimp [2024/09/27 15:54] – created tim | tutorials:import-object-in-groimp [2025/05/25 12:42] (current) – barley1965 | ||
---|---|---|---|
Line 1: | Line 1: | ||
- | GroIMP | + | With GroIMP |
- | In the following different way of adding a file will be shown based on {{ : | + | In the following, a different way of adding a file will be shown based on {{ : |
Line 12: | Line 12: | ||
The easiest way is to add the object directly, using the main menu: Objects, there you can find the options insert File and insert File to RGG. | The easiest way is to add the object directly, using the main menu: Objects, there you can find the options insert File and insert File to RGG. | ||
- | They both work very similar, starting with a file dialog to choose which file to import and then turning this file into a graph and adding it. The only difference is that ' | + | They both work very similar, starting with a file dialog to choose which file to import and then turning this file into a graph and adding it. The only difference is that ' |
- | In order to remove | + | In order to remove |
Line 27: | Line 27: | ||
[f: | [f: | ||
</ | </ | ||
+ | |||
+ | |||
+ | ===== Using the Object explorer ===== | ||
+ | |||
+ | A second more reusable way is to add the external objects to the Object explorer. The explorer can be found on the main menu on Panels/ | ||
+ | After selecting the file with the file dialog a popup asks "How should the file be added?" | ||
+ | |||
+ | __Add the file:__ the file is copied to a folder object in the GSZ or the project directory. This means the file is added to the project and will also be available if the project is moved. | ||
+ | |||
+ | __Link the file:__ only the path to the current file is added. This can be useful in a more complex pipeline where the external file is updated by another software or another GroIMP project. However, this relays on the file path to the external object. | ||
+ | |||
+ | __Embed the file:__ The file is read and added to the meta graph. Doing so makes it independent from the format, the file or the import process. However, it is then part of the GroIMP graph and for bigger files this could slow down the simulation. | ||
+ | |||
+ | The choice really depends on the use case, but in our case the easiest is to add the file. | ||
+ | After the file has been loaded it can be referenced from the RGG using ' | ||
+ | Using this in a XL query will create an instance of the imported object, in the Graph. This means it is not importing the graph structure but only one node representing the 3d structure. | ||
+ | |||
+ | For example the following code would create three times the same tree in a row: | ||
+ | < | ||
+ | |||
+ | protected void init () | ||
+ | [ | ||
+ | Axiom ==> for(int i=0; i<3; i++)( | ||
+ | Translate(0, | ||
+ | [ | ||
+ | Reference(" | ||
+ | ] | ||
+ | ); | ||
+ | ] | ||
+ | </ | ||
+ | |||
+ | It is also possible to access the graph structure of these referenced objects using the code below but it is more recommended to use the GraphExplorer to do so. | ||
+ | < | ||
+ | { | ||
+ | Reference ref = new Reference(" | ||
+ | Node refRoot = ref.resolveNode(); | ||
+ | } | ||
+ | </ | ||
+ | |||
+ | |||
tutorials/import-object-in-groimp.1727445265.txt.gz · Last modified: 2024/09/27 15:54 by tim