Grasshopper

algorithmic modeling for Rhino

Hi

I always thought clusters are a very useful tool to share definitions and to save time by creating custom components. Even though the current functionality allows to create and edit them, it has a few bugs and I think it still lacks some features that could improve the workflow and could be added in the next cluster revision.

 

First the bugs:

The dispatch false outputs generates a cluster output even if it doesn't have an "Cluster Output" arrow. I don't know if this happens with other components.

Creating a cluster breaks the definition, so you are forced to "open cluster", fix, save, load and rewire.

 

The feature requests:

I like the fact that clusters are actually a ghx file but it would be better if you didn't have to break definitions by adding the "Cluster input" and output components. This functionality could be replaced by right clicking and selecting a "use as input" or "use as output" button. This would add an arrow icon much like the flatten o graft features and wouldn't break the definition. 

There shoud be a right click  "edit component" (or double click) that would allow to edit it, save and return to your definition, instead of having to open, edit, save, reload and rewire everytime you want to change something. The solution used by Eyeon Fusion is quite nice, it expands it in a window in the canvas, allowing to edit it and then you can collapse it back.

With locally editable clusters you would need a "Save Cluster": Right click and save the cluster to a ghx file.

"Update Cluster" allows to update a cluster with a new ghx definition or replace it with another. If the new cluster has different connections it displays a warning and disconnects. This could also be a partial solution to the previous request.

Another feature that would improve cluster sharing is editable input and output descriptions to explain the cluster functionality.

"Explode cluster" would allow to revert it to an unclustered state

"Cluster properties" would allow to set author name, help information, revision, a URL to update the cluster, to see the path of the loaded definition, name, nickname, description, Category, subCategory, icon... 

Since asking isn't the hard part..."Share cluster" could upload it to a component sharing website where users can download and rate... The most rated or downloaded could then be transformed/optimized into a proper Grasshopper C component. This could also be used to guide future grasshopper developments, moitoring what is being used.

Clusters could also record if a Grasshopper plugin is being used in it. When you insert a cluster and the plugin is missing it dispays a warning and a link to download it.

 

This is it... not much right?

 

Thanks

 

bye

 

 

 

 

 

Views: 3969

Replies to This Discussion

nice requests... I also think clusters have huge potential. I would make the creation and management of large definition much easier...

 

Looking forward to see if any of your wishes will be granted hehe

D.

"First the bugs:"

there's a whole load of bugs with clusters that I hope to address in the upcoming weeks. Including this one.

 

 

"This functionality could be replaced by right clicking and selecting a "use as input" or "use as output" button"

I don't want to replace the arrow ui, because the arrows allow you to specify the order of inputs/outputs (the order -top to bottom- of the arrows on the screen controls the order of cluster inputs/outputs). Also, they allow you to create a single input for multiple parameters without actually creating that parameter. Finally, they make it very clear which parameters act as gateways between clusters and their owners. If it turns out that it's really annoying to have to deal with the arrows I can try and come up with a secondary ui as well, but I'd like to post-pone that as long as possible.

 

 

"'Update Cluster' allows to update a cluster with a new ghx definition or replace it with another."

I can see that being useful, but then that's probably useful to have as a generic feature, not just clusters. It would be nice to be able to switch out script or expression or division components in the same way.

 

 

"Another feature that would improve cluster sharing is editable input and output descriptions to explain the cluster functionality."

Agreed.

 

 

"'Explode cluster' would allow to revert it to an unclustered state"

Agreed.

 

 

"'Cluster properties' would allow to set author name, help information, revision, a URL to update the cluster, to see the path of the loaded definition, name, nickname, description, Category, subCategory, icon... "

Agreed. Do note that you can set the icon (of any object, not just clusters) just by dragging a 24x24 pixel image from Windows Explorer onto the object.

 

 

"Since asking isn't the hard part...'Share cluster' could upload it to a component sharing website where users can download and rate..."

We've been discussing a sharing system for GHAs, clusters, userobjects, example files etc. etc. for a while within McNeel. It looks like the Food4Rhino web-server could host all this stuff, we just need to write a proper UI for this. This is definitely low-priority compared to getting clusters up to snuff.

 

 

"Clusters could also record if a Grasshopper plugin is being used in it. When you insert a cluster and the plugin is missing it dispays a warning and a link to download it."

I suppose. The same would go for just standard gh/ghx files that use components from special libraries. I think I'll add that mechanism first as it affects more people. Then it should be fairly easy to also enable it for clusters.

 

 

"This is it... not much right?"

Pff, piece of cake. I'm just surprised you didn't ask for password protection of clusters :)

 

--

David Rutten

david@mcneel.com

Poprad, Slovakia

can we have password protected clusters :P

I thought about protected clusters... and I'm not sure it woud be a good thing. I have learned a lot form other definitions and keeping it open is a way to allow/force to give a hand back. On the other end , it coud encourage some harder developments, but if someone is smart enough to produce some complex definition that needs protection maybe he can write it in C...

Hi

I don't know why the arrows bother me that much... maybe it's the fact that they turn the whole cluster definition orange... maybe it's because they don't let you to immediatly start editing... anyway, since my first proposition to eliminate them didn't work (and sadly I understand why) I have two other solutions

1. Make them connect like galapagos does.

2. Create an input and output for the arrows that would allow them to be part of a definition without interfering. If you use the definition as a cluster then they break the connection and expose an input or output.

bye

"maybe it's the fact that they turn the whole cluster definition orange"

 

That's something I'd like to fix actually. 

 

--

David Rutten

david@mcneel.com

Poprad, Slovakia

Now that you can make data persistent would it not be possible to, when clicking on an Open Cluster action, to pass the data to the arrows inside the cluster? This way enabling you to view whats going on inside

I don't have a really developed suggestion and I am no coder, but clusters have always seemed to me like an opportunity to introduce looping to GH. Maybe separate inputs for feeding conditions and body (ie the cluster) and a menu for choosing which type of loop?

//Fr..

Yes,
Me to Use ghuser because not developper gha.
The password is verry important for protection!

And editing is à good idea...

Good works for David ...!

"The password is verry important for protection!"

 

Protection from what exactly?

 

--

David Rutten

david@mcneel.com

Poprad, Slovakia

From those who want to steal our preeecioousss definitions!

David,

For myself go, I work with employees who are not supposed to grow on gasshopper.

    An easy way to block definitions are the cluster, but sometimes people open the most stubborn cluster!

Also the son in every way pushes people to use GH, with the cluster there is less reweave.

An easy way to set up a pluggin on multiple computers.

RSS

About

Translate

Search

© 2024   Created by Scott Davidson.   Powered by

Badges  |  Report an Issue  |  Terms of Service