e screenshot, there are only two ROT3D(rotation 3d) commands and SEC (Brep/Plane Section) are defined, it seems that the cylinders are generated at first, and the rotated planes are used to intersect the cylinders, in order to generate the curves.
[Figure 1]
The redrawing is based on the previous assumpation, and there are 21 pairs of cross-arc drawn[Figure 1]. Finally, the problem is focused on the last step how to intersect curves.
In CCX, there are only 21 run times, which means the curves intersection are looped one-by-one, and 21 curves are arranged to finished 21 intersection[Figure 2, plz zoom in]. That is the reason, why CCX is not able to get the cross points between the neighbour arc.
[Figure 2]
For the curve-to-curve intersection does not work, in order to get the intersection points, I try to enlarge the set of intersected component, using the plane or cylinder to intersect with curve. When the PCX (plane-curve-intersect) is tested, 21 curves are intersected with the previous 21 rotated planes, the loop runs 441 times, which shows that the curves are mananged to intersect with the neighbour plane, and the intersection points are found. Moreover, the SCX (surface-curve-intersect) is tested, and the 21 cylinders are successfully intersected with the 21 curves. And more important point is that the SCX makes the intection points exactly between the curves and the cylinders, while the redundant ones of the intersection of plane and curve, in some combination of the rotated angles and cylinder distances, are are avoided.
Besides, the Graft/Merge command is also tried, I hope to merge the curves list together, and to intersect them with each other, but it fails. It is supposed that the graft command may change the data structure. When a list of cylinders are grafted, the new data is no longer the cylinders, which fails to plot.
In conclusion, if the loops of geometry are in the same level, the command is run in correspondence; if the loop is between different types of geometry, the total trials of loop are run.
[Rhino Version 5.0; Grasshopper 0.9.0076]
BTW, the .gh file includes the initial base line, which could be run directly in Grasshopper. Please help me to check the model, thanks.…
le** - ply file with just x,y,z locations. I got it from a 3d scanner. Find the out.ply file attached.
**nisha.m234@gmail.com**.**Algorithm:**I am trying to find principal curvatures for extracting the ridges and valleys. (in the attached file see page 42. You can read from page 30. I am trying to achieve something like that.) …