An Overview On Curves

This article describes the main characteristics of think3 curves.


  e-Learning Material:
A friendly set of e-Tutorial documents on curves has been created and is available on the Customer Care Corporate site (e-Learning home page). Take a look at the list of the available educational documents on curves here: e-Learning: Curves.
Enjoy your lessons!


 

Specialized curves and NURBS

think3 curve entities can be divided into "specialized" curves (lines, circular arcs, ellipses), and NURBS (Non Uniform Rational B-Spline) and Curves On Surfaces. NURBS describe the remaining types of conics and all other types of curves ( helixes, splines, etc. e.g. splines) supported by think3 applications.

Each curve, irrespective of its type, has a parametric representation, that is to say, it is expressed by a parametric equation with degree n as a function of parameter u which varies within the range [0,1].



Characteristics of NURBS curves

NURBS curves are characterized by the following:

In addition to the above, in think3 NURBS curves:


 

Control points

Every NURBS curve has a set of control points which control its shape but do not necessarily lie on the curve. The broken line joining the control points of a curve is called the control point polyline or polygon or defining polyline.

A numeric value, called the weight, is associated with each control point. Initially, the value of the weight is 1, but you may change it at any time. If you increase the weight of a control point, the curve moves closer to the control point, if you reduce it, the curve moves away from it. If you move the control points, the shape of the curve changes accordingly.

For further details, see "Relationship between control points, degree, continuity and number of arcs".


 

Associativity

Associativity is a characteristic of a curve based on which it will retain a link to the entities it derives from, depending on the way it has been created.

The Associative Mode check box, available in the selection list of many commands, enables you to create curves (ordinarily not being of the Curve on Surface type, unless explicitly specified) which retain a link to the surfaces/curves they derive from:

When the check box is selected, the resulting curves will be associative. The new curve will retain a link to the entities it derives from. A specific node displaying both the original entities and the resulting associative curve will be added to the Model Structure.
Selecting non-associative entities
If you select non-associative entities (such as non-associative surface borders or non-associative curves), a message will be displayed to warn you non-associative entities have been selected and that they will become the root of the structure.
When the check box is cleared, the resulting curves will not be associative.

Associativity is available for the following curve creation commands:

Associativity is also available for the following curve editing commands.

Editing an associative curve in non-associative mode
In case you apply an editing command to associative curves, the Associative Mode box in the selection list will automatically be checked in the selection list. If you decide to apply the command in non-associative mode, that is to uncheck the Associative Mode box, a warning will be displayed so as to inform you that the command cannot be applied in such a way to the selected associative curves but only to non-associative copies automatically created by the application.

Associativity can be removed from a curve by using the Unlink Solid command.
The selected curve will be converted to a curve with its own history in the Model Structure (such an entity is also ordinarily known as a History Graph Genitor), while all of its former associativity links to the parent entities will be removed.

Finally, take into account associativity can be applied or removed from entities using the Enable Associativity and Disable Associativity commands respectively.

Managing the modification extension to dependant entities (children)

Entities can have children, which means entities created in relation with them and thus depending from them. Obviously, a modification performed through one of the above listed editing commands applied to the parent entity can affect the children as well. Thus, a specific option — Update Dependencies — is displayed only if at least one of the selected entities has children, so as to enable you to decide whether to extend the modification also to the children or not.

If Associative Mode is selected:

  • When the Update Dependencies box is cleared, the modification is not applied to the children (default).
  • When the Update Dependencies box is checked the modification is applied also to the children (after updating the model through Rebuild Model).

If Associative Mode is cleared there are two cases:

  • If the entity is not a History Graph Genitor (that is a generic root associative curve, displayed in the model structure through a generic Curve icon ), the Update Dependencies check box is not available.
  • If the entity is a History Graph Genitor, the Update Dependencies check box is available and its behavior is the following:
    • When the Update Dependencies box is checked the modification is applied to the selected entity and to the children (after updating the model through Rebuild Model).
    • When the Update Dependencies box is cleared, the modification is applied to a copy of the selected entity and not applied to the children.

 

Redefinition of modifications applied to curves

When you apply the Redefine Feature command to entities formerly modified using the curve editing commands, take into account the following:


Take a look at the video list  e-Learning on Curves