Grasshopper

algorithmic modeling for Rhino

I've uploaded the Grasshopper 0.6.0015 installer. Download links available in this post.

!!! Careful, do not overwrite old files. Use the SaveAs... feature instead !!!

Since quite a lot has changed I'm assuming there will be some serious bugs. I'll upload a new installer friday-evening with all available fixes. Until then, you can get the pre-release here:
EXE installer

and a zipped version of the same installer:
ZIP installer


Known problems:
- Layout logic has been largely rewritten, which means that components and parameters will appear slightly shifted when loading old files. Panels, ParamViewers, Sketches etc should remain in place.

- Many core functions and classes have been changed. This will affect those VB and C# components that were calling directly into Grasshopper. Several of Giulio Piacento's components (TheEngine, BakingTools) will no longer work for example.

- Clusters have been removed entirely (trust me, there's a good reason for this), so any file you load that had clusters will give you IO warnings and the cluster contents will spill directly onto the canvas (functionality should remain the same).



New Features:
- Params.Special.ParamViewer now has scrollbars if the data description exceeds the visual rectangle.
- Params.Special.ParamViewer now has an alternative display mode which draws a graphic representation of the data tree.
- VB and C# component type hints are now much more robust.
- Zoom Selected button in View menu and Canvas Toolbar.
- Enable/Disable Solver switch which allows the user to completely switch off Grasshopper updates. This global switch replaces the RhinoEvents and Grasshopper events toggles, which were document bound.
- It is now possible to save and restore states ([Solution->Save State...] and [Solution->Restore State] menu). Sliders, Graphs, Boolean Toggles, Colour Swatches and Gradients can be included in a state record.
- ASSERTS can now all individually be discarded for the remainder of the runtime process.
- Discarded ASSERTS can be re-enabled via the [Solution->Clear Exception Ignore List] menu.
- Save operations are now echoed in the status bar, so there is feedback when using Ctrl+S.
- Deselect objects by pressing Escape in addition to Ctrl+D.
- Unknown shortcut combinations and unhandled keypresses are now relayed to the Rhino command line. So if you type "line" while Grasshopper is the active window, it will start the _Line command in Rhino.
- Objects can now instantiate themselves from IDs and Object Names, though there is still a problem with auto-updates.
- Variable parameter UI has been tuned up and all remaining (I hope) bugs have been fixed.
- Parameters and Components now have per-object display modes for icons, text or application default.
- Bakeable objects now feature a Bake... option in the menu which exposes more control over attributes.
- The Panel object now has an option for multiline input, which allows you to define a list of Strings simply by typing in multiple lines.


New Components:
- Params.Primitive.ID (represents a list of Rhino object IDs)
- Params.Special.Readfile (asynchronous text file parsing from disk with auto-update feature)
- Params.Special.ImageSampler (asynchronous image file parsing from disk with auto-update feature)
- Logic.Tree.ExplodeTree (extract all the branches from a data tree)
- Logic.Tree.PathCompare (compare a path to a search pattern)
- Logic.Tree.ReplaceBranches (a find/replace operation on the branches of data trees. Read the help topic of this component for information about how path mask work.)
- Vector.Vector.Display (preview anchored vectors in the Rhino viewport with an optional gradient)
- Curve.Util.Reduce (polyline reduction algorithm)
- Curve.Util.Rebuild (rebuild curves)
- Curve.Spline.CircleFit (fit circles between other circles)
- Surface.Primitive.SphereFit (create a least-squares fitting sphere for a set of 3D points)
- Mesh.Triangulation.ConvexHull (create a 2D convex hull for a set of points)
- Mesh.Triangulation.DelaunayEdges (create a 2D delaunay edge-graph for a set of points)
- Mesh.Triangulation.DelaunayMesh (create a 2D delaunay mesh triangulation for a set of points)
- Mesh.Triangulation.FacetDome (create a facetted dome for a set of points on a sphere)
- Mesh.Triangulation.OcTree (create a 3D Oc-Tree structure for a set of points)
- Mesh.Triangulation.QuadTree (create 2D Quad-Tree structure for a set of points)
- Mesh.Triangulation.Proximity2D (find the N closest points in a 2D set based on minimum and maximum search radii)
- Mesh.Triangulation.Proximity3D (find the N closest points in a 3D set based on minimum and maximum search radii)
- Mesh.Triangulation.Voronoi (create a 2D voronoi diagram for a set of points)
- Intersect.Boolean.TrimSolid (trim a Brep with any number of cutting objects)
- XForm.Morph.SpatialDeform (deform geometry based on a custom spatial definition)


If you're brave enough to test this, please post bugs as soon as possible on this forum since I only have 1 day left before I leave for Siggraph.

Enjoy!
David

--
David Rutten
david@mcneel.com
Robert McNeel & Associates

Views: 2205

Replies are closed for this discussion.

Replies to This Discussion

I can repeat that. I'll have a look.

Thanks,
David
Fixed it. It will be available in tomorrows build.

Thanks for the report,
David
It seems the RebuildCrv function works differently with the Rebuild command in Rhino. Green curve in the left was rebuilt by grasshopper while black curve in the right was rebuilt by Rhino.

Hi Daniel,

looks like I mistakingly preserve start and end-tangents during rebuild. I'll add this feature as an option to the component and switch it off by default.
Thanks David! This all looks brilliant!

...however, I have found some kind of glitch with one of my VB components that used to work fine. I have a VB component with four inputs; two lists of meshes, a mesh and an integer and which outputs a datatree. The bug happens when one of the input parameters (bar the second - one of the mesh lists - selected below) is changed, which breaks something and nothing is output (and no errors are reported). The odd thing is that I can get it to work again just by re-setting the second input (without changing what it actually is). Changing any of the others will break it again, but it will always act as expected after the second input is set. So, I don't think its an issue with my code, I think its something to do with the way the inputs are handled.

Can you mail me the files I need to reproduce this?

Thanks,
David
Will do.
Ok, I managed to fix this. Man... it was nasty!
Good catch.
Ok i'm deleting this last comment since it was pretty much nonsense.
Vicente,

replace it with:
Grasshopper.Plugin.EH_InstanceServer.ActiveDefinition.NewSolution(True)

leave out the second argument altogether. The NewSolution function has 2 overloads, and the short one simply calls the more complicated one with default values.
I'm getting the same result. I've got a text panel connected to the ouput of the vb.net component, and it does update realtime, but the viewport only updates when i change something in the definition.
I'm using a version i did, not Giulio Piacento's TheEngine, so it's possible i messed up something.
This update is fantastic. I've just started playing around with it, but it's great. Thanks for all the hard work.

RSS

About

Translate

Search

Videos

  • Add Videos
  • View All

© 2024   Created by Scott Davidson.   Powered by

Badges  |  Report an Issue  |  Terms of Service