License Delivery maintenance is expected to occur on Saturday, November 30, between 8 AM and 11 AM CET. This may cause a short 3-hours outage in which license-related tasks: license key upload, download, update, SSA validation, access to the license pool and Graphisoft ID authentication may not function properly. We apologize for any inconvenience.
Libraries & objects
About Archicad and BIMcloud libraries, their management and migration, objects and other library parts, etc.

How to know that GDL object is showed from hotlinked module?

Anonymous
Not applicable
I need to my GDL object will be shown as black in the project.
But if them inserted to project with hotlinked module - as yellow.
How I can to know what my object is inside hotlinked module?
Good luck!)
3 REPLIES 3
Laszlo Nagy
Community Admin
Community Admin
Hi Tsepov,

Here is how to do it:
You need to create Graphic Override Rules. One to override the Pen (to Black color) of those Object type elements that do not come from a Hotlinked Module (Image 1), and another to override the Pen (to Yellow color) of those Object type elements that DO come from a Hotlinked Module (Image 2).
In the Criteria panel you can use either the "Hotlink Source" or the "Hotlinked Module" criterion, both will work.

Then create a new Graphic Override Combination (GOC) and add both Override Rules, then apply the GOC to the Viewpoint (Image 3).
Loving Archicad since 1995 - Find Archicad Tips at x.com/laszlonagy
AMD Ryzen9 5900X CPU, 64 GB RAM 3600 MHz, Nvidia GTX 1060 6GB, 500 GB NVMe SSD
2x28" (2560x1440), Windows 10 PRO ENG, Ac20-Ac27
Anonymous
Not applicable
Thanks for the answer!
But I need the object to determine this and show it in a different color.
In my program, the user must distinguish the object from the hotlinked module without additional graphic replacement settings.
Laszlo Nagy
Community Admin
Community Admin
So you want the GDL Object to know whether it is in the Project File itself or coming from a Hotlinked Module?
I looked through the GDL Reference Guide but I did not find any specific command for this.
There is a REQUEST command:
n = REQUEST ("Full_ID_of_parent", "", id_string)
For annotation elements linked or hotlinked on the floor plan, returns all identifiers (Master ID) of the linked modules and the parent library parts’ identifier set in the tool’s settings dialog box in the id_string variable (otherwise empty string). Expression returns 0 and contains dummy return values (emtpy string or 0) if used in parameter script, causing additional warning.


So this may be used somehow. For example, if the user always provides a Master ID to a Hotlinked Module when they are placed, then the Full ID of the GDL Object within the Hotlinked Module will be different from its Element ID (User ID). This difference could be checked and then the Pen of the GDL Object could be set in its 2D Script to change accordingly. This is in theory, I have not tried it, you would have to modify the 2D Script of the GDL Object.
Loving Archicad since 1995 - Find Archicad Tips at x.com/laszlonagy
AMD Ryzen9 5900X CPU, 64 GB RAM 3600 MHz, Nvidia GTX 1060 6GB, 500 GB NVMe SSD
2x28" (2560x1440), Windows 10 PRO ENG, Ac20-Ac27