Grasshopper

algorithmic modeling for Rhino

Connect End points of open polylines based on perimeter for topography planes

Hello.

I am an architecture student and I am constantly making topography geometries to CNC. In order to do this, we create planar surfaces.

I would like to generate a script that finds all the points where the topography lines intersect the extents, and connects those end points into a closed curve.

My strategy so far is to take a series of topography lines and see where they intersect a boundary geometry. If I can get a list of the points where those intersections happen ordered from the start of the boundary geometry line to the end, then I can create connecting lines and join the open curves to create planar surfaces.

I am including some sample files that are overly simplified.

I have also tried methods of comparing vectors and such but that method doesn't work as well so far. T

Thanks so much for any help.

Brennan

Views: 760

Attachments:

Replies to This Discussion

I solved this... I think. I had no luck with the shatter component. Really dodgy one that.

Here's the working solution for the next bloke.  You'll want to create a set of topography lines by contouring a mesh or polysurface and then trim those with a boundary curve.

I had to use the Panda plugin for its Points Split command which worked a peach.

Attachments:

Or ... use a BrepFace split approach (and a focus point to choose what piece to keep). More intelligence could "auto" extend the wrong/short curves until (a) havoc or (b) a valid split occurs.

Attached just a stupid "concept" demo ... that does ...er ... nothing serious, he he.

Of course there's always a rabbit hole around: for instance the wrong point face relation for that particular focus point (life sucks):

it should yield a boundary point face relation ... and work like this:

Attachments:

Appreciate you helping, I'll check it out!

Thank you, I'll take a look.

RSS

About

Translate

Search

Videos

  • Add Videos
  • View All

© 2024   Created by Scott Davidson.   Powered by

Badges  |  Report an Issue  |  Terms of Service