NX Open C++ Reference Guide
Public Types | Public Member Functions
NXOpen::Routing::SplinePathBuilder Class Reference

Builder for creating a D-Cubed constrained spline. More...

Inheritance diagram for NXOpen::Routing::SplinePathBuilder:
NXOpen::Builder NXOpen::TaggedObject NXOpen::GeometricUtilities::IComponentBuilder

List of all members.

Public Types

enum  SplinePathSlackType { SplinePathSlackTypePercentLength, SplinePathSlackTypeAdditionalLength, SplinePathSlackTypeUndefined }
 Describes the method the spline is defined as. More...

Public Member Functions

void AddDefiningPointAtAbsoluteCoords (const NXOpen::Point3d &point)
 Adds a defining point to the spline.
int AddDefiningPointToSpline (NXOpen::Point *point, bool createNewPoint)
 Adds a defining point to the current spline or creates the first point of the new spline.
void AddSlackToSpline (NXOpen::Routing::SplinePathBuilder::SplinePathSlackType slackType, NXOpen::Expression *slackValue, NXOpen::Direction *downDir)
 
Created in NX6.0.0.
void AskDefiningData (std::vector< NXOpen::Point * > &points)
 When a spline is selected for editing, the builder will anaylyze the spline and gather all of the defining data.
void AssignExtension (int pointIndex, NXOpen::Direction *direction, NXOpen::Expression *forwardExtVal, NXOpen::Expression *backExtVal)
 Assigns an extension to the point at pointIndex.
void AssignHealPathExtension (int pointIndex, NXOpen::Direction *direction, NXOpen::Expression *forwardExtVal, NXOpen::Expression *backExtVal)
 Assigns an extension to the point at pointIndex for Heal Path.
NXOpen::Routing::StockBlankStockAndGetLargestDia ()
 Blanks all the stocks on the current segment and returns the stock with the largest diameter.
void CommitDrag (NXOpen::Point *definingPoint)
 Clears the current drag network
Created in NX6.0.0.
void DeleteDefiningPointAtIndex (int index)
 Deletes a defining point from the spline.
void DetachPoint (int index)
 Detaches the point at the selected index from all objects its attached to using a Touch constraint.
void GetDefiningPointPositions (std::vector< double > &pointPositions)
 Gets the positions of the defining points.
void GetExtensionDataForPointAtIndex (int index, NXOpen::Expression **forwardVal, NXOpen::Expression **backwardVal, NXOpen::Vector3d *extDir)
 Get the extension expressions at the given index.
void GetOffsetData (int index, int *method, NXOpen::Point **basePoint, NXOpen::Direction **offDir, NXString *exp)
 Returns the Stock Offset data associated with a given point.
NXOpen::CurveGetRouteSegment ()
 Gets the routing segment managed by the builder, if it exists.
double GetSplineLength ()
 Gets the current length of the spline.
double GetSplineLengthNoShaping ()
 Gets the current length of the spline without shaping applied.
NXOpen::Routing::ControlPointGetStartAndEndRcp (NXOpen::Routing::ControlPoint **startRcp)
 Gets the RCPs managed by the builder, if they exist.
void InitializeDrag (int index)
 Initialize the D-Cubed dragging functionality for the point at index.
void IsLengthLocked (NXOpen::Expression **lockedLengthVal, bool *isLocked, NXOpen::Direction **downDir)
 
Created in NX6.0.0.
void IsSplineSlacked (bool *slacked, NXOpen::Routing::SplinePathBuilder::SplinePathSlackType *slackType, NXOpen::Expression **slackValue, NXOpen::Direction **downDir)
 
Created in NX6.0.0.
void LockSplineLengthNoShaping (NXOpen::Expression *length)
 Locks the length of the current spline.
void LockSplineLengthWithShaping (NXOpen::Expression *length, NXOpen::Direction *downDirection)
 Locks the length of the current spline.
void RemoveAllShaping ()
 Removes all shaping applied to the spline (Lock length, slacking).
void SetAddPointsOnSubdivideFlag (bool addPoints)
 Sets whether or not additional points will be added to a spline which is created as the result of a subdivide.
void SetCreateTangencyFlag (bool createTangency)
 Sets whether or not additional the newly created spline will be made tangent to connecting splines.
void SetLockToSelectedFlag (bool lockSelected)
 Sets whether the spline will attempt to lock points to selected object.
void SetSplineMethod (NXOpen::Positioning::Constraint::SplineType sMethod)
 Sets the splines method to points or poles.
void UnblankStocks ()
 Unblanks stocks which were blanked by calling BlankStockAndGetLargestDia
Created in NX7.5.1.
void UpdateDefiningPointPositionAtIndex (int index, NXOpen::Point *point, bool inDrag)
 Updates the position of a point on the spline.

Detailed Description

Builder for creating a D-Cubed constrained spline.

The builder allows for the creation of splines, editing of splines, adding extensions, adding stock offset points, adding stock, locking length, adding slack, and locking to objects.
To create a new instance of this class, use Routing::RouteManager::CreateSplinePathBuilder

Created in NX6.0.0.


Member Enumeration Documentation

Describes the method the spline is defined as.

Enumerator:
SplinePathSlackTypePercentLength 

A control point (Thru-Point) spline.

SplinePathSlackTypeAdditionalLength 

A interpolating (By-Poles) spline.

SplinePathSlackTypeUndefined 

The spline is undefined.


Member Function Documentation

Adds a defining point to the spline.

The new point will be the new endpoint of the spline.
Created in NX6.0.0.

License requirements : routing_combined ("Routing Combined") OR routing_electrical ("Routing Electrical") OR routing_mechanical ("Routing Mechanical")

Parameters:
pointPoint to add.

Adds a defining point to the current spline or creates the first point of the new spline.

Returns:
Returns the index the point was added along the spline. For example, if 3 points exist on the spline and the new point was added between points 0 and 1 this variable would be set to 1.
Created in NX6.0.0.

License requirements : routing_combined ("Routing Combined") OR routing_electrical ("Routing Electrical") OR routing_mechanical ("Routing Mechanical")
Parameters:
pointPoint to add.
createNewPointShould the builder create a new point based on the one provided.


Created in NX6.0.0.



License requirements : routing_combined ("Routing Combined") OR routing_electrical ("Routing Electrical") OR routing_mechanical ("Routing Mechanical")

Parameters:
slackTypeslacktype
slackValueslackvalue
downDirdowndir

When a spline is selected for editing, the builder will anaylyze the spline and gather all of the defining data.

The dialog will use this function to retrieve the defining data from the builder to populate its fields.
Created in NX6.0.0.

License requirements : routing_combined ("Routing Combined") OR routing_electrical ("Routing Electrical") OR routing_mechanical ("Routing Mechanical")

Parameters:
pointsDefining points of the spline.
void NXOpen::Routing::SplinePathBuilder::AssignExtension ( int  pointIndex,
NXOpen::Direction direction,
NXOpen::Expression forwardExtVal,
NXOpen::Expression backExtVal 
)

Assigns an extension to the point at pointIndex.


Created in NX6.0.0.

License requirements : routing_combined ("Routing Combined") OR routing_electrical ("Routing Electrical") OR routing_mechanical ("Routing Mechanical")

Parameters:
pointIndexIndex of the point to assing extensions to.
directionDirection of the extension.
forwardExtValLength of the forward extension.
backExtValLength of the backward extension.
void NXOpen::Routing::SplinePathBuilder::AssignHealPathExtension ( int  pointIndex,
NXOpen::Direction direction,
NXOpen::Expression forwardExtVal,
NXOpen::Expression backExtVal 
)

Assigns an extension to the point at pointIndex for Heal Path.


Created in NX6.0.1.

License requirements : routing_combined ("Routing Combined") OR routing_electrical ("Routing Electrical") OR routing_mechanical ("Routing Mechanical")

Parameters:
pointIndexIndex of the point to assing extensions to.
directionDirection of the extension.
forwardExtValLength of the forward extension.
backExtValLength of the backward extension.

Blanks all the stocks on the current segment and returns the stock with the largest diameter.

Returns:
The stock with the largest diameter
Created in NX7.5.1.

License requirements : routing_combined ("Routing Combined") OR routing_electrical ("Routing Electrical") OR routing_mechanical ("Routing Mechanical")

Clears the current drag network
Created in NX6.0.0.



License requirements : routing_combined ("Routing Combined") OR routing_electrical ("Routing Electrical") OR routing_mechanical ("Routing Mechanical")

Parameters:
definingPointOptional of UI point defining the position of the spline point.

Deletes a defining point from the spline.


Created in NX6.0.0.

License requirements : routing_combined ("Routing Combined") OR routing_electrical ("Routing Electrical") OR routing_mechanical ("Routing Mechanical")

Parameters:
indexIndex of the point to delete.

Detaches the point at the selected index from all objects its attached to using a Touch constraint.


Created in NX6.0.0.

License requirements : routing_combined ("Routing Combined") OR routing_electrical ("Routing Electrical") OR routing_mechanical ("Routing Mechanical")

Parameters:
indexIndex of point to detach.
void NXOpen::Routing::SplinePathBuilder::GetDefiningPointPositions ( std::vector< double > &  pointPositions)

Gets the positions of the defining points.


Created in NX6.0.0.

License requirements : routing_combined ("Routing Combined") OR routing_electrical ("Routing Electrical") OR routing_mechanical ("Routing Mechanical")

Parameters:
pointPositionsarray of doubles representing the defining points.

Get the extension expressions at the given index.


Created in NX6.0.0.

License requirements : routing_combined ("Routing Combined") OR routing_electrical ("Routing Electrical") OR routing_mechanical ("Routing Mechanical")

Parameters:
indexIndex of hte point to anaylze
forwardValForward Extension Length.
backwardValBackward Extension Length.
extDirExtension direction.
void NXOpen::Routing::SplinePathBuilder::GetOffsetData ( int  index,
int *  method,
NXOpen::Point **  basePoint,
NXOpen::Direction **  offDir,
NXString exp 
)

Returns the Stock Offset data associated with a given point.

Output can be NULL if the associated point is not a stock offset point.
Created in NX6.0.1.

License requirements : routing_combined ("Routing Combined") OR routing_electrical ("Routing Electrical") OR routing_mechanical ("Routing Mechanical")

Parameters:
indexIndex of point to detach.
methodThe type of offset object. 0 = Not Offset, 1 = Stock Offset Point, 2 = Stock Offset Surface
basePointThe base point frim the offset object.
offDirThe offset direction
expThe expression defining the offset distance.

Gets the routing segment managed by the builder, if it exists.

Returns:
Visible Routing BCurve Segment
Created in NX6.0.0.

License requirements : routing_combined ("Routing Combined") OR routing_electrical ("Routing Electrical") OR routing_mechanical ("Routing Mechanical")

Gets the current length of the spline.

Returns:
The length of the current spline.
Created in NX6.0.0.

License requirements : routing_combined ("Routing Combined") OR routing_electrical ("Routing Electrical") OR routing_mechanical ("Routing Mechanical")

Gets the current length of the spline without shaping applied.

Returns:
The length of the current spline without shaping.
Created in NX6.0.0.

License requirements : routing_combined ("Routing Combined") OR routing_electrical ("Routing Electrical") OR routing_mechanical ("Routing Mechanical")

Gets the RCPs managed by the builder, if they exist.

Returns:

Created in NX6.0.0.

License requirements : routing_combined ("Routing Combined") OR routing_electrical ("Routing Electrical") OR routing_mechanical ("Routing Mechanical")
Parameters:
startRcpSegment Start Rcp.

Initialize the D-Cubed dragging functionality for the point at index.


Created in NX6.0.0.

License requirements : routing_combined ("Routing Combined") OR routing_electrical ("Routing Electrical") OR routing_mechanical ("Routing Mechanical")

Parameters:
indexIndex of the point to drag
void NXOpen::Routing::SplinePathBuilder::IsLengthLocked ( NXOpen::Expression **  lockedLengthVal,
bool *  isLocked,
NXOpen::Direction **  downDir 
)


Created in NX6.0.0.



License requirements : routing_combined ("Routing Combined") OR routing_electrical ("Routing Electrical") OR routing_mechanical ("Routing Mechanical")

Parameters:
lockedLengthVallockedlengthval
isLockedislocked
downDirdowndir


Created in NX6.0.0.



License requirements : routing_combined ("Routing Combined") OR routing_electrical ("Routing Electrical") OR routing_mechanical ("Routing Mechanical")

Parameters:
slackedslacked
slackTypeslacktype
slackValueslackvalue
downDirdowndir

Locks the length of the current spline.


Created in NX6.0.0.

License requirements : routing_combined ("Routing Combined") OR routing_electrical ("Routing Electrical") OR routing_mechanical ("Routing Mechanical")

Parameters:
lengthExpression containing the desired length.

Locks the length of the current spline.


Created in NX6.0.0.

License requirements : routing_combined ("Routing Combined") OR routing_electrical ("Routing Electrical") OR routing_mechanical ("Routing Mechanical")

Parameters:
lengthThe length to lock the spline to.
downDirectiondowndirection

Removes all shaping applied to the spline (Lock length, slacking).


Created in NX6.0.0.

License requirements : routing_combined ("Routing Combined") OR routing_electrical ("Routing Electrical") OR routing_mechanical ("Routing Mechanical")

Sets whether or not additional points will be added to a spline which is created as the result of a subdivide.

If true, new points will be added to maintain a shape similar to the original curve.
Created in NX6.0.0.

License requirements : routing_combined ("Routing Combined") OR routing_electrical ("Routing Electrical") OR routing_mechanical ("Routing Mechanical")

Parameters:
addPointsTrue to add points to subdivided splines.

Sets whether or not additional the newly created spline will be made tangent to connecting splines.


Created in NX6.0.0.

License requirements : routing_combined ("Routing Combined") OR routing_electrical ("Routing Electrical") OR routing_mechanical ("Routing Mechanical")

Parameters:
createTangencyTrue to add tangency.

Sets whether the spline will attempt to lock points to selected object.

This flag is only checked when adding a point to a spline by passing in a smart point to derive a new dumb spline point from. If the smart point is derived from a port, rcp, or other routing object the new spline defining point will lock to that object. This flag is also checked during commit, where endpoint associativity is applied.
Created in NX6.0.0.

License requirements : routing_combined ("Routing Combined") OR routing_electrical ("Routing Electrical") OR routing_mechanical ("Routing Mechanical")

Parameters:
lockSelectedTrue to lock to selected objects.

Sets the splines method to points or poles.


Created in NX6.0.0.

License requirements : routing_combined ("Routing Combined") OR routing_electrical ("Routing Electrical") OR routing_mechanical ("Routing Mechanical")

Parameters:
sMethodSet the defining method of the spline.

Unblanks stocks which were blanked by calling BlankStockAndGetLargestDia
Created in NX7.5.1.



License requirements : routing_combined ("Routing Combined") OR routing_electrical ("Routing Electrical") OR routing_mechanical ("Routing Mechanical")

Updates the position of a point on the spline.


Created in NX6.0.0.

License requirements : routing_combined ("Routing Combined") OR routing_electrical ("Routing Electrical") OR routing_mechanical ("Routing Mechanical")

Parameters:
indexThe index in the list of defining spline points to move.
pointPoint representing the new position.
inDragTrue if the point is currently being dragged.

The documentation for this class was generated from the following file:
Copyright 2011 Siemens Product Lifecycle Management Software Inc. All Rights Reserved.