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

This class provides functionality to subdivide the polygons to increase the density of the facet bodies. More...

Inheritance diagram for NXOpen::Facet::SubdivideFacetBodyBuilder:
NXOpen::Builder NXOpen::TaggedObject NXOpen::GeometricUtilities::IComponentBuilder

Public Types

enum  InterpolationMethodType { InterpolationMethodTypeLinear, InterpolationMethodTypeCubic }
 Subdivision interpolation methods. More...
 
enum  SubdivisionMethodType { SubdivisionMethodTypeSubdivideIntoFour, SubdivisionMethodTypeSubdividebyEdgeLength }
 Subdivision methods. More...
 

Public Member Functions

double AngleThreshold ()
 Returns the angular tolerance to detect sharp edges to be kept. More...
 
NXOpen::SelectDisplayableObjectListBodies ()
 Returns the facet bodies to be subdivided. More...
 
double EdgeLength ()
 Returns the value indicating length of the edge of the polygons to be subdivided. More...
 
NXOpen::Facet::SelectFacetedBodyListFacetBodies ()
 Returns the facet bodies to be subdivided
More...
 
NXOpen::FacetCollectorFacetCollector ()
 Returns a collector of facets on the facet bodies to be subdivided. More...
 
NXOpen::Facet::SubdivideFacetBodyBuilder::InterpolationMethodType InterpolationMethod ()
 Returns the interpolation method
Created in NX7.5.0. More...
 
bool IsEditCopy ()
 Returns the value indicating if a copy of the facet body to be subdivided without altering the original. More...
 
bool IsOptimize ()
 Returns the value indicating whether to perform a decimation step after the subdivision. More...
 
NXOpen::GeometricUtilities::BoundaryDefinitionBuilderListRegionList ()
 Returns an optional list of regions on the facet bodies to be subdivided. More...
 
void SetAngleThreshold (double angleThreshold)
 Sets the angular tolerance to detect sharp edges to be kept. More...
 
void SetEdgeLength (double edgeLength)
 Sets the value indicating length of the edge of the polygons to be subdivided. More...
 
void SetEditCopy (bool isEditCopy)
 Sets the value indicating if a copy of the facet body to be subdivided without altering the original. More...
 
void SetFacetCollector (NXOpen::FacetCollector *collector)
 Sets a collector of facets on the facet bodies to be subdivided. More...
 
void SetInterpolationMethod (NXOpen::Facet::SubdivideFacetBodyBuilder::InterpolationMethodType interpolationMethod)
 Sets the interpolation method
Created in NX7.5.0. More...
 
void SetOptimize (bool isOptimize)
 Sets the value indicating whether to perform a decimation step after the subdivision. More...
 
void SetSubdivisionMethod (NXOpen::Facet::SubdivideFacetBodyBuilder::SubdivisionMethodType subdivisionMethod)
 Sets the subdivision method
Created in NX7.5.0. More...
 
NXOpen::Facet::SubdivideFacetBodyBuilder::SubdivisionMethodType SubdivisionMethod ()
 Returns the subdivision method
Created in NX7.5.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

This class provides functionality to subdivide the polygons to increase the density of the facet bodies.

Subdividing Polygons creates a smoother representation.
To create a new instance of this class, use NXOpen::Facet::FacetedBodyCollection::CreateSubdivideFacetBodyBuilder
Default values.

Property Value

AngleThreshold

30

EdgeLength

1

InterpolationMethod

Cubic

IsEditCopy

0

IsOptimize

0

SubdivisionMethod

SubdivideIntoFour


Created in NX7.5.0.

Member Enumeration Documentation

Subdivision interpolation methods.

Enumerator
InterpolationMethodTypeLinear 

In the linear option the sub-triangles are coplanar to the original triangle.

Shape resolution remains untouched.

InterpolationMethodTypeCubic 

In the cubic option the sub-triangles are fitted cubic to the surrounding triangles.

Shape resolution increases.

Subdivision methods.

Enumerator
SubdivisionMethodTypeSubdivideIntoFour 

Subdivides the polygons into four sub triangles.

The original mesh structure remains.

SubdivisionMethodTypeSubdividebyEdgeLength 

Subdivides the polygons to a specified edge length.

The original mesh structure disappears.

Member Function Documentation

double NXOpen::Facet::SubdivideFacetBodyBuilder::AngleThreshold ( )

Returns the angular tolerance to detect sharp edges to be kept.

Cubic interpolation can not interpolate over an edge of two triangles whose normals differ more than the specified value. Same applies to re-meshing.
Created in NX7.5.0.

License requirements : None

NXOpen::SelectDisplayableObjectList* NXOpen::Facet::SubdivideFacetBodyBuilder::Bodies ( )

Returns the facet bodies to be subdivided.

Inputs to this command can be convergent objects.

Deprecated:
Deprecated in NX12.0.0. Use NXOpen::Facet::SubdivideFacetBodyBuilder::FacetCollector instead.


Created in NX11.0.0.

License requirements : None

double NXOpen::Facet::SubdivideFacetBodyBuilder::EdgeLength ( )

Returns the value indicating length of the edge of the polygons to be subdivided.


Created in NX7.5.0.

License requirements : None

NXOpen::Facet::SelectFacetedBodyList* NXOpen::Facet::SubdivideFacetBodyBuilder::FacetBodies ( )

Returns the facet bodies to be subdivided

Deprecated:
Deprecated in NX11.0.0.

Use NXOpen::Facet::SubdivideFacetBodyBuilder::Bodies instead.


Created in NX7.5.0.

License requirements : None

NXOpen::FacetCollector* NXOpen::Facet::SubdivideFacetBodyBuilder::FacetCollector ( )

Returns a collector of facets on the facet bodies to be subdivided.


Created in NX12.0.0.

License requirements : None

NXOpen::Facet::SubdivideFacetBodyBuilder::InterpolationMethodType NXOpen::Facet::SubdivideFacetBodyBuilder::InterpolationMethod ( )

Returns the interpolation method
Created in NX7.5.0.



License requirements : None

bool NXOpen::Facet::SubdivideFacetBodyBuilder::IsEditCopy ( )

Returns the value indicating if a copy of the facet body to be subdivided without altering the original.


Created in NX7.5.0.

License requirements : None

bool NXOpen::Facet::SubdivideFacetBodyBuilder::IsOptimize ( )

Returns the value indicating whether to perform a decimation step after the subdivision.


Created in NX7.5.0.

License requirements : None

NXOpen::GeometricUtilities::BoundaryDefinitionBuilderList* NXOpen::Facet::SubdivideFacetBodyBuilder::RegionList ( )

Returns an optional list of regions on the facet bodies to be subdivided.


Deprecated:
Deprecated in NX12.0.0. Use NXOpen::Facet::SubdivideFacetBodyBuilder::FacetCollector instead.


Created in NX7.5.0.

License requirements : None

void NXOpen::Facet::SubdivideFacetBodyBuilder::SetAngleThreshold ( double  angleThreshold)

Sets the angular tolerance to detect sharp edges to be kept.

Cubic interpolation can not interpolate over an edge of two triangles whose normals differ more than the specified value. Same applies to re-meshing.
Created in NX7.5.0.

License requirements : studio_free_form ("STUDIO FREE FORM")

Parameters
angleThresholdanglethreshold
void NXOpen::Facet::SubdivideFacetBodyBuilder::SetEdgeLength ( double  edgeLength)

Sets the value indicating length of the edge of the polygons to be subdivided.


Created in NX7.5.0.

License requirements : studio_free_form ("STUDIO FREE FORM")

Parameters
edgeLengthedgelength
void NXOpen::Facet::SubdivideFacetBodyBuilder::SetEditCopy ( bool  isEditCopy)

Sets the value indicating if a copy of the facet body to be subdivided without altering the original.


Created in NX7.5.0.

License requirements : studio_free_form ("STUDIO FREE FORM")

Parameters
isEditCopyiseditcopy
void NXOpen::Facet::SubdivideFacetBodyBuilder::SetFacetCollector ( NXOpen::FacetCollector collector)

Sets a collector of facets on the facet bodies to be subdivided.


Created in NX12.0.0.

License requirements : studio_free_form ("STUDIO FREE FORM")

Parameters
collectorcollector
void NXOpen::Facet::SubdivideFacetBodyBuilder::SetInterpolationMethod ( NXOpen::Facet::SubdivideFacetBodyBuilder::InterpolationMethodType  interpolationMethod)

Sets the interpolation method
Created in NX7.5.0.



License requirements : studio_free_form ("STUDIO FREE FORM")

Parameters
interpolationMethodinterpolationmethod
void NXOpen::Facet::SubdivideFacetBodyBuilder::SetOptimize ( bool  isOptimize)

Sets the value indicating whether to perform a decimation step after the subdivision.


Created in NX7.5.0.

License requirements : studio_free_form ("STUDIO FREE FORM")

Parameters
isOptimizeisoptimize
void NXOpen::Facet::SubdivideFacetBodyBuilder::SetSubdivisionMethod ( NXOpen::Facet::SubdivideFacetBodyBuilder::SubdivisionMethodType  subdivisionMethod)

Sets the subdivision method
Created in NX7.5.0.



License requirements : studio_free_form ("STUDIO FREE FORM")

Parameters
subdivisionMethodsubdivisionmethod
NXOpen::Facet::SubdivideFacetBodyBuilder::SubdivisionMethodType NXOpen::Facet::SubdivideFacetBodyBuilder::SubdivisionMethod ( )

Returns the subdivision method
Created in NX7.5.0.



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.