After some rework of a previous script (http://www.grasshopper3d.com/forum/topics/smooth-junction-blend-a-minimum-of-4-extrusions) to make node, here is a component to create node to join struts. It generates surfaces which blend sections of struts .
22/12/2015: Please consider it as WIP. Comments are welcome. As I have more comments when it works, it is also good to know if by chance it works for some people . Please unblock if it didn't work. Install it through Grasshopper (just put gha on the canvas ans GH will place it at the good place).
Inputs
In order to work, this component needs 2 main things (underlined) :
1) Lines => lines (not generic curves) create the network, the intersection of lines are the position of the node. You must remove duplicates lines. I didn't put the option in the component. Some good components exist to do that.
2) Tolerance (unit of length) => if lines doesn't match perfectly, end points are glued if nearer than tolerance
3) Sections => they are the sections of struts, they must be planar on YZ plane. Zero must be inside the closed curve. You may provide one section for each line. If not the component will duplicate the last section.
4) Rotations (radians) => they are used to rotate the sections. By default it is 0. If you provide enough rotations you can turn all the section independently.
5) Clearance (unit of length) => it is a value used to separate struts
6 to 10 ) bulges factor used to shape the geometry. Use a 0 to 1 slider.
11) Inflate (0 to 2) : It is a factor used to inflate or deflate the node
12) OneNode (bool) : used to calculate one node if true, all nodes if false. If true it is faster to make modifications and you can adapt modification to your node
13) Number (int) : The node number to calculate if OneNode is true
14) Blend (0 or 1) : if 0 it is Rhino Blend is used if not my blend is used.
15) Deviation (0 to 1) : "Relative deviation of points from a plane
16) Ratio (0 to 1) For two triangles to be considered the ratio of the resulting quad's diagonals (length of the shortest diagonal)/(length of longest diagonal) has to be >= minimumDiagonalLengthRatio, 0.875 by default
17) Angle tolerance (radians): Used to compare adjacent triangles face normals. For two triangles to be considered, the angle between their face normals has to be <= angleToleranceRadians by default 0.00314
15,16,17 parameter are used to transform triangular mesh to quadrangle and Ngon mesh.
Outputs
1) Nodes : BREP surfaces of the nodes, not closed
2) Points : Coordinate of the connection between node and struts
3) Direction : Direction at the connection
4) Signs : Used to orient direction (see example)
5) Rotation : Used to orient sections
6 to 9) are the topology of lines, equivalent to SandBox
10) Struts : open surface of the struts
How it works
Soon some explanation of ngon mesh, when I finish the implementation.
TODO List
Documentation, cleaning C#
Full Ngon Mesh implementation (partial at the moment)
Component for blending curves. At the moment this component blends curves but it needs connecting lines. So I will try do one in which you just need to feed with closed curves and the component will connect them.
...
Thanks
Jacek Jaskólski for the idea "I'd love to see a generic solution for a smooth junction/blend between arbitrary shapes meeting at arbitrary angles... :"
peter fotiadis and Charles Fried for their numerous discussions on the subject.
Aidan K for making Intrallattice and putting it on Github, when clean I also hope to put the component on Github.
Mateusz Zwierzycki for Incremental convex hull, I think I will do my own convex hull as I need face with more than 4 vertices but also faces with 2 vertices !
And many others David Rutten for its superb tool, Mc Neel ...
Laurent DELRIEU
Dec 10, 2015
Maurizio Barberio
Great work!!
Dec 11, 2015
Jacek Jaskólski
Impressive.
Dec 11, 2015
spiral
a very useful component, thanks
Dec 11, 2015
Raja
I tried using it but it gives this message even after placing the component in the special folder. What might have gone wrong can someone please help me ?
Dec 11, 2015
Laurent DELRIEU
It is my first component, me I drop the component 20151210_YANG.gha on the canvas and Grasshopper put automatically on the good place. So after that you could use the script. Did you do that ?
Dec 11, 2015
Raja
Ah ok ... I will explain my whole process
First I actually took the component (20151210_YANG.gha) to the special folder
C:\Users\username\AppData\Roaming\Grasshopper\Libraries
And then opened the file(201511210_YANG.gh) in Grasshopper. Was that the right way to do? I normally do like this for all the GH add-ons
And now i also tried opening the .gha component directly from grasshopper but still it doesnt work
Dec 11, 2015
Laurent DELRIEU
You done it right. As I don't master Visual Studio I forget to put an option. 64 bit vs 32 bit, version of windows ?
Does my component work for other people ?
Dec 11, 2015
spiral
Laurent, the emergence of such a site is not by chance, as you in real space solves the problem of different angles or flexible connections?
Dec 12, 2015
Jose Real
don't work for me. I make the same of Raia and have the same problem :(
win 8 64 thino 64
Dec 12, 2015
Laurent DELRIEU
I ask some friends to know if it works, I have no answers at the moments. Can you tell me what .Net framework you have ?
Dec 12, 2015
Jose Real
I have the lastest one
Dec 12, 2015
Laurent DELRIEU
Here some YANG compiled for 4.5 and 4.51 .NET framework
http://www.grasshopper3d.com/forum/topics/yang-component-4-5-net
Dec 12, 2015
NA
fantastic
Dec 22, 2015
Laurent DELRIEU
Some views of YANG used with Intralattice. I put some updates, there are still some errors, mainly a bug in convexHull.
Dec 22, 2015
Rémy Maurcot
Beautiful project !
Dec 24, 2015
Hamid peiro
hi
this plugin it's not working in my system like other pepole.
Dec 28, 2015
Laurent DELRIEU
Can you be more specific please ? I will be happy to find the good parameter for the compilation and also to give the good advices to install the plugin (.NET, windows ...). I use no specific library so I must omit something. But as I have just one laptop it is hard to test on other systems.
Dec 28, 2015
Ewss
Hi Dear Laurent
Where is download link in this post i can't find it!
Thanks alot.
Apr 29, 2016
wang wei
找了半天,找不到GHA的下载
Aug 16, 2016
Laurent DELRIEU
Aug 17, 2016
Samim Mehdizadeh
Hi Laurent,
Thanks for sharing your component and GH. definition. I can not find the link to download the Plug-in. can you please post the link to download the YANG component again here. Tnx.
Oct 23, 2017