Cancel
Showing results for
Search instead for
Did you mean:

# conic vs. spline Genius
I'm thinking about the NX mechanism of building a spline.

Below is a picture of Conic (left) vs. Spline (right). If they are mirrored, it can be find that they are completely equivalent.

For the spline on the right, the degree is 2. It seems that NX forces a default RHO 0.5 on the spline.

Then my question is: What's the NX machnism in determining the fullness under each pole? Always using a constant factor? 9 REPLIES 9

# Re: conic vs. spline  Siemens Phenom

NX in general will create a non-rational spline, that is the weight of each control point (pole) is the same.

NX can handle rational splines, for example if created in another CAD system and imported via IGES. Also some of the Section Surface functions will create rational surfaces.

I would not worry too much about the maths here . If you want analytic curves such as arcs and conics then use the arc and conic commands. The internal math of the NURBS is only with a few specialist applications, such as optics design, of importance. For industrial design and Class A surface work what is important is to get an understanding on positioning pole and matching poles and the concepts of degrees, segments/patches and continuity (G0,G3,...).

Steve V

# Re: conic vs. spline Genius

For industrial design and Class A surface work what is important is to get an understanding on positioning pole and matching poles and the concepts of degrees, segments/patches and continuity (G0,G3,...).

OK. If you think this is enough, I would settle on this. Thanks!

I still have a practical question. The picture below is the same as that in my first post.

• In sketch, the Conic does not accept an expression for its RHO value. I had planned to create the conic via Studio Spline, but was dissappointed to find that the fullness of a spline is fixed.

If possible, hope to have your suggestion on how to control RHO of a conic with expression in sketch. Thanks! # Re: conic vs. spline Legend

I could not find how to make Expression of Conic RHO value.

But if you use 'General Conic' command rather than 'Conic' of Sketch,
I can suggest a trick by '3 Points, Anchor' type of General Conic.

As you know, the RHO is ratio of Interior Point height to Anchor Point height.
So you can make those points and each dimension with RHO value.
ex) Interior_h = RHO * Anchor_h. # Re: conic vs. spline Genius

Hi @SKAHN Thanks for sharing the workaround!

# Re: conic vs. spline  Siemens Phenom

If you're going to use the General Conic command, then you don't need a "workaround" to specify the rho value via a point. There are two options in the General Conic command that let you specify the rho value directly.

yamada

# Re: conic vs. spline  Siemens Phenom

First, some terminology:

• A spline curve that has a single segment is called a Bézier curve.
• A spline curve in which the weights are not all the same is called a rational spline
• A spline curve with degree = 2 is called a quadratic spline

So, putting all this together, a rational quadratic Bézier curve (RQB curve) is a spline of degree 2 that has a single segment and unequal weights.

Now the punch-line: conics and RQB curves are entirely equivalent: every conic can be expressed in RQB form, and vice versa. Different values of the conic rho correspond to different values of the middle weight in the RQB curve.

So, why would you choose one form over the other in NX?  One reason is that conics are easier to edit. You can use the rho value to control the fullness of a conic curve, but interactive NX does not let you play with the weights of a spline curve.

You can experiment with spline weights if you're willing to do a little programming. The NX/Open and SNAP APIs both allow you to adjust weights. Here's a very simple example that creates RQB curves with various different weights. You can just paste this code into the NX Journal Editor and click on "Play".

```Public Class MyProgram

Public Shared Sub Main()

Dim poles(2) As MiniSnap.Position

poles(0) = New MiniSnap.Position(0,0,0)
poles(1) = New MiniSnap.Position(5,4,0)
poles(0) = New MiniSnap.Position(9,0,0)

For n As Integer = 0 To 8
Dim w As Double = (2.0)^(n-3)
Dim weights As Double() = {1.0, w, 1.0}
MiniSnap.Create.BezierCurve(poles, weights)
Next

End Sub
End Class```

yamada
Highlighted

# Re: conic vs. spline Genius

Hi @Yamada  Very helpful explanation of spline math behind the scence. And the interesting code snippet. Thank you!

# Re: conic vs. spline Phenom

Hi @Yamada,

how to discover which points expression menage the rho point? Thank you...

Using NX1876
RuleDesigner PDM

# Re: conic vs. spline  Siemens Phenom

> which points expression menage the rho point

Sorry, but I don't know what you mean. The rho value is a number, not a point, so I don't know what you mean by "rho point". With a rational quadratic curve, you have three points, p1, p2, p3, which have three weights (numbers), w1, w2, w3. In NX, we always set w1 = 1 and w3 = 1. The rho value affects the weight w2.

yamada