NX Open C++ Reference Guide
Public Types | Public Member Functions | List of all members
NXOpen::Features::LatticeBuilder Class Reference

Represents a Features.Lattice builder
To create a new instance of this class, use NXOpen::Features::LatticeFeatureCollection::CreateLatticeBuilder
Default values. More...

Inheritance diagram for NXOpen::Features::LatticeBuilder:
NXOpen::Features::FeatureBuilder NXOpen::Builder NXOpen::TaggedObject NXOpen::GeometricUtilities::IComponentBuilder

Public Types

enum  LatticeTypes { LatticeTypesUnitGraph, LatticeTypesSurfaceGraph, LatticeTypesTetrahedronGraph, LatticeTypesConformalGraph }
 This enum represents the lattice types that are supported in NX. More...
 

Public Member Functions

NXOpen::SelectFaceListBaseFace ()
 Returns the faces that the user selects to define the boundary
Created in NX11.0.2. More...
 
NXOpen::SelectBodyListBoundaryBody ()
 Returns the solid bodies that the user selects to define the boundary
Created in NX11.0.2. More...
 
NXString CellTypeName ()
 Returns. More...
 
NXOpen::ExpressionEdgeLength ()
 Returns the edge length of the unit cell bounding box, and effective only when the bounding box is a uniform cube
Created in NX11.0.2. More...
 
NXOpen::SelectFaceListFilterToolFace ()
 Returns the faces of the boundary body that the dangling rods connected to will be removed from the lattice body
Created in NX12.0.0. More...
 
bool IsRandom ()
 Returns. More...
 
bool IsUniformCube ()
 Returns whether the unit cell bounding box is a uniform cube
Created in NX11.0.2. More...
 
NXOpen::Features::LatticeBuilder::LatticeTypes LatticeType ()
 Returns. More...
 
int Layers ()
 Returns. More...
 
NXOpen::ExpressionMaxDeviation ()
 Returns. More...
 
NXOpen::ExpressionOffset ()
 Returns. More...
 
NXOpen::Matrix3x3 Orientation ()
 Returns. More...
 
NXOpen::Point3d Origin ()
 Returns the origin where the unit cell patterning starts in the lattice creation
Created in NX11.0.2. More...
 
bool RemoveDanglingRods ()
 Returns. More...
 
bool RemoveDisconnectedRods ()
 Returns. More...
 
bool ReverseFaceDirection ()
 Returns whether the conformal lattice will be generated on the other side of the face
Created in NX12.0.0. More...
 
NXOpen::ExpressionRodDiameter ()
 Returns the diameter/thickness of the rods in the lattice graph
Created in NX11.0.2. More...
 
void SetCellTypeName (const NXString &cellTypeName)
 Sets. More...
 
void SetCellTypeName (const char *cellTypeName)
 Sets. More...
 
void SetLatticeType (NXOpen::Features::LatticeBuilder::LatticeTypes latticeType)
 Sets. More...
 
void SetLayers (int layers)
 Sets. More...
 
void SetOrientation (const NXOpen::Matrix3x3 &orientMtx)
 Sets. More...
 
void SetOrigin (const NXOpen::Point3d &origin)
 Sets the origin where the unit cell patterning starts in the lattice creation
Created in NX11.0.2. More...
 
void SetRandom (bool random)
 Sets. More...
 
void SetRemoveDanglingRods (bool remove)
 Sets. More...
 
void SetRemoveDisconnectedRods (bool remove)
 Sets. More...
 
void SetReverseFaceDirection (bool reverseFaceDir)
 Sets whether the conformal lattice will be generated on the other side of the face
Created in NX12.0.0. More...
 
void SetTessellationFactor (double factor)
 Sets. More...
 
void SetUniformCube (bool uniformCube)
 Sets whether the unit cell bounding box is a uniform cube
Created in NX11.0.2. More...
 
NXOpen::ExpressionSizeX ()
 Returns the size of the unit cell bounding box in x axis, and effective only when the bounding box is not a uniform cube
Created in NX11.0.2. More...
 
NXOpen::ExpressionSizeY ()
 Returns the size of the unit cell bounding box in y axis, and effective only when the bounding box is not a uniform cube
Created in NX11.0.2. More...
 
NXOpen::ExpressionSizeZ ()
 Returns the size of the unit cell bounding box in z axis, and effective only when the bounding box is not a uniform cube
Created in NX11.0.2. More...
 
double TessellationFactor ()
 Returns. More...
 
- Public Member Functions inherited from NXOpen::Features::FeatureBuilder
NXOpen::Features::FeatureCommitFeature ()
 Commits the feature parameters and creates the feature. More...
 
NXOpen::Features::FeatureGetFeature ()
 Returns the feature currently being edited by this builder. More...
 
void HideInternalParentFeatureAfterEdit (NXOpen::Features::Feature *parentFeature)
 Re-suppress an internal parent feature (a slave feature) after it has been edited. More...
 
bool ParentFeatureInternal ()
 Returns whether or not the latest timestamped parent feature of this feature should be made internal
Created in NX5.0.0. More...
 
bool PatchSolutionFlag ()
 Returns the patch solution flag
Created in NX8.0.1. More...
 
NXString PatchSurfaceFilename ()
 Returns the patch surface filename
Created in NX8.0.1. More...
 
void SetParentFeatureInternal (NXOpen::Features::Feature *parentFeature)
 Set the parent features which would be internal or slaves to the feature being created or commited
Created in NX6.0.0. More...
 
void SetParentFeatureInternal (bool isInternal)
 Sets whether or not the latest timestamped parent feature of this feature should be made internal
Created in NX5.0.0. More...
 
void SetPatchSolutionFlag (bool optionValue)
 Sets the patch solution flag
Created in NX8.0.1. More...
 
void SetPatchSurfaceFilename (const NXString &surfaceFilename)
 Sets the patch surface filename
Created in NX8.0.1. More...
 
void SetPatchSurfaceFilename (const char *surfaceFilename)
 Sets the patch surface filename
Created in NX8.0.1. More...
 
void SetSurroundingPatchSurfaceFilename (const NXString &surroundingSurfaceFilename)
 Sets the surrounding patch surface filename
Created in NX8.0.1. More...
 
void SetSurroundingPatchSurfaceFilename (const char *surroundingSurfaceFilename)
 Sets the surrounding patch surface filename
Created in NX8.0.1. More...
 
void ShowInternalParentFeatureForEdit (NXOpen::Features::Feature *parentFeature)
 Unsuppress an internal parent feature (a slave feature) so it can be edited. More...
 
NXString SurroundingPatchSurfaceFilename ()
 Returns the surrounding patch surface filename
Created in NX8.0.1. More...
 
void UnsetParentFeatureInternal (NXOpen::Features::Feature *parentFeature)
 Set the internal parent feature of the feature being edited to external
Created in NX6.0.0. 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

Represents a Features.Lattice builder
To create a new instance of this class, use NXOpen::Features::LatticeFeatureCollection::CreateLatticeBuilder
Default values.

Property Value

CellTypeName

Octapeak

EdgeLength.Value

10 (millimeters part), 0.5 (inches part)

IsRandom

0

IsUniformCube

1

LatticeType

UnitGraph

Layers

1

MaxDeviation.Value

0.5 (millimeters part), 0.02 (inches part)

MaxEdgeLength.Value

10 (millimeters part), 0.5 (inches part)

Offset.Value

0 (millimeters part), 0 (inches part)

RemoveDanglingRods

0

RemoveDisconnectedRods

1

ReverseFaceDirection

0

RodDiameter.Value

1 (millimeters part), 0.05 (inches part)

SizeX.Value

10 (millimeters part), 0.5 (inches part)

SizeY.Value

10 (millimeters part), 0.5 (inches part)

SizeZ.Value

10 (millimeters part), 0.5 (inches part)

TessellationFactor

0.4


Created in NX11.0.2.

Member Enumeration Documentation

This enum represents the lattice types that are supported in NX.

SurfaceGraph and TetrahedronGraph are not currently supported.

Enumerator
LatticeTypesUnitGraph 

unit graph

LatticeTypesSurfaceGraph 

surface graph

LatticeTypesTetrahedronGraph 

tetrahedron graph

LatticeTypesConformalGraph 

conformal graph

Member Function Documentation

NXOpen::SelectFaceList* NXOpen::Features::LatticeBuilder::BaseFace ( )

Returns the faces that the user selects to define the boundary
Created in NX11.0.2.



License requirements : None

NXOpen::SelectBodyList* NXOpen::Features::LatticeBuilder::BoundaryBody ( )

Returns the solid bodies that the user selects to define the boundary
Created in NX11.0.2.



License requirements : None

NXString NXOpen::Features::LatticeBuilder::CellTypeName ( )

Returns.

the name of the unit cell type that the user selects.

Currently there are 15 valid unit cells that are supported in NX. Their name strings are:

  • BiTriangle
  • Cubeplex
  • Dodecahedron
  • HexStar
  • HexVase
  • HexVaseMod
  • Octapeak
  • Octahedroid
  • PseudoSierpinski
  • QuadDiametral
  • QuadDiametralCross
  • QuadDiametralLine
  • Star
  • TriDiametral
  • TriDiametralChevron


Created in NX11.0.2.

License requirements : None

NXOpen::Expression* NXOpen::Features::LatticeBuilder::EdgeLength ( )

Returns the edge length of the unit cell bounding box, and effective only when the bounding box is a uniform cube
Created in NX11.0.2.



License requirements : None

NXOpen::SelectFaceList* NXOpen::Features::LatticeBuilder::FilterToolFace ( )

Returns the faces of the boundary body that the dangling rods connected to will be removed from the lattice body
Created in NX12.0.0.



License requirements : None

bool NXOpen::Features::LatticeBuilder::IsRandom ( )

Returns.

whether to randomize graph vertices within a specified range and generate some bumps for the lattice body.

The range over which the vertices are randomized is determined by property Features::LatticeBuilder::MaxDeviation .


Created in NX11.0.2.

License requirements : None

bool NXOpen::Features::LatticeBuilder::IsUniformCube ( )

Returns whether the unit cell bounding box is a uniform cube
Created in NX11.0.2.



License requirements : None

NXOpen::Features::LatticeBuilder::LatticeTypes NXOpen::Features::LatticeBuilder::LatticeType ( )

Returns.

the type of lattice that is going to be created.

For now, the only supported lattice types are: NXOpen::Features::LatticeBuilder::LatticeTypesUnitGraph and NXOpen::Features::LatticeBuilder::LatticeTypesConformalGraph .


Created in NX11.0.2.

License requirements : None

int NXOpen::Features::LatticeBuilder::Layers ( )

Returns.

the number of unit cell layers stacked over each other.

The default is one layer only.
Created in NX12.0.0.

License requirements : None

NXOpen::Expression* NXOpen::Features::LatticeBuilder::MaxDeviation ( )

Returns.

the maximum deviation that the vertices of the lattice graph will have.

The bigger the value of this property is, the more obvious bumps the lattice body will generate.
Created in NX11.0.2.

License requirements : None

NXOpen::Expression* NXOpen::Features::LatticeBuilder::Offset ( )

Returns.

the offset of the conformal lattice from the base face.

A negative offset will let the conformal lattice intersect with the base face ("into material"). A positive offset will move the conformal lattice away from the base face( "away from material"). Using a negative offset can ensure that the final lattice body will intersect with the base face, if that is required. The default offset is zero.
Created in NX12.0.0.

License requirements : None

NXOpen::Matrix3x3 NXOpen::Features::LatticeBuilder::Orientation ( )

Returns.

the orientation matrix of unit cell patterning in the lattice creation.

The orientation matrix is defined relative to the WCS.


Created in NX11.0.2.

License requirements : None

NXOpen::Point3d NXOpen::Features::LatticeBuilder::Origin ( )

Returns the origin where the unit cell patterning starts in the lattice creation
Created in NX11.0.2.



License requirements : None

bool NXOpen::Features::LatticeBuilder::RemoveDanglingRods ( )

Returns.

whether to remove dangling rods from the lattice body.

The dangling rods are defined as the following:

  • Connects at only one end to the lattice body
  • Touches or intersects a selected face of the boundary body

The selected faces are (Features::LatticeBuilder::FilterToolFace )


Created in NX12.0.0.

License requirements : None

bool NXOpen::Features::LatticeBuilder::RemoveDisconnectedRods ( )

Returns.

whether to remove small disconnected lattice portions keeping just the largest body.


Created in NX12.0.0.

License requirements : None

bool NXOpen::Features::LatticeBuilder::ReverseFaceDirection ( )

Returns whether the conformal lattice will be generated on the other side of the face
Created in NX12.0.0.



License requirements : None

NXOpen::Expression* NXOpen::Features::LatticeBuilder::RodDiameter ( )

Returns the diameter/thickness of the rods in the lattice graph
Created in NX11.0.2.



License requirements : None

void NXOpen::Features::LatticeBuilder::SetCellTypeName ( const NXString cellTypeName)

Sets.

the name of the unit cell type that the user selects.

Currently there are 15 valid unit cells that are supported in NX. Their name strings are:

  • BiTriangle
  • Cubeplex
  • Dodecahedron
  • HexStar
  • HexVase
  • HexVaseMod
  • Octapeak
  • Octahedroid
  • PseudoSierpinski
  • QuadDiametral
  • QuadDiametralCross
  • QuadDiametralLine
  • Star
  • TriDiametral
  • TriDiametralChevron


Created in NX11.0.2.

License requirements : nx_lattice_base (" NX Lattice Base")

Parameters
cellTypeNamecelltypename
void NXOpen::Features::LatticeBuilder::SetCellTypeName ( const char *  cellTypeName)

Sets.

the name of the unit cell type that the user selects.

Currently there are 15 valid unit cells that are supported in NX. Their name strings are:

  • BiTriangle
  • Cubeplex
  • Dodecahedron
  • HexStar
  • HexVase
  • HexVaseMod
  • Octapeak
  • Octahedroid
  • PseudoSierpinski
  • QuadDiametral
  • QuadDiametralCross
  • QuadDiametralLine
  • Star
  • TriDiametral
  • TriDiametralChevron


Created in NX11.0.2.

License requirements : nx_lattice_base (" NX Lattice Base")

Parameters
cellTypeNamecelltypename
void NXOpen::Features::LatticeBuilder::SetLatticeType ( NXOpen::Features::LatticeBuilder::LatticeTypes  latticeType)

Sets.

the type of lattice that is going to be created.

For now, the only supported lattice types are: NXOpen::Features::LatticeBuilder::LatticeTypesUnitGraph and NXOpen::Features::LatticeBuilder::LatticeTypesConformalGraph .


Created in NX11.0.2.

License requirements : nx_lattice_base (" NX Lattice Base")

Parameters
latticeTypelatticetype
void NXOpen::Features::LatticeBuilder::SetLayers ( int  layers)

Sets.

the number of unit cell layers stacked over each other.

The default is one layer only.
Created in NX12.0.0.

License requirements : nx_lattice_base (" NX Lattice Base")

Parameters
layerslayers
void NXOpen::Features::LatticeBuilder::SetOrientation ( const NXOpen::Matrix3x3 orientMtx)

Sets.

the orientation matrix of unit cell patterning in the lattice creation.

The orientation matrix is defined relative to the WCS.


Created in NX11.0.2.

License requirements : nx_lattice_base (" NX Lattice Base")

Parameters
orientMtxorientmtx
void NXOpen::Features::LatticeBuilder::SetOrigin ( const NXOpen::Point3d origin)

Sets the origin where the unit cell patterning starts in the lattice creation
Created in NX11.0.2.



License requirements : nx_lattice_base (" NX Lattice Base")

Parameters
originorigin
void NXOpen::Features::LatticeBuilder::SetRandom ( bool  random)

Sets.

whether to randomize graph vertices within a specified range and generate some bumps for the lattice body.

The range over which the vertices are randomized is determined by property Features::LatticeBuilder::MaxDeviation .


Created in NX11.0.2.

License requirements : nx_lattice_base (" NX Lattice Base")

Parameters
randomrandom
void NXOpen::Features::LatticeBuilder::SetRemoveDanglingRods ( bool  remove)

Sets.

whether to remove dangling rods from the lattice body.

The dangling rods are defined as the following:

  • Connects at only one end to the lattice body
  • Touches or intersects a selected face of the boundary body

The selected faces are (Features::LatticeBuilder::FilterToolFace )


Created in NX12.0.0.

License requirements : nx_lattice_base (" NX Lattice Base")

Parameters
removeremove
void NXOpen::Features::LatticeBuilder::SetRemoveDisconnectedRods ( bool  remove)

Sets.

whether to remove small disconnected lattice portions keeping just the largest body.


Created in NX12.0.0.

License requirements : nx_lattice_base (" NX Lattice Base")

Parameters
removeremove
void NXOpen::Features::LatticeBuilder::SetReverseFaceDirection ( bool  reverseFaceDir)

Sets whether the conformal lattice will be generated on the other side of the face
Created in NX12.0.0.



License requirements : nx_lattice_base (" NX Lattice Base")

Parameters
reverseFaceDirreversefacedir
void NXOpen::Features::LatticeBuilder::SetTessellationFactor ( double  factor)

Sets.

the tessellation factor of the lattice creation.

A tessellation tolerance specifies the maximum deviation between the ideal rod and their final tessellated representation of the lattice body. Since the result heavily depends on the relation between rod diameter and tessellation tolerance the user specifies only a unitless tessellation factor. The actual tessellation tolerance will determined by (Features::LatticeBuilder::TessellationFactor and Features::LatticeBuilder::SetTessellationFactor ) X (Features::LatticeBuilder::RodDiameter )
Created in NX11.0.2.

License requirements : nx_lattice_base (" NX Lattice Base")

Parameters
factorfactor
void NXOpen::Features::LatticeBuilder::SetUniformCube ( bool  uniformCube)

Sets whether the unit cell bounding box is a uniform cube
Created in NX11.0.2.



License requirements : nx_lattice_base (" NX Lattice Base")

Parameters
uniformCubeuniformcube
NXOpen::Expression* NXOpen::Features::LatticeBuilder::SizeX ( )

Returns the size of the unit cell bounding box in x axis, and effective only when the bounding box is not a uniform cube
Created in NX11.0.2.



License requirements : None

NXOpen::Expression* NXOpen::Features::LatticeBuilder::SizeY ( )

Returns the size of the unit cell bounding box in y axis, and effective only when the bounding box is not a uniform cube
Created in NX11.0.2.



License requirements : None

NXOpen::Expression* NXOpen::Features::LatticeBuilder::SizeZ ( )

Returns the size of the unit cell bounding box in z axis, and effective only when the bounding box is not a uniform cube
Created in NX11.0.2.



License requirements : None

double NXOpen::Features::LatticeBuilder::TessellationFactor ( )

Returns.

the tessellation factor of the lattice creation.

A tessellation tolerance specifies the maximum deviation between the ideal rod and their final tessellated representation of the lattice body. Since the result heavily depends on the relation between rod diameter and tessellation tolerance the user specifies only a unitless tessellation factor. The actual tessellation tolerance will determined by (Features::LatticeBuilder::TessellationFactor and Features::LatticeBuilder::SetTessellationFactor ) X (Features::LatticeBuilder::RodDiameter )
Created in NX11.0.2.

License requirements : None


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