algorithmic modeling for Rhino
The Pufferfish is one of few animals which is capable of changing its shape.
This plugin is a set of 318 components which focuses on Tweens, Blends, Morphs, Averages, Transformations, & Interpolations - essentially Shape Changing. Pufferfish mainly uses parameters and factors for inputs for more custom control over operations like tweens and grids as opposed to grasshoppers usual division count inputs. These components are accompanied by support components which are useful methods for tween / blend / morph / lattice operations such as making curves compatible, a custom curve graph mapper, and a multi-threaded morph to twisted box. In addition, there are extra components which simplify some common grasshopper operations such as testing for equality within a tolerance and rounding to nearest numbers. Please email me if you find any bugs. Works with Grasshopper for Rhino 5, Rhino 6, Rhino 7 WIP, and Rhino Mac.
Instagrams: @ekim.royrp & @designmorphine
Download:www.food4rhino.com/app/pufferfish
Website: http://www.food4rhino.com/app/pufferfish
Location: Grasshopper3d
Members: 381
Latest Activity: on Saturday
General notes
Pufferfish Changelog
June 05, 2020 - Pufferfish V2.9
June 01, 2020 - Pufferfish V2.9
May 10, 2020 - Pufferfish V2.9
January 16, 2020 - Pufferfish V2.8
October 05, 2019 - Pufferfish V2.7
September 27, 2019 - Pufferfish V2.7
July 27, 2019 - Pufferfish V2.6
July 04, 2019 - Pufferfish V2.5
May 17, 2019 - Pufferfish V2.4
May 14, 2019 - Pufferfish V2.4
Oct 24, 2018 - Pufferfish V2.3
Oct 10, 2018 - Pufferfish V2.2
Sep 27, 2018 - Pufferfish V2.2
Sep 19, 2018 - Pufferfish V2.2
Aug 05, 2018 - Pufferfish V2.1
May 16, 2018 - Pufferfish V2.0
Apr 27, 2018 - Pufferfish V1.9
Apr 15, 2018 - Pufferfish V1.9
Apr 13, 2018 - Pufferfish V1.9
Mar 02, 2018 - Pufferfish V1.8
Feb 16, 2018 - Pufferfish V1.8
Jan 03, 2018 - Pufferfish V1.7
Dec 29, 2017 - Pufferfish V1.6
Dec 22, 2017 - Pufferfish V1.6
Dec 20, 2017 - Pufferfish V1.6
Dec 04, 2017 - Pufferfish V1.5
Nov 29, 2017 - Pufferfish V1.5
Nov 28, 2017 - Pufferfish V1.5
Nov 08, 2017 - Pufferfish V1.4
Nov 01, 2017 - Pufferfish V1.3
Oct 28, 2017 - Pufferfish V1.2
Oct 22, 2017 - Pufferfish V1.1
Oct 17, 2017 - Pufferfish V1.0
Pufferfish Tab List
Hello everyone, hope you're all good!I'm very new to the software.I have been trying to recreate the grid tearing effect I found on one of Michael's old videos (image attached). As it has no audio I…Continue
Started by Bruna Dec 9, 2020.
Hi everyone.I'd like to know how 'Is Arc/Circle/Ellipse' components work.How does these components recognize the specific type of input curve?Can someone help me understand the content of these…Continue
Started by Manu. Last reply by Michael Pryor Oct 28, 2019.
I've go the idea of MeshTween usage, but here the next question: how to create a mesh with specific amount of vertices and faces?Continue
Started by Margarita Volkova. Last reply by Michael Pryor Jan 29, 2019.
Hello, I 've just started learning rhino and grasshopper its pretty silly to ask but i'm having problem installing plugins to grasshopper. I moved the files to the library and restarted my rhino and…Continue
Started by Vaibhav Tomar. Last reply by Vaibhav Tomar Sep 27, 2018.
Comment
Pufferfish V2.4: Re-uploaded Pufferfish V2.4 and Pufferfish V2.4 example files to fix the Multi-Threaded "Polysurface Boolean Twisted Boxes" component which was occasionally causing Rhino 5 to crash, inadvertently it is now faster as well.
Pufferfish V2.4: Update - 55 new components. 3 new tabs (Transform, Domain, List). New options for Equalized, Weighted, and Degree on Tween and Twisted Box components. Multi-threaded Twisted Box components for morphing and geometry filling / subtracting. Some components renamed and organized in different tab locations. Many component updates, bug fixes, code optimizations, and option additions. Please read the installation text file first that comes with this download before installing Pufferfish.
Well, I didnt do anythng special with the Trim Mesh With Plane component to keep the colors so guess it just does, however the mirror cut mesh uses the same method in the code, the difference is the new faces added by bridging. This tell me that adding new faces to the mesh probably erase the color.
"I also tried to use the MirrorCutMesh together with the MirrorCutColour components which is not quite successful as the previous one"
Well it is quite obvious why that wouldn't work, Mirror Cut Colors just cuts a list of colors at an index. There is no way that the order of your mesh verts / colors would match that cut, because a plane cuts a mesh doesn't mean it is cutting the order of its verts / colors in half.
Say you have a list of colors:
0:red
1:Blue
2:Green
3:yellow
say you mirror cut that list at index 2. you will have:
0:red
1:blue
2:blue
3:red
Now say that list of colors are associated with a mesh face
0: vert 0 = red
1: vert 1 = blue
2: vert 2 = green
3: vert 3 = yellow
But you mirror cut that face from between vert 0 and 1 to between vert 2 and 3, you will have remaining vert 0 and 3, so the mirror color of the mesh should be
0:red
1:yellow
2:yellow
3:red
Hope that makes sense.
What I was suggesting to you before is to generate a color map always for one half of the mirror cut but apply it to both halves. This of course means generating the color map with grasshopper in the process.
Hi Michael,
Thanks For your quick response, and developing puffer fish components
I have managed to find a solution by using the TrimMeshPlane Component which keep the original colour of the mesh after the operation, i then mirror and join after operation is done. (bypasse the mirror cut mesh).
It seem that it does the work for now, but im not sure how this might impact me later on down the track.
Here the Results,
---------
I also tried to use the MirrorCutMesh together with the MirrorCutColour components which is not quite successful as the previous one, as it remap the whole mesh colour throughout the whole outcome. (i am wrong on how i interpolate the colour as it require to cull some colour that are cut)
It does the mirroring Mapping colour but not from the Initial Geometry, comparing both image you will understand what i mean.
------
Here the grasshopper component i used and i also attached the files in case you want to give it a try.
As per the colour bridging condition, i think it is subjective, as it depend on the design.
1) one condition for this could be by using the colour from the original mesh colour to define the colour of the bridging element (The offset plane colour is apply to the bridge)
2) Apply the same Mesh colour in along the bridge (Which might look ugly if their is a huge offset), for instance if it is red colour, it just translate the red colour across, it might be better to take the colour on the vertex of the mesh where it cut the plane to map onto the bridging component than averaging colour of the face
I hope this could be somehow helpful into developing the tool, as for myself i dont have much codding experience yet.
Regards,
Chris
-----
Files
MeshColourTest.3dm
I would assign one color set to each half of the mirror cut since the halves will have the same topology (you can get the halves by turning off join and using the i output.) So mirror cut first, then assign color.
I can look into incorporating color into the mirror cut but I can't promise when that would be. There are also conditions where it seems subjective what to do (if I also mirror cut the color of the mesh what colors get assigned to new mesh faces made by the mirror cut bridging?, Do they just take some average of the color of the faces they connect with?)
I don't think any GH components which change a meshes topology (add / remove / combine mesh elements like faces and verts) currently keep track of the original mesh colors do they?
Hi Michael ,
Is there a way to translate the colour together with the mesh with the mirror cut plane component from grasshopper?
I tried to use the mirror cut colours, however it only works within a list of colours and does not work as same as the plane cut.
Regards,
Chris
Mesh%20Colour.3dm
-
Pufferfish V2.3: Update - adds Normalized(N) input to the 17 Tween Through and Twisted Box Through components which enables the use of normalized tween factor values from 0 to 1. Also added a Flip Polysurface component. After installing the pufferfish2-3.gha, please close Rhino completely one time to avoid potential assembly reference errors with the "Twisted Box" components. Make sure to first remove any other versions of Pufferfish you may have installed. Pufferfish V2.3 works with Rhino 5, Rhino 6, and Rhino Mac. Some components require at least Rhino 5 SR14. Some versions of Rhino 6 Grasshopper have a mesh display issue not related to Pufferfish, if you see a weird mesh, try Recomputing Grasshopper until it goes away.
Pufferfish V2.2: Update - Re-uploaded Pufferfish V2.2 to fix Offset Mesh component causing Rhino to crash when a null was input, re-uploaded Pufferfish V2.2 Examples as well.
Pufferfish V2.2: Update - Re-uploaded Pufferfish V2.2 to update 5 components and add 1 more, re-uploaded Pufferfish V2.2 Examples as well.
Pufferfish V2.2: Update - adds 10 new components for Numbers, Curves, and Surfaces. 40+ components updated, most Tween components rewritten for optimization, accuracy, and bug fixes. After installing the pufferfish2-2.gha, please close Rhino completely one time to avoid potential assembly reference errors with the "Twisted Box" components. Make sure to first remove any other versions of Pufferfish you may have installed. Pufferfish V2.2 works with Rhino 5, Rhino 6, and Rhino Mac. Some components require at least Rhino 5 SR14. Some versions of Rhino 6 Grasshopper have a mesh display issue not related to Pufferfish, if you see a weird mesh, try Recomputing Grasshopper until it goes away.
© 2021 Created by Scott Davidson.
Powered by
You need to be a member of Pufferfish to add comments!