Jump to content
cberg

Smoothing NURBS Curves

Recommended Posts

58 minutes ago, Matt Panzer said:

Can you send me a file with a few of you most problematic objects in it?

 

Hi Matt,

I also sent you an example file via private message.

Cheers,

Kevin

  • Like 1

Share this post


Link to post

@line-weight, @Kevin McAllister,

Thank you for the files. I played around with the files and, unfortunately, cannot come up with any workarounds to get better smoothing. We do know about the problem but I'll try to nudge some relevant bug reports on this.

 

Best,

Matt

  • Like 1

Share this post


Link to post
On 12/1/2019 at 4:17 PM, Matt Panzer said:

@line-weight, @Kevin McAllister,

Thank you for the files. I played around with the files and, unfortunately, cannot come up with any workarounds to get better smoothing. We do know about the problem but I'll try to nudge some relevant bug reports on this.

 

Best,

Matt

 

Thanks for taking the time to look at it and it would be good to hear if and when there is any progress.

 

It strikes me that the faceting can be controlled by the various render settings which range from 'low' to 'very high', it's just that 'very high' is not high enough. Therefore is it possible to add an extra tier that *is* high enough? I assume that there are then potentially problems with the rendering becoming unmanageable but other elements are rendered in way too much detail.

Share this post


Link to post
1 hour ago, Wes Gardner said:

Hi All,

 

Here's a bit of an explanation as to what NURBS curves are and what "Degree" is.  I tried to REBUILD a curve by adding many more points...no joy. 

 

 

yes, as noted further up the thread, increasing the number of control points on the curve has no effect.

 

Regarding NURBS curves and 'degree' settings - this is a separate issue to what is being discussed in this thread, but contrary to what that PDF document implies, it is not at all clear what 'degree' means in VW and how it is controlled. I explain this in another thread:

 

 

Edited by line-weight

Share this post


Link to post

@line-weight, yes, I tried to NOT get too technical with an explanation of degree, etc.  I think for Vectorworks, to keep things simple, the best course is to draw with a Degree 1 curve if you want hard corners, if you want a more free-flowing curve, bump it to Degree 3. I use mostly Control point mode.  I do ALOT of Rebuilding curves, both increasing the number of points or decreasing depending on what's needed. I rarely, if ever, mess with the degree of the curve.

 

 The segmenting you're experiencing must be a limitation of Vectorworks and you're right, doesn't have anything to do with the "degree" thing.

Wes

 

 

 

 

Share this post


Link to post
1 hour ago, line-weight said:

It strikes me that the faceting can be controlled by the various render settings which range from 'low' to 'very high', it's just that 'very high' is not high enough. Therefore is it possible to add an extra tier that *is* high enough? I assume that there are then potentially problems with the rendering becoming unmanageable but other elements are rendered in way too much detail.

 

Yes.  this is the problem. Think about some fancy curvy cabinet door and drawer knobs on all of the kitchen cabinets.  Having an "Ultra High" setting could potentially bring things to a crawl.  However, we have made improvements in VW 2020 for navigation graphic display of 3D curved geometry. Basically, this technology reduces the number of facets in curved objects when their facets are too small to display on the monitor at the current zoom level.  IOW, if there aren't enough pixels to resonably show the facet, the object is displayed with fewer larger facets.  I imagine this technology might VW to represent curved surfaces with more facets when zoomed closer.  just speculating here...

Share this post


Link to post
1 hour ago, Matt Panzer said:

 

Yes.  this is the problem. Think about some fancy curvy cabinet door and drawer knobs on all of the kitchen cabinets.  Having an "Ultra High" setting could potentially bring things to a crawl.  However, we have made improvements in VW 2020 for navigation graphic display of 3D curved geometry. Basically, this technology reduces the number of facets in curved objects when their facets are too small to display on the monitor at the current zoom level.  IOW, if there aren't enough pixels to resonably show the facet, the object is displayed with fewer larger facets.  I imagine this technology might VW to represent curved surfaces with more facets when zoomed closer.  just speculating here...

Yes, that all makes sense to me.

 

I'd sort of assumed that in principle, that's how it would work anyway (ie pre 2020) but sounds like it's not necessarily. So in pre 2020 versions, VW is calculating a load of facets even if a thousand of them are within a single pixel on screen?

Share this post


Link to post

Hmmm...I wonder how Rhino pulls it off.  Attached is a little project that has a bunch of detail and is of course 100% NURBS as that's all Rhino does.  The rendering is done in Flamingo which is one of their renderers, probably took 45 minutes.  On screen, in their openGL mode you don't get the facets and motion navigating around the model is pretty fluid...

 

G47 Ketch.png

  • Like 4

Share this post


Link to post

Going on a bit of a tangent here... but I've realised there's something that's very tricky to get right even if you aren't worrying about the faceting. The attached image is in wireframe view so there is no faceting going on. It's a top, orthogonal view.

 

Say I have drawn the blue curve first - and it then becomes part of the geometry of an object, the edge of a table, let's say. Now I want to draw the orange curve - I want it to follow that blue edge exactly. As you can see, it's easy enough to get it nearly right ... but if you want to get it exactly right, then the only option is to take the original blue curve, and cut it back somehow. Is that correct? Which is something you can only do if you've kept that original curve somewhere. If the object is something that has gone through a process of some subtractions, extrusions and so on, the original curve might not be easily accessible. So if you are doing this stuff properly then presumably you have to be always thinking about keeping track of the original geometry somewhere. I imagine these issues would come up modelling something like that boat. Or is it somehow easier in Rhino?

 

1799078047_ScreenShot2019-12-02at21_23_10.thumb.jpg.b7d527a3253c9a00b61e9e98d813ba48.jpg

Share this post


Link to post

@line-weightIn Vectorworks, you could "Extract Edge", in Rhino you could "DupEdge".  You'd then have to trim at each end to get just the segment you're after.  Haven't really tried it in VW...do it all the time in Rhino.  I DO keep complex assemblies in "Reserve" layers (in Rhino) in case I want to quickly get back to them but for the most part, DupEdge will get you there.  Rhino lets you trim stuff in any view and on any layer, the objects don't have to be in the same plane, if you can see it, or set your model in the right view, you can trim it...joining is something else where stuff DOES have to touch.  In fact, if stuff is "close but no cigar", Rhino tells you how close and then asks if you want to align them.  I try to get my models "waterproof" so the hydrostatic calculations are good.  Rhino also tells you if/where there are "naked edges."

 

Share this post


Link to post

I just tried making this NURBS curve into a 3d extrude

642584603_ScreenShot2019-12-02at22_41_28.thumb.jpg.3d26ac06c3a4d4ed26fd24d049347072.jpg

 

Then 'extract edge' to get the highlighted edge. It looks ok zoomed out but when you look closely it looks like this

 

1866428680_ScreenShot2019-12-02at22_42_13.thumb.jpg.d64bd32d730851918539ae2f6222e686.jpg

 

Two faceted curves that don't quite match each other.

Share this post


Link to post
17 hours ago, line-weight said:

I'd sort of assumed that in principle, that's how it would work anyway (ie pre 2020) but sounds like it's not necessarily. So in pre 2020 versions, VW is calculating a load of facets even if a thousand of them are within a single pixel on screen?

 

As far as I know, yes.  I believe the facets are created when the object is generated and the new navigation graphics drop them out when they're too small to show.

Share this post


Link to post
16 hours ago, Wes Gardner said:

Hmmm...I wonder how Rhino pulls it off.  Attached is a little project that has a bunch of detail and is of course 100% NURBS as that's all Rhino does.  The rendering is done in Flamingo which is one of their renderers, probably took 45 minutes.  On screen, in their openGL mode you don't get the facets and motion navigating around the model is pretty fluid...

 

G47 Ketch.png

 

Show off! 😉

 

Beautiful work Wes!!!

  • Like 1

Share this post


Link to post
18 hours ago, line-weight said:

Then 'extract edge' to get the highlighted edge. It looks ok zoomed out but when you look closely it looks like this

 

1866428680_ScreenShot2019-12-02at22_42_13.thumb.jpg.d64bd32d730851918539ae2f6222e686.jpg

 

Two faceted curves that don't quite match each other.

 

This happens to me a lot. If the curves are different lengths, the faceting will be different. If the curves are different types (polyline, circle, arc, NURBS) this will often happen. If I have things that need to match I do as much matching as possible in 2d before things get converted.

 

Kevin

 

Share this post


Link to post
On 4/9/2018 at 6:01 PM, cberg said:

extruded NURBS Surface

 

Is this new? or are we talking about Shelled Nurbs surfaces?

Share this post


Link to post
2 hours ago, bcd said:
On 4/9/2018 at 6:01 PM, cberg said:

extruded NURBS Surface

 

Is this new? or are we talking about Shelled Nurbs surfaces?

 

I should have said a NURBS surface that is extruded using the Push-Pull tool; the resulting object technically turns into a Tapered Extrude.  You cannot extrude a NURBS surface with the Extrude command. The taxonomies of all the VW solid objects are somewhat arbitrary, and they should probably be unified at some point.

Share this post


Link to post
26 minutes ago, cberg said:

NURBS surface that is extruded using the Push-Pull tool

 

Thanks for this - it's interesting I don't believe I've ever explicitly done this with a Nurbs Surface which are only planar in selective cases, although in these cases they should also respond to the Extrude command.

 

I have generally extruded  VW Planar objects (polylines etc. ) only using the Push Pull or the Extrude command.

 

29 minutes ago, cberg said:

The taxonomies of all the VW solid objects are somewhat arbitrary, and they should probably be unified at some point.

+ 1 to this.

Share this post


Link to post

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


 

7150 Riverwood Drive, Columbia, Maryland 21046, USA   |   Contact Us:   410-290-5114

 

© 2018 Vectorworks, Inc. All Rights Reserved. Vectorworks, Inc. is part of the Nemetschek Group.

×
×
  • Create New...