Wish : Grasshopper Relay Component : Add wire display options

Just stumbled across the new relay component in Grasshopper WIP, and I think will be really useful for keeping models tidy. However, I think we should be able to change the associated wire display options as can be done for a standard component input. i.e. Default, Faint, Hidden

1 Like

Those options were a mistake in my opinion and I wish I never added them. The whole point of hiding wires is to clean up the graph, and the whole point of relays is to clean up the graph in a different way. Having hidden wires on relays would be like having an invisible vacuum cleaner.

1 Like

Really?! I love hidden wires… I think they are fundamental when working on large definitions. In fact I wish wire controls could be set from the output side of components as well. Also… I would totally buy an invisible vacuum cleaner.

1 Like

I am also a big fan of the hidden wires when used appropriately. For example if I have data which appears in loads of different places such as a debug flag or list of names. I find it tidies things up really nicely.

I currently use primitive components in place of relays, but I always figured there is an overhead to that as the data is being duplicated each time. Is that the case?

You’d never be able to find it if you need it, and you’d always trip over it when you don’t need it.

My problem with hidden wires is that they obfuscate the logic. You can no longer look at a network and see how it works because some integral part of it is hidden from you.

I think there are good ways at transmitting data without a visible connection, but it will require a strong visual cue.

I agree that there is an element of obfuscation about hiding the wires, but I often find the obfuscation is inevitable due to the sheer size of the canvas I’m working on. Having a wire trailing through 20 other components does nothing to help with readability.

And as for the visual cue, I would say you have already solved that problem with the little wifi symbol. That tells me that there is an input from somewhere, and when clicked the wire shows up and all is well in world.

I would say there is a case for creating a “global” data type which can be available throughout the canvas without disturbing the main logic of the system. i.e. hidden wires are for meta data and the solid wires are for the core data being manipulated.

I also think there is a strong case for having globally available data/definitions in c# components but that is for another day.

Right, but that sounds like a completely different problem which calls for a different solution. I do agree that hiding wires serves a purpose, but it only does so because there are no better ways to solve the issues.

I would say overall I agree… The logic can become obscured when you use hidden wires, but they do solve a problem of readability on larger definitions. Just out of curiosity- @DavidRutten how do you feel about the straight wires that Millipede and Monolith use?.. I kind of like them a lot and wish they were included in the standard wire display options, but I’m not sure they necessarily make anything easier to read… just that they look cool. Also… I really like the component from Metahopper that allows you to change more than one set of wire displays at once… big time saver… I would love document level control of display wires… to turn all to standard at the same time would be nice.

I don’t think I’ve ever intentionally seen either of those plugins (I’m sure screenshots have made their way past my retina, I certainly remember seeing some alternate wire shapes). I’m not a fan of a wire shapes that make it hard to see how many are coming into/out of a parameter. If your parameter is fed by three wires and they all start out travelling horizontally, you cannot see that there’s more than one.

Then GH2 is going to be bad news for you :slight_smile: Well, at least initially. My plan is to remove most if not all of the weird options we have now for alternate display* and come up with better solutions. Ideally solutions that do not require the user to baby-sit the settings.

* no more disabling fancy wires, no more wire display flavours, no more icon/name mode, no more fullname/nickname mode