Grasshopper

algorithmic modeling for Rhino

There's a whole zoo of curve types coming out of the "Deconstruct Brep" component :

-Closed planar curve

-Line-like curve

-Arc-like curve

-Planar curve

-Circular curve

-Polyline curve

In practice, in my geometry, the same type of edge can be in different categories, which makes me think that either I don't understand the distinctions, either this is a bit messy.

-Is a "Planar curve" necessarily open ?

-Is a "line-like curve" a line ?

-Why do I see "Polylines" with just one line ?"

-Why aren't all my circles in "Circular curves" ? Most of them are "Closed planar curves"

-Why are some of my arcs considered as "Planar curves" when they could be "Arc-like curves" ?

This is so bad that it makes it very difficult to use as a basis for any processing...

Cheers,

Views: 1889

Attachments:

Replies to This Discussion

These are descriptions of curves in general, they have nothing to do specifically with Brep Edges (brep edges are also categorized into; trims, loops, c2_edges, c3_edges).

So, ... curve descriptors:

  • Planar curves are flat. There exists some 2D plane which contains all the points that are also on the curve. Some curves are always planar (lines, triangles, arc and circles, rectangles), other curves are only incidentally planar (polylines, nurbs curves). 
  • Closed curves have a distance of zero (or, at least a distance less than the tolerance) between their start and end-point. Closed curves may be planar or not, these two properties are not in any way contingent on each other. Circles and rectangles are always closed, lines and arcs are never closed, polylines and nurbs-curves may be closed.
  • Periodic curves are a special kind of closed. Only nurbs curves can be periodic, and it basically means the curve is very smooth across the bit where the start and end-point meet.
  • A line-like curve is not necessarily a line. It may be a line, it may also be a polyline with two points, or it may be a degree=1 nurbs curve with only two points.
  • Polylines or nurbs curves that have more than two points but still look like lines, are called 'linear', not 'line-like'.
  • Nurbs curves with many points but with degree=1 are classified as polylines, as are polycurves consisting solely of lines, polylines and degree=1 nurbs curves.

If a curve is known to be of a special type (circle, arc, rectangle, line) then they are designated as such. If you have a bunch of circles or arcs and they are instead called 'planar [closed] curves', then that is a good indication you don't in fact have circles and arcs at all, what you have is a bunch of nurbs curves that do a good impression of circles and arcs.

If you want to know exactly how Rhino feels about a specific curve, select it and run the _List command. That will tell you the exact type and memory layout of the selected object.

Hi David,

Thanks for the explanations.

I can't imagine that the Breps I am processing heve been made in such a lazy way that it should result in a such variety of curve types for basically the same edge features.

I'll send you the file through a message so you can see for yourself.

Basically, I just need to parse circles and half-circles from all the rest.

With the present distribution, it looks daunting...

Cheers,

If you plug all your curves into an Arc parameter, does it perform all the expected conversions correctly?

No...

You're plugging text into the Arc parameter. The yellow panels convert data into text. You need to plug the actual curves in.

Duh...Of course.

I got mixed-up because I was using the "Member Index" component to sort curve types, and then I needed text, not geometry.

The Arc parameter does a great job in filtering arcs indeed.

There are still forgotten edges.

In the attached for example, I can't see how the missing arc could be anything else than an arc.

Attachments:

Hello Olivier,

the geometry is converted to string once passed through a panel. does it work if you don't you use a panel in-between?

best

alex

*edit it was already answered. ning is not updating threads, with new answers, with refresh.

Hi Alex,

I was stupid on that one :)

Still trying to figure out how to relax the criteria enough to snatch all the arcs.

Changing the tolerance setting seems to have no effect here.

Maybe this could use a set graph :)

RSS

About

Translate

Search

Photos

  • Add Photos
  • View All

Videos

  • Add Videos
  • View All

© 2024   Created by Scott Davidson.   Powered by

Badges  |  Report an Issue  |  Terms of Service