IГIS Extension - Dynamo 2 Graph Colorization + Customization

Dear All,

I turned a couple research topics and ideas from last year into a Dynamo 2 Extension that can translate the grey-scale Dynamo graphs with their overlapping dark grey connectors into something more legible, colorful… and fun.




IГIS Dynamo 2 Graph Colorization + Customization

IГIS is a Dynamo Extension that allows you to colorize your Dynamo Nodes + Connectors individually and without relying on Groups and their limited color range

Custom settings can be defined for and stored inside each Dynamo Script. They will be displayed on every computer with the IГIS Extension installed and remain intact when the Extension is not present as long as the IГIS Node remains in the script

The Extension can be used to…

  • Improve readability of Dynamo scripts
  • Add visual cues to Nodes and Connectors
  • Categorize Nodes or parts of a script
  • Make Dynamo more colorful and fun



I am happy to hear if IГIS is useful for you, about your experience with the Extension, how you used it in your scripts, your ideas for improvements as well as future features and to see some colorful screenshots.

Below you can find a couple slides explaining the installation and use of the Extension and they are also embedded within the IГIS node itself.

Best regards, Eckart




35 Likes

I love it.

Two pieces of feedback:

  1. I immediately miss how nodes change the node header color from grey to dark grey when they receive all the inputs they require. Is it possible to maintain this functionality until a color overwrite is applied?

  2. I also am not a fan of the transparency that gets applied to all nodes now. Could this be a toggle in the settings to enable/disable the transparency?

Honestly, these are both things I could get used to, but found them bothering me right away. This is a fantastic tool.

2 Likes

Hey @L-Vettz,

Thanks a lot for your input!
I will collect the ideas and feature requests for a bit and then see what can be improved.

The transparency is a parameter but I didn’t make it accessible in Dynamo, yet (it is planned). You can change it in the Dynamo file until then: Open it with notepad, search for Node_Opacity and turn the 0.8 into a 1.0 Then the nodes should remain non-transparent in this script.

2 Likes

This is really impressive! I’m curious how you are serializing the settings - I think it would be good to have a conversation regarding what would have made your work easier.

Ah, I see you use a Node to serialize the settings! A good trick.

6 Likes

@Eckart-S, amazing. Thanks :hugs:

1 Like

Hi @Michael_Kirschner2,

Yes, I use the custom node as simplest solution since Dynamo automatically takes care of the serialization and I wanted to follow the common procedures as close as possible.

A drawback is the seemingly superfluous and unconnected node in the graph but I use this for the settings panel and other features.

The main problem is that the stored data is gone when the node is deleted. This part could be improved in Dynamo since other Extensions might want to store custom data inside the dyn files as well.

I think an added data structure = json branch for “Extensions” would do the trick. It could work very similar to the existing one for “Nodes” that stores some required values like extension type / id and allows custom data to be added (similar to my data structure called “Storage”).

The more difficult part is… how does this custom data for an extension ends up in the dyn file.

2 Likes

This is an excellent idea and will be a really good tool for people developing complex scripts. I’ve found one of the shortcomings of graphical programming languages is that they don’t scale as well because all that spaghetti makes is harder and harder to trace back small issues. Adding some visual organization tools addresses exactly those short coming.

1 Like

I’ve always wanted a visual cue that an input is using a default value (even if subtle). Possible? Great work.

1 Like

Something like the built in Run Preview function?

5 Likes

I have some more feedback for you.

When a script is run, if a node errors out, it does not turn yellow to indicate the erroneous node. The error warning bubble still appears over the top of the node, but that can be hard to spot in a large graph. This can make finding problems a little bit harder. I can only assume it will do the same thing for nodes that are missing packages.

I am also finding myself missing the highlight on the node connectors when I select a specific node. This is much more minor.

Still loving it. I’ve gone back at this point and puked rainbow over all my graphs at this point.

3 Likes

Thanks a lot for the additional feedback @L-Vettz

Since the Extension overwrites the node colors it likely hides this Dynamo-controlled color changes as a result. I will do some testing to see how to amend this… in general it will be harder to see warnings with all this colorful nodes so a different approach might be needed

2 Likes

Been playing with this a little bit and it’s really impressive. Should be really helpful for managing large graphs.

Two requests:

  1. As has already been discussed, the native warnings and errors are a major missing feature. It would be fantastic if we could figure out a way to get them to work with all these colorful nodes.

  2. How hard would it be to implement something like custom presets? It would be great if I could specify color templates for things like “User Input”, “Revit Data”, “Dynamo Data”, “Import/Export”, etc and then just select all my nodes and assign them to those presets.

2 Likes

Hey @Nick_Boyts,

Thanks a lot for the feedback.
I have to see how Dynamo deals with this warnings and how I can include this.
Custom presets are on the ToDo list, e.g. for color coding based on office standards, etc. Might take a bit of time to implement them.

1 Like

BTW…

The IГIS Node includes a small and slightly geeky Easter egg :laughing:
Anyone found out how to activate this, yet?

I’ve been searching like a madman

6 Likes

You have to click the IГIS node in a certain place and way. Not quite like a madman though :wink:

3 Likes

Hahaha. Fantastic!

1 Like

:smiley:
Cat

9 Likes

I’m late to the game, but this extension is really cool! Very very nice and polished work. I’ve been wanting to have such a function for a while.

If you ever think about adding features to it, it would be nice if there was an ability to save presets.

1 Like