Surface from points that are not sorted correctly

Hi,

I have this structure made of different sections. I want to add an envelope inside as if it was a prospector tent (see reference picture). I have gathered the points at each section (5 per section) in order to do a capped sweep or something (see circled part of the script at right). However, the points are not sorted correctly; when I try a polyline it’s all crossed instead of drawing the perimeter of the section. How could I easily create a volume that is enclosed in each section? I made an example directly in rhino to vizualize (sweep 2 then offsetsrf to make it fit in the structure)


Thank you so much,

Structure.3dm (8.1 MB)
Structure5.gh (82.1 KB)

missing

There is probably more that can be done, even without these plugins, but it’s too much work.

1 Like

you already have figured out all the geometries/curves you need to loft through the different sections to create the volumes, they are just a bit scattered around in the canvas :smiley:


Structure5_Re.gh (91.0 KB)

[edit]
may I ask -but this doesn’t matter with the definition, it’s just out of curiosity- why this section-rotation-control was implemented?

2 Likes

I can’t open your def (I never use add-ons).

  1. This can been solved for any “mess” pts collection but it could be a pointless reverse engineering waste of time (and the wrong way to deal with it).
  2. At pts definition phase sample your 5 points in some rational manner (i.e. say ordered clockwise starting from LL - relative to “section” Plane - etc). By sample I mean use a higher order collection like a DataTree or a higher dim Array ([ ],[ ] or [ , ]). But in fact the latter is used solely when coding … so forget it.
  3. Even if the pts are not ordered there’s various ways to put’m in order (like order by angle VS the centroid or a classic order along a curve [the Ccx between a fitted plane and a fitted Sphere]). But that is also waste of time.
  4. Then is simply a matter of Looping the Branches.

Since I don’t use components nor add-ons I could provide a simple C# that does that (and if you like - as an option - the 3 as well).

Say:

  1. Coplanar Pts randomly sampled in branches:

  2. “Aligning” fitted (and moved to centroids) Planes:

  3. Order pts (classic: by Vector3d angle VS plane.XAxis):

2 Likes

I am puzzled that your GH file appears to work for me, even though I have none of the plugins?
(including an added R8 Volume component?)

2 Likes

I have Wombat plugin installed, but there was a single extra component that handles tree that I also missed, but I guess it wasn’t relevant :slight_smile:

at the and, the 5 polylines used to do the volumes are coming from an early point in the definition where the Wombat components weren’t used yet

ohh, R8 has a new Volume component?!? :thinking:

So cool ! Thank you so much. The color display doesn’t work as I don’t have the volume element (says unknown plugin), but it doesn’t matter. The rotation is there because the sections are not always aligned perpendicular to the curve. I tried to retrieve the middle of the polyline angle and align the section to it, if it makes sense, but it doesn’t work so I adjust the sections manually.
image

thank you all for you quick answers! :star_struck: :star_struck: :star_struck:

Maybe not R8, this says R7.34: (I have (7.34.23267)

missing

The entire file looks much more complicated than necessary. Then again, it might make more sense if I understood French… but nah, too complex!

have a look at this if you want, it’s a neatly simplified version -that no one asked for- of the very same definition
[I believe I didn’t use any plugin, and have replaced the Volume component with the old one :+1: btw, writing # + name of the component in R8 will find the old version!]

the_thing_no_one_asked_for.gh (23.9 KB)
[note: you’ll need to relink the initial Polyline from Rhino to have it working on your file if you want to give this a try]

it is organized the tidy way I like to tell I do things [but I almost never do] calculations in A, the data tree of all the points in B, and the rest of the stuff in C:

in A the sections are created on bisectors as you mentioned earlier (stupid trick with offset to determine directions):

if I hide everything but B, here are all the points that might be need to calculate almost anything:

as it might be difficult to edit the right line of a Panel when you have many entries, Panels were replaced by Gene Pools: blue pools control sections recognizable with blue numbers like width, central-height and sides-height

Gene pools are all connected to a Shortest-List in such a way only as many Genes as number of section will work: if you have 10 sections, only the first 10 genes are used , changing the 11th and next ones will do nothing

the green gene pools controls how many in-between-sections divisions you get:

I didn’t apply any lofting for tree-like beams, but I believe it would be an easy task given how sorted the lines are :slight_smile:

3 Likes

学习了,你的想法不错

1 Like