NX Open C++ Reference Guide
Public Types | Public Member Functions | List of all members
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

Public Types

enum  SplinePathAttributeOptions { SplinePathAttributeOptionsRadius, SplinePathAttributeOptionsRatioToDiameter }
 Describes user attribute methods options These value are used to set minimum checking method. More...
 
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. More...
 
int AddDefiningPointToSpline (NXOpen::Point *point, bool createNewPoint)
 Adds a defining point to the current spline or creates the first point of the new spline. More...
 
void AddSlackToSpline (NXOpen::Routing::SplinePathBuilder::SplinePathSlackType slackType, NXOpen::Expression *slackValue, NXOpen::Direction *downDir)
 
Created in NX6.0.0. More...
 
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. More...
 
void AssignExtension (int pointIndex, NXOpen::Direction *direction, NXOpen::Expression *forwardExtVal, NXOpen::Expression *backExtVal)
 Assigns an extension to the point at pointIndex. More...
 
void AssignHealPathExtension (int pointIndex, NXOpen::Direction *direction, NXOpen::Expression *forwardExtVal, NXOpen::Expression *backExtVal)
 Assigns an extension to the point at pointIndex for Heal Path. More...
 
NXOpen::Routing::StockBlankStockAndGetLargestDia ()
 Blanks all the stocks on the current segment and returns the stock with the largest diameter. More...
 
void CommitDrag (NXOpen::Point *definingPoint)
 Clears the current drag network
Created in NX6.0.0. More...
 
void DeleteDefiningPointAtIndex (int index)
 Deletes a defining point from the spline. More...
 
void DetachPoint (int index)
 Detaches the point at the selected index from all objects its attached to using a Touch constraint. More...
 
void GetDefiningPointPositions (std::vector< double > &pointPositions)
 Gets the positions of the defining points. More...
 
void GetExtensionDataForPointAtIndex (int index, NXOpen::Expression **forwardVal, NXOpen::Expression **backwardVal, NXOpen::Vector3d *extDir)
 Get the extension expressions at the given index. More...
 
double GetLockedSplineMinimumLength ()
 Returns the minimum length of the spline. More...
 
void GetOffsetData (int index, int *method, NXOpen::Point **basePoint, NXOpen::Direction **offDir, NXString *exp)
 Returns the Stock Offset data associated with a given point. More...
 
NXOpen::CurveGetRouteSegment ()
 Gets the routing segment managed by the builder, if it exists. More...
 
double GetSplineLength ()
 Gets the current length of the spline. More...
 
double GetSplineLengthNoShaping ()
 Gets the current length of the spline without shaping applied. More...
 
NXOpen::Routing::ControlPointGetStartAndEndRcp (NXOpen::Routing::ControlPoint **startRcp)
 Gets the RCPs managed by the builder, if they exist. More...
 
void InitializeDrag (int index)
 Initialize the D-Cubed dragging functionality for the point at index. More...
 
void IsLengthLocked (NXOpen::Expression **lockedLengthVal, bool *isLocked, NXOpen::Direction **downDir)
 
Created in NX6.0.0. More...
 
void IsSplineSlacked (bool *slacked, NXOpen::Routing::SplinePathBuilder::SplinePathSlackType *slackType, NXOpen::Expression **slackValue, NXOpen::Direction **downDir)
 
Created in NX6.0.0. More...
 
void LockSplineLengthNoShaping (NXOpen::Expression *length)
 Locks the length of the current spline. More...
 
void LockSplineLengthWithShaping (NXOpen::Expression *length, NXOpen::Direction *downDirection)
 Locks the length of the current spline. More...
 
NXOpen::ExpressionMinimumCheckingAllowableRatio ()
 Returns the minimum ratio allowed for this spline
Created in NX9.1.0. More...
 
NXOpen::ExpressionMinimumCheckingAllowableValue ()
 Returns the minimum radius allowed for this spline. More...
 
NXOpen::Routing::SplinePathBuilder::SplinePathAttributeOptions MinimumCheckingMethod ()
 Returns the minimum checking method for this spline. More...
 
void RemoveAllShaping ()
 Removes all shaping applied to the spline (Lock length, slacking). More...
 
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. More...
 
void SetCreateTangencyFlag (bool createTangency)
 Sets whether or not additional the newly created spline will be made tangent to connecting splines. More...
 
void SetLockToSelectedFlag (bool lockSelected)
 Sets whether the spline will attempt to lock points to selected object. More...
 
void SetMinimumCheckingMethod (NXOpen::Routing::SplinePathBuilder::SplinePathAttributeOptions routeCheckingMethod)
 Sets the minimum checking method for this spline. More...
 
void SetShowSplineMinimumRadius (bool allowDisplay)
 Sets whether the spline minimum radius value should be displayed or not. More...
 
void SetSplineMethod (NXOpen::Positioning::Constraint::SplineType sMethod)
 Sets the splines method to points or poles. More...
 
void SetUseMinimumCheckingValue (bool useMinRadius)
 Sets whether the spline minimum radius value should be checked or not on this spline. More...
 
bool ShowSplineMinimumRadius ()
 Returns whether the spline minimum radius value should be displayed or not. More...
 
void UnblankStocks ()
 Unblanks stocks which were blanked by calling BlankStockAndGetLargestDia
Created in NX7.5.1. More...
 
void UpdateDefiningPointPositionAtIndex (int index, NXOpen::Point *point, bool inDrag)
 Updates the position of a point on the spline. More...
 
bool UseMinimumCheckingValue ()
 Returns whether the spline minimum radius value should be checked or not on this spline. More...
 
- Public Member Functions inherited from NXOpen::Builder
NXOpen::NXObjectCommit ()
 Commits any edits that have been applied to the builder. More...
 
void Destroy ()
 Deletes the builder, and cleans up any objects created by the builder. More...
 
std::vector< NXOpen::NXObject * > GetCommittedObjects ()
 For builders that create more than one object, this method returns the objects that are created by commit. More...
 
NXOpen::NXObjectGetObject ()
 Returns the object currently being edited by this builder. More...
 
void ShowResults ()
 Updates the model to reflect the result of an edit to the model for all builders that support showing results. More...
 
virtual bool Validate ()
 Validate whether the inputs to the component are sufficient for commit to be called. More...
 
- Public Member Functions inherited from NXOpen::TaggedObject
tag_t Tag () const
 Returns the tag of this object. More...
 

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 NXOpen::Routing::RouteManager::CreateSplinePathBuilder

Created in NX6.0.0.

Member Enumeration Documentation

Describes user attribute methods options These value are used to set minimum checking method.

If checking method is ratio to diameter than allowable radius will be computed by ratioToDiameter x Stock Diameter

Enumerator
SplinePathAttributeOptionsRadius 

A radius method option for spline user attribute.

SplinePathAttributeOptionsRatioToDiameter 

A ratio to diameter method option for spline user attribute.

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

void NXOpen::Routing::SplinePathBuilder::AddDefiningPointAtAbsoluteCoords ( const NXOpen::Point3d point)

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_base ("Routing Basic")

Parameters
pointPoint to add.
int NXOpen::Routing::SplinePathBuilder::AddDefiningPointToSpline ( NXOpen::Point point,
bool  createNewPoint 
)

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_base ("Routing Basic")
Parameters
pointPoint to add.
createNewPointShould the builder create a new point based on the one provided.
void NXOpen::Routing::SplinePathBuilder::AddSlackToSpline ( NXOpen::Routing::SplinePathBuilder::SplinePathSlackType  slackType,
NXOpen::Expression slackValue,
NXOpen::Direction downDir 
)


Created in NX6.0.0.



License requirements : routing_base ("Routing Basic")

Parameters
slackTypeslacktype
slackValueslackvalue
downDirdowndir
void NXOpen::Routing::SplinePathBuilder::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.

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_base ("Routing Basic")

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_base ("Routing Basic")

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_base ("Routing Basic")

Parameters
pointIndexIndex of the point to assing extensions to.
directionDirection of the extension.
forwardExtValLength of the forward extension.
backExtValLength of the backward extension.
NXOpen::Routing::Stock* NXOpen::Routing::SplinePathBuilder::BlankStockAndGetLargestDia ( )

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_base ("Routing Basic")
void NXOpen::Routing::SplinePathBuilder::CommitDrag ( NXOpen::Point definingPoint)

Clears the current drag network
Created in NX6.0.0.



License requirements : routing_base ("Routing Basic")

Parameters
definingPointOptional of UI point defining the position of the spline point.
void NXOpen::Routing::SplinePathBuilder::DeleteDefiningPointAtIndex ( int  index)

Deletes a defining point from the spline.


Created in NX6.0.0.

License requirements : routing_base ("Routing Basic")

Parameters
indexIndex of the point to delete.
void NXOpen::Routing::SplinePathBuilder::DetachPoint ( int  index)

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_base ("Routing Basic")

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_base ("Routing Basic")

Parameters
pointPositionsarray of doubles representing the defining points.
void NXOpen::Routing::SplinePathBuilder::GetExtensionDataForPointAtIndex ( int  index,
NXOpen::Expression **  forwardVal,
NXOpen::Expression **  backwardVal,
NXOpen::Vector3d extDir 
)

Get the extension expressions at the given index.


Created in NX6.0.0.

License requirements : routing_base ("Routing Basic")

Parameters
indexIndex of hte point to anaylze
forwardValForward Extension Length.
backwardValBackward Extension Length.
extDirExtension direction.
double NXOpen::Routing::SplinePathBuilder::GetLockedSplineMinimumLength ( )

Returns the minimum length of the spline.

The minimum length is the straight line distance between all defining points, including extensions.

Returns
The minimum length of the spline
Created in NX7.5.4.

License requirements : routing_base ("Routing Basic")
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_base ("Routing Basic")

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.
NXOpen::Curve* NXOpen::Routing::SplinePathBuilder::GetRouteSegment ( )

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

Returns
Visible Routing BCurve Segment
Created in NX6.0.0.

License requirements : routing_base ("Routing Basic")
double NXOpen::Routing::SplinePathBuilder::GetSplineLength ( )

Gets the current length of the spline.

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

License requirements : routing_base ("Routing Basic")
double NXOpen::Routing::SplinePathBuilder::GetSplineLengthNoShaping ( )

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_base ("Routing Basic")
NXOpen::Routing::ControlPoint* NXOpen::Routing::SplinePathBuilder::GetStartAndEndRcp ( NXOpen::Routing::ControlPoint **  startRcp)

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

Returns

Created in NX6.0.0.

License requirements : routing_base ("Routing Basic")
Parameters
startRcpSegment Start Rcp.
void NXOpen::Routing::SplinePathBuilder::InitializeDrag ( int  index)

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


Created in NX6.0.0.

License requirements : routing_base ("Routing Basic")

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_base ("Routing Basic")

Parameters
lockedLengthVallockedlengthval
isLockedislocked
downDirdowndir
void NXOpen::Routing::SplinePathBuilder::IsSplineSlacked ( bool *  slacked,
NXOpen::Routing::SplinePathBuilder::SplinePathSlackType slackType,
NXOpen::Expression **  slackValue,
NXOpen::Direction **  downDir 
)


Created in NX6.0.0.



License requirements : routing_base ("Routing Basic")

Parameters
slackedslacked
slackTypeslacktype
slackValueslackvalue
downDirdowndir
void NXOpen::Routing::SplinePathBuilder::LockSplineLengthNoShaping ( NXOpen::Expression length)

Locks the length of the current spline.


Created in NX6.0.0.

License requirements : routing_base ("Routing Basic")

Parameters
lengthExpression containing the desired length.
void NXOpen::Routing::SplinePathBuilder::LockSplineLengthWithShaping ( NXOpen::Expression length,
NXOpen::Direction downDirection 
)

Locks the length of the current spline.


Created in NX6.0.0.

License requirements : routing_base ("Routing Basic")

Parameters
lengthThe length to lock the spline to.
downDirectiondowndirection
NXOpen::Expression* NXOpen::Routing::SplinePathBuilder::MinimumCheckingAllowableRatio ( )

Returns the minimum ratio allowed for this spline
Created in NX9.1.0.



License requirements : routing_base ("Routing Basic")

NXOpen::Expression* NXOpen::Routing::SplinePathBuilder::MinimumCheckingAllowableValue ( )

Returns the minimum radius allowed for this spline.


Created in NX9.1.0.

License requirements : routing_base ("Routing Basic")

NXOpen::Routing::SplinePathBuilder::SplinePathAttributeOptions NXOpen::Routing::SplinePathBuilder::MinimumCheckingMethod ( )

Returns the minimum checking method for this spline.

See NXOpen::Routing::SplinePathBuilder::SplinePathAttributeOptions for valid options
Created in NX9.1.0.

License requirements : routing_base ("Routing Basic")

void NXOpen::Routing::SplinePathBuilder::RemoveAllShaping ( )

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


Created in NX6.0.0.

License requirements : routing_base ("Routing Basic")

void NXOpen::Routing::SplinePathBuilder::SetAddPointsOnSubdivideFlag ( bool  addPoints)

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_base ("Routing Basic")

Parameters
addPointsTrue to add points to subdivided splines.
void NXOpen::Routing::SplinePathBuilder::SetCreateTangencyFlag ( bool  createTangency)

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


Created in NX6.0.0.

License requirements : routing_base ("Routing Basic")

Parameters
createTangencyTrue to add tangency.
void NXOpen::Routing::SplinePathBuilder::SetLockToSelectedFlag ( bool  lockSelected)

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_base ("Routing Basic")

Parameters
lockSelectedTrue to lock to selected objects.
void NXOpen::Routing::SplinePathBuilder::SetMinimumCheckingMethod ( NXOpen::Routing::SplinePathBuilder::SplinePathAttributeOptions  routeCheckingMethod)

Sets the minimum checking method for this spline.

See NXOpen::Routing::SplinePathBuilder::SplinePathAttributeOptions for valid options
Created in NX9.1.0.

License requirements : routing_base ("Routing Basic")

Parameters
routeCheckingMethodroutecheckingmethod
void NXOpen::Routing::SplinePathBuilder::SetShowSplineMinimumRadius ( bool  allowDisplay)

Sets whether the spline minimum radius value should be displayed or not.


Created in NX9.1.0.

License requirements : routing_base ("Routing Basic")

Parameters
allowDisplayallowdisplay
void NXOpen::Routing::SplinePathBuilder::SetSplineMethod ( NXOpen::Positioning::Constraint::SplineType  sMethod)

Sets the splines method to points or poles.


Created in NX6.0.0.

License requirements : routing_base ("Routing Basic")

Parameters
sMethodSet the defining method of the spline.
void NXOpen::Routing::SplinePathBuilder::SetUseMinimumCheckingValue ( bool  useMinRadius)

Sets whether the spline minimum radius value should be checked or not on this spline.


Created in NX9.1.0.

License requirements : routing_base ("Routing Basic")

Parameters
useMinRadiususeminradius
bool NXOpen::Routing::SplinePathBuilder::ShowSplineMinimumRadius ( )

Returns whether the spline minimum radius value should be displayed or not.


Created in NX9.1.0.

License requirements : routing_base ("Routing Basic")

void NXOpen::Routing::SplinePathBuilder::UnblankStocks ( )

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



License requirements : routing_base ("Routing Basic")

void NXOpen::Routing::SplinePathBuilder::UpdateDefiningPointPositionAtIndex ( int  index,
NXOpen::Point point,
bool  inDrag 
)

Updates the position of a point on the spline.


Created in NX6.0.0.

License requirements : routing_base ("Routing Basic")

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.
bool NXOpen::Routing::SplinePathBuilder::UseMinimumCheckingValue ( )

Returns whether the spline minimum radius value should be checked or not on this spline.


Created in NX9.1.0.

License requirements : routing_base ("Routing Basic")


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