Grasshopper

algorithmic modeling for Rhino

Hi, I'm new in this forum, I hope I'm posting in the right place :)
I have a curve that's 78520mm long, I use the divide curve to divide it into 65 points.
Now 78520/65=1208, but instead I get points that are 1207.99mm apart along the curve...

Can anybody explain this to me?

Views: 927

Attachments:

Replies to This Discussion

The "t" outputs you're viewing are curve parameters...

Curve parameters are a function of NURBS geometry and though in many cases curve parameters may be similar to curve length, they aren't the same.

This was a brief response to a previous discussion by Damien (NURBS geometry afficionado/connoisseur)

http://www.grasshopper3d.com/forum/topics/reparametricizing-a-bezier

You can do a Google search to find out more about curve parameters and NURBS geometry.

To check the length of your curve segments you can measure the length of sub-curve from 2 adjacent curve parameters.

Thanks for your answer Taz!
I tried to follow your example, but it turns out that the length of the subcurve is even further from what it's supposed to be...
Am I doing something wrong here?
Attachments:
Hi Emil,

Running some tests here on curves, but I can't quite replicate that kind of inaccuracy. Can you send me the 3dm file with the curve?

--
David Rutten
david@mcneel.com
Poprad, Slovakia
I have a few curves on a hidden layer in this file, I send you my ghx defenition too, so you can see my problem.

Thanks a lot!
Attachments:
Your arc segment is generated as the dash of a dashed line... I think the error has something to do with the way this curve is generated as part of another curve, but we'll have to see what David says... There's definitely something going on.

For original arcs referenced from Rhino or generated by GH everything works fine. As a workaround you should figure out a different routine to create your various lengths of arcs...
Also my curves are arches imported from autocad... do you think that can have something to do with it too?
The reason I split it with a dashed line is because I couldn't get shatter to work properly on those curves, I just never thought it could be the curves them selves.
That shouldn't matter. Once a curve is inside Rhino it will be represented as a Rhino curve. Giulio has found division accuracy problems before with big arcs before. This is probably the same problem.

I also noticed that 0.7 fails to work on Dash patterns with zero-length segments. I'll at least get this fixed asap.

--
David Rutten
david@mcneel.com
Poprad, Slovakia
Does that mean that I can't really fix this as it is now?
Not entirely certain yet. Maybe.

--
David Rutten
david@mcneel.com
Poprad, Slovakia
I ran the definition in 0.7 with the following result:


The length of the segment seems to be accurate to within tolerance. Is this different from what you're getting?

--
David Rutten
david@mcneel.com
Poprad, Slovakia
yes, I get 1116.178, that's with v 0.6.0059

But is there way to get it really even more accurate? I would really prefer it to be exactly 1208mm...

http://www.grasshopper3d.com/forum/attachment/download?id=2985220%3...
Ok so we can assume that this is fixed in 0.7 (at least on my internal build of 0.7). I'll hopefully release a new build sometime this week. If you can wait 2~3 days, I think it's probably not worth the effort to try and fix this on 0.6.X

It will never be totally accurate, that's simply not possible with finite digit numbers such as used in Computing. It should definitely be possible to get a lot closer than 1207.999309 though.

It seems the SDK function for dividing curves does not allow a tolerance override. It must be using some sort of hardcoded or adaptive tolerance. I need to talk to some developers in Seattle to see what -if anything- we can do about this short term.

--
David Rutten
david@mcneel.com
Poprad, Slovakia

RSS

About

Translate

Search

Videos

  • Add Videos
  • View All

© 2024   Created by Scott Davidson.   Powered by

Badges  |  Report an Issue  |  Terms of Service