Orient multiple grouped planar crv to xy plane?

Hi I have tried finding some guidance for this but no success, but maybe I am starting to get lazy… Any way hope someone can point me in the right direction.

I want these planar crv´s to be oriented to the xy-plane in Top view so I can nest them later on or export as vector for laser cutting. They are grouped with slots and id and that has to follow along. Hope that someone could help!

MorningStar_14.3dm (2.2 MB)

Anyone? Really need some help, have searched for unroll but thats not it. The crv´s are already planar, and now I dont know what to search for…

Hi @Per the only solution I remember for this kind of task is a plugin called RhinoNest

There might be some other solutions for grasshopper, maybe a free component you can find in food4rhino

Hi Joaquin and thanks for reply but its not the nesting that is the problem (yet) its laying the crv´s flat in xy-plane and I am not prepared to pay 905 euros just to test it. I know about OpenNest i GH but I dont seam to get it to work with my curves. And I am a newbie in GH…

1 Like

@Helvetosaur Hi Mitch would it be possible to use your UnrollPolySrfPanels3.py script and it would also be able to join the text (number) I grouped with the planar srf´s in the output of the script? In the attached file there is only srf no1 that is grouped with text (as of yet).

MorningStar_15.3dm (9.8 MB)

Is there some speedier way (then Orient3pt) to move all these crv´s (planar), with adjoining (grouped) id-numbers to the xy-plane in top view. Really at the end of my wits here :face_with_spiral_eyes:

MorningStar_15_Crv.3dm (2.2 MB)

That’s something I’d do in Grasshopper…

How did you end up with all these groups?

By hand, one by one… I know I should be learning more GH but its a challenge. Any idea how?

You can create a surface for each group and then use the unroll command.

_PlanarSrf
_UnrollSrf

Yeah, already tried that but that dont bring the id-number with it. And I dont want to use text dot, which it can use

What’s so bad about text dots?

Have you tried to convert the text to curves.

I have not tried that, yet… The text dot gets really messy since it is 116 outline crv´s and its hard to tell which orientation the crv had since the dots rotate in the viewport. And unroll srf dont know what is up and down of the planar srf when unrolled. Thought there would be a better way! I would prefer to have the id as a text entity, easier to edit..

:cricket:

I know! But when it gets to lists and that kind I get lost. No hints?

Cant find a way to convert text to curves! How do you do it? I did use mecsoft single stroke font and output as curves..

Sorry, was out all this afternoon. What I see is that each face has a group of face border curves plus a number in the form of single-line text, but the surface itself is not in the group.

You want to unroll the surface plus the number that is on it? The border does not actually need to be unrolled as it is intrinsic to the surface and can be extracted after the unroll (easier). However one would need to detect which number is on which surface, as they are not currently associated. How were they generated in the first place?

1 Like

Hi Mitch and so happy to hear from you! I first thought that I could just “flatten” the curves to xy with all associated crvs and id, therefore the curves are grouped with the id number. That did not work as expected. Then I thought that I could use unroll, so I made planar srf from the outlines and smal notches but then the id number would not be part of game anymore… I could make another attempt and group the planar srf with the id numbers if that would help any?

If the planar surfaces are grouped with the numbers and the groups are unique (each containing just one surface and one number) then it should be possible to write an unroller script that unrolls each surface plus its number. The main thing is to have the number and the surface associated somehow. It is however possible to detect which number is on which surface, just takes longer.

It is also possible to do this without using unroll, simply re-orient the existing group of edge curves plus the number to the XY plane. As the surfaces/curves are planar, it is easy to find their plane and do a re-orient of the curves plus the text to XY.

So, how would I go about this? Here is attached both outline crv with grouped id and planar srf with grouped id. The outline crv is located 2000mm above the srf in z direction.

MorningStar_16.3dm (9.8 MB)

So here is a draft version, it has a number of issues…

SpecialUnrollPlanarCrvGroups-3.py (3.4 KB)

First, it is not really optimized at all and it just spits out the unrolls all in a line along the X-axis. That can be addressed. I tried to sort the unrolls by number, but unfortunately, the triangle labels are in the form of X_Y, so python’s float does not recognize them as a number… That could also be addressed with some work, but the question is, how many of these do you have to do? Only really worth it if there are many… I wrote and debugged it just for fun and to keep my hand in a bit, but the time spent was pretty disproportionate if there are only a couple of these to do.