Hoops Visualize HPS  version 2018-SP2
Hoops Visualize HPS 3D Rendering Engine
Looking for a senior C++ dev?
I'm looking for work. Hire me!
HPS::Parasolid::FacetTessellationKit Class Reference

The FacetTessellationKit class is a user space object. More...

#include <sprk_parasolid.h>

Inheritance diagram for HPS::Parasolid::FacetTessellationKit:
Collaboration diagram for HPS::Parasolid::FacetTessellationKit:

Public Member Functions

 FacetTessellationKit ()
 The default constructor creates an empty FacetTessellationKit object. More...
 
 FacetTessellationKit (FacetTessellationKit const &in_kit)
 The copy constructor creates a new FacetTessellationKit object that contains the same settings as the source FacetTessellationKit. More...
 
 FacetTessellationKit (FacetTessellationKit &&in_that)
 The move constructor creates an FacetTessellationKit by transferring the underlying impl of the rvalue reference to this FacetTessellationKit thereby avoiding a copy and allocation. More...
 
FacetTessellationKitoperator= (FacetTessellationKit &&in_that)
 The move assignment operator transfers the underlying impl of the rvalue reference to this FacetTessellationKit thereby avoiding a copy. More...
 
virtual ~FacetTessellationKit ()
 
HPS::Type ObjectType () const
 
void Set (FacetTessellationKit const &in_kit)
 Copies the source FacetTessellationKit into this FacetTessellationKit. More...
 
void Show (FacetTessellationKit &out_kit) const
 Copies this FacetTessellationKit into the given FacetTessellationKit. More...
 
FacetTessellationKitoperator= (FacetTessellationKit const &in_kit)
 Copies the source FacetTessellationKit into this FacetTessellationKit. More...
 
bool Empty () const
 Indicates whether this FacetTessellationKit has any values set on it. More...
 
bool Equals (FacetTessellationKit const &in_kit) const
 Check if the source FacetTessellationKit is equivalent to this FacetTessellationKit. More...
 
bool operator== (FacetTessellationKit const &in_kit) const
 Check if the source FacetTessellationKit is equivalent to this FacetTessellationKit. More...
 
bool operator!= (FacetTessellationKit const &in_kit) const
 Check if the source FacetTessellationKit is not equivalent to this FacetTessellationKit. More...
 
FacetTessellationKitSetTessellationLevel (HPS::Parasolid::TessellationLevel in_tessellation_level, double in_chord=-1, double in_angle=-1, bool in_generate_line_tessellation=true)
 Sets facet tessellation level. More...
 
FacetTessellationKitSetShapeGeneration (Facet::Shape in_shape)
 Sets constraints on the facet generation. More...
 
FacetTessellationKitSetVertexMatching (Facet::Match in_vertex_matching)
 Sets the vertex matching strategy at edges This corresponds to the value that will be passed to PK_TOPOL_facet_mesh_o_t.match. More...
 
FacetTessellationKitSetDensity (Facet::Density in_density, double in_density_tolerance=0, double in_density_max_angle=0, DVectorArray const &in_view_directions=DVectorArray())
 Sets the density settings. More...
 
FacetTessellationKitSetIgnoredLoops (IntArray &in_ignored_loops)
 Sets which loops should be ignored while faceting. More...
 
FacetTessellationKitSetFacetSize (double in_minimum_width, double in_maximum_width, int in_maximum_sides)
 Sets face size constraints. More...
 
FacetTessellationKitSetChordTolerance (double in_chord_tolerance, double in_maximum_chord_length, double in_maximum_chord_angle)
 Sets chord tolerance. More...
 
FacetTessellationKitSetSurfacePlaneTolerance (double in_plane_tolerance, double in_max_plane_angle)
 Sets tolerance between surfaces and corresponding facets. More...
 
FacetTessellationKitSetFacetPlaneTolerance (double in_plane_tolerance, double in_max_plane_angle)
 Sets tolerance between facet and mid-plane. More...
 
FacetTessellationKitSetDegeneracyBehavior (Facet::Degeneracy in_degeneracy_behavior)
 Sets the behavior the import assumes during tessellation when encountering a degeneracy. More...
 
FacetTessellationKitSetLocalTolerances (ToleranceArray const &in_tolerance_array, IntArray const &in_topology_array, IntArray const &in_tolerance_for_tolopoly)
 Sets specific tolerances for a set of topologies. More...
 
FacetTessellationKitSetIgnoreCriteria (bool in_ignore, Ignore in_ignore_criteria=Ignore::Absolute, double in_minimum_value=0, bool in_treat_faces_individually=false)
 Sets criteria for ignoring facets. More...
 
FacetTessellationKitSetWireEdges (bool in_wire_edges)
 Sets whether wire edges should be taken into account while faceting. More...
 
FacetTessellationKitSetIncrementalFaceting (Facet::IncrementalFaceting in_faceting, bool refine_tessellation=false)
 Sets whether incremental faceting should be used. More...
 
FacetTessellationKitSetInflection (bool in_refine)
 Sets whether facets around points of inflections may be further refined. More...
 
FacetTessellationKitSetImprovedFacetQuality (bool in_improved_quality)
 Sets whether extra checks should be performed to improve the quality of facets. More...
 
FacetTessellationKitSetFlattenVertices (bool in_flatten_vertices)
 Sets whether vertices should be forced against tolerance edges. More...
 
FacetTessellationKitSetOffsetFaces (bool in_offset_faces)
 Sets whether to take into account faces which are offsets of one another. More...
 
FacetTessellationKitSetNormals (bool in_normals)
 Sets whether to output surface normals. More...
 
FacetTessellationKitSetParameters (bool in_parameters)
 Sets whether to output surface parameters. More...
 
FacetTessellationKitSetEdges (bool in_edges)
 Sets whether to output edges. More...
 
FacetTessellationKitSetStrips (bool in_strips, int in_max_facets_per_strip, bool in_split_strips)
 Sets output settings for strips. More...
 
FacetTessellationKitUnsetTessellationLevel ()
 Removes the tessellation level state. More...
 
FacetTessellationKitUnsetShapeGeneration ()
 Removes the shape generation tessellation state. More...
 
FacetTessellationKitUnsetVertexMatching ()
 Removes the vertex matching tessellation state. More...
 
FacetTessellationKitUnsetDensity ()
 Removes the density tessellation state. More...
 
FacetTessellationKitUnsetIgnoredLoops ()
 Removes the ignored loops tessellation state. More...
 
FacetTessellationKitUnsetFacetSize ()
 Removes the facet size tessellation state. More...
 
FacetTessellationKitUnsetChordTolerance ()
 Removes the chord tolerance tessellation state. More...
 
FacetTessellationKitUnsetSurfacePlaneTolerance ()
 Removes the plane tolerance tessellation state. More...
 
FacetTessellationKitUnsetFacetPlaneTolerance ()
 Removes the facet plane tolerance tessellation state. More...
 
FacetTessellationKitUnsetDegeneracyBehavior ()
 Removes the degeneracy tessellation state. More...
 
FacetTessellationKitUnsetLocalTolerances ()
 Removes the local tolerances tessellation state. More...
 
FacetTessellationKitUnsetIgnoreCriteria ()
 Removes the ignore criteria tessellation state. More...
 
FacetTessellationKitUnsetWireEdges ()
 Removes the wire edges tessellation state. More...
 
FacetTessellationKitUnsetIncrementalFaceting ()
 Removes the incremental faceting tessellation state. More...
 
FacetTessellationKitUnsetInflection ()
 Removes the inflection tessellation state. More...
 
FacetTessellationKitUnsetImprovedFacetQuality ()
 Removes the facet quality tessellation state. More...
 
FacetTessellationKitUnsetFlattenVertices ()
 Removes the vertex flattening tessellation state. More...
 
FacetTessellationKitUnsetOffsetFaces ()
 Removes the offset faces tessellation state. More...
 
FacetTessellationKitUnsetNormals ()
 Removes the normals tessellation state. More...
 
FacetTessellationKitUnsetParameters ()
 Removes the parameters tessellation state. More...
 
FacetTessellationKitUnsetEdges ()
 Removes the edges tessellation state. More...
 
FacetTessellationKitUnsetStrips ()
 Removes the strip tessellation state. More...
 
FacetTessellationKitUnsetEverything ()
 Removes all settings from this FacetTessellationKit. More...
 
bool ShowTessellationLevel (TessellationLevel &out_tessellation_level, double &out_chord, double &out_angle, bool &out_generate_line_tessellation) const
 Shows the shape generation tessellation setting. More...
 
bool ShowShapeGeneration (Facet::Shape &out_shape) const
 Shows the shape generation tessellation setting. More...
 
bool ShowVertexMatching (Facet::Match &out_vertex_matching) const
 Shows the vertex matching tessellation setting. More...
 
bool ShowDensity (Facet::Density &out_density, double &out_density_tolerance, double &out_density_max_angle, DVectorArray &out_view_directions) const
 Shows the density tessellation setting. More...
 
bool ShowIgnoredLoops (IntArray &out_ignored_loops) const
 Shows the ignored loops tessellation setting. More...
 
bool ShowFacetSize (double &out_minimum_width, double &out_maximum_width, int &out_maximum_sides) const
 Shows the facet size tessellation setting. More...
 
bool ShowChordTolerance (double &out_chord_tolerance, double &out_maximum_chord_length, double &out_maximum_chord_angle) const
 Shows the chord tolerance tessellation setting. More...
 
bool ShowSurfacePlaneTolerance (double &out_plane_tolerance, double &out_max_plane_angle) const
 Shows the surface plane tolerance tessellation setting. More...
 
bool ShowFacetPlaneTolerance (double &out_plane_tolerance, double &out_max_plane_angle) const
 Shows the facet plane tolerance tessellation setting. More...
 
bool ShowDegeneracyBehavior (Facet::Degeneracy &out_degeneracy_behavior) const
 Shows the degeneracy tessellation setting. More...
 
bool ShowLocalTolerances (ToleranceArray &out_tolerance_array, IntArray &out_topology_array, IntArray &out_tolerance_for_tolopoly) const
 Shows the local tolerance tessellation setting. More...
 
bool ShowIgnoreCriteria (bool &out_ignore, Ignore &out_ignore_criteria, double &out_minimum_value, bool &out_treat_faces_individually) const
 Shows the ignore criteria tessellation setting. More...
 
bool ShowWireEdges (bool &out_wire_edges) const
 Shows the wire edges tessellation setting. More...
 
bool ShowIncrementalFaceting (Facet::IncrementalFaceting &out_faceting, bool &out_refine_tessellation) const
 Shows the incremental faceting tessellation setting. More...
 
bool ShowInflection (bool &out_refine) const
 Shows the inflection tessellation setting. More...
 
bool ShowImprovedFacetQuality (bool &out_improved_quality) const
 Shows the improved facet quality tessellation setting. More...
 
bool ShowFlattenVertices (bool &out_flatten_vertices) const
 Shows the flatten faces tessellation setting. More...
 
bool ShowOffsetFaces (bool &out_offset_faces) const
 Shows the offset faces tessellation setting. More...
 
bool ShowNormals (bool &out_normals) const
 Shows the normals tessellation setting. More...
 
bool ShowParameters (bool &out_parameters) const
 Shows the parameters tessellation setting. More...
 
bool ShowEdges (bool &out_edges) const
 Shows the edges tessellation setting. More...
 
bool ShowStrips (bool &out_strips, int &out_max_facets_per_strip, bool &out_split_strips) const
 Shows the strips tessellation setting. More...
 
virtual HPS::Type Type () const
 This function returns the true type of the underlying object. More...
 
virtual void Reset ()
 Resets this object to its initial, uninitialized state. More...
 
bool HasType (HPS::Type in_mask) const
 This function indicates whether this Object has the given Type mask. More...
 
intptr_t GetClassID () const
 Returns a unique identifier that is shared by all objects of the same class. More...
 
intptr_t GetInstanceID () const
 Returns an identifier that can be used to identify which instance of a class an object is. More...
 

Static Public Member Functions

static FacetTessellationKit GetDefault ()
 Creates an FacetTessellationKit which contains the default settings. More...
 
template<typename T >
static intptr_t ClassID ()
 Unique identifier for this class. More...
 

Static Public Attributes

static const HPS::Type staticType = HPS::Type::ParasolidFacetTessellationKit
 

Detailed Description

The FacetTessellationKit class is a user space object.

It contains settings controlling facet tessellation for Parasolid. It corresponds to the PK_TOPOL_render_facet_o_t struct.

Constructor & Destructor Documentation

◆ FacetTessellationKit() [1/3]

HPS::Parasolid::FacetTessellationKit::FacetTessellationKit ( )

The default constructor creates an empty FacetTessellationKit object.

◆ FacetTessellationKit() [2/3]

HPS::Parasolid::FacetTessellationKit::FacetTessellationKit ( FacetTessellationKit const &  in_kit)

The copy constructor creates a new FacetTessellationKit object that contains the same settings as the source FacetTessellationKit.

Parameters
in_kitThe source FacetTessellationKit to copy.

◆ FacetTessellationKit() [3/3]

HPS::Parasolid::FacetTessellationKit::FacetTessellationKit ( FacetTessellationKit &&  in_that)

The move constructor creates an FacetTessellationKit by transferring the underlying impl of the rvalue reference to this FacetTessellationKit thereby avoiding a copy and allocation.

Parameters
in_thatAn rvalue reference to an FacetTessellationKit to take the impl from.

◆ ~FacetTessellationKit()

virtual HPS::Parasolid::FacetTessellationKit::~FacetTessellationKit ( )
virtual

Member Function Documentation

◆ ClassID()

template<typename T >
static intptr_t HPS::Object::ClassID ( )
inlinestaticinherited

Unique identifier for this class.

Note: this method uses construction of static objects. If used in a constructor, it should be used in the body not the initializer list.

◆ Empty()

bool HPS::Parasolid::FacetTessellationKit::Empty ( ) const
virtual

Indicates whether this FacetTessellationKit has any values set on it.

Returns
true if no values are set on this FacetTessellationKit, false otherwise.

Reimplemented from HPS::Object.

◆ Equals()

bool HPS::Parasolid::FacetTessellationKit::Equals ( FacetTessellationKit const &  in_kit) const

Check if the source FacetTessellationKit is equivalent to this FacetTessellationKit.

Parameters
in_kitThe source FacetTessellationKit to compare to this FacetTessellationKit.
Returns
true if the objects are equivalent, false otherwise.

◆ GetClassID()

intptr_t HPS::Object::GetClassID ( ) const
inherited

Returns a unique identifier that is shared by all objects of the same class.

Returns
A unique value shared by all objects of the same class.

◆ GetDefault()

static FacetTessellationKit HPS::Parasolid::FacetTessellationKit::GetDefault ( )
static

Creates an FacetTessellationKit which contains the default settings.

The returned object will not necessarily have values set for every option, but it will have settings for those options where it is reasonable to have a default. These values will be used for facet tessellation unless an option is overridden by the options passed to File::Import.

Returns
An FacetTessellationKit with the default settings.

◆ GetInstanceID()

intptr_t HPS::Object::GetInstanceID ( ) const
inherited

Returns an identifier that can be used to identify which instance of a class an object is.

Different keys and controls will return the same value if they are backed by the same database resource.

Returns
A value unique to an instance of an object and all objects that are backed by the same database resource.

◆ HasType()

bool HPS::Object::HasType ( HPS::Type  in_mask) const
inherited

This function indicates whether this Object has the given Type mask.

Parameters
in_maskThe Type mask to check against this Object.
Returns
true if this Object has the given Type mask, false otherwise.

◆ ObjectType()

HPS::Type HPS::Parasolid::FacetTessellationKit::ObjectType ( ) const
inlinevirtual

Reimplemented from HPS::SprocketKit.

Here is the call graph for this function:

◆ operator!=()

bool HPS::Parasolid::FacetTessellationKit::operator!= ( FacetTessellationKit const &  in_kit) const

Check if the source FacetTessellationKit is not equivalent to this FacetTessellationKit.

Parameters
in_kitThe source FacetTessellationKit to compare to this FacetTessellationKit.
Returns
true if the objects are not equivalent, false otherwise.

◆ operator=() [1/2]

FacetTessellationKit& HPS::Parasolid::FacetTessellationKit::operator= ( FacetTessellationKit &&  in_that)

The move assignment operator transfers the underlying impl of the rvalue reference to this FacetTessellationKit thereby avoiding a copy.

Parameters
in_thatAn rvalue reference to an FacetTessellationKit to take the impl from.
Returns
A reference to this FacetTessellationKit.

◆ operator=() [2/2]

FacetTessellationKit& HPS::Parasolid::FacetTessellationKit::operator= ( FacetTessellationKit const &  in_kit)

Copies the source FacetTessellationKit into this FacetTessellationKit.

Parameters
in_kitThe source FacetTessellationKit to copy.
Returns
A reference to this FacetTessellationKit.

◆ operator==()

bool HPS::Parasolid::FacetTessellationKit::operator== ( FacetTessellationKit const &  in_kit) const

Check if the source FacetTessellationKit is equivalent to this FacetTessellationKit.

Parameters
in_kitThe source FacetTessellationKit to compare to this FacetTessellationKit.
Returns
true if the objects are equivalent, false otherwise.

◆ Reset()

◆ Set()

void HPS::Parasolid::FacetTessellationKit::Set ( FacetTessellationKit const &  in_kit)

Copies the source FacetTessellationKit into this FacetTessellationKit.

Parameters
in_kitThe source FacetTessellationKit to copy.

◆ SetChordTolerance()

FacetTessellationKit& HPS::Parasolid::FacetTessellationKit::SetChordTolerance ( double  in_chord_tolerance,
double  in_maximum_chord_length,
double  in_maximum_chord_angle 
)

Sets chord tolerance.

Parameters
in_chord_tolerancecurve chordal tolerance between a curve and its facet edges. Corresponds to the value that will be passed to PK_TOPOL_facet_mesh_o_t.curve_chord_tol.
in_maximum_chord_lengthmaximum chord length. Corresponds to the value that will be passed to PK_TOPOL_facet_mesh_o_t.curve_chord_max.
in_maximum_chord_anglemaximum chord angle, in radians. Corresponds to the value that will be passed to PK_TOPOL_facet_mesh_o_t.curve_chord_ang.
Returns
A reference to this FacetTessellationKit.

◆ SetDegeneracyBehavior()

FacetTessellationKit& HPS::Parasolid::FacetTessellationKit::SetDegeneracyBehavior ( Facet::Degeneracy  in_degeneracy_behavior)

Sets the behavior the import assumes during tessellation when encountering a degeneracy.

Parameters
in_degeneracy_behaviordescribes how vertices are handled at degeneracies. Corresponds to the value that will be passed to PK_TOPOL_facet_mesh_o_t.degen.
Returns
A reference to this FacetTessellationKit.

◆ SetDensity()

FacetTessellationKit& HPS::Parasolid::FacetTessellationKit::SetDensity ( Facet::Density  in_density,
double  in_density_tolerance = 0,
double  in_density_max_angle = 0,
DVectorArray const &  in_view_directions = DVectorArray() 
)

Sets the density settings.

Parameters
in_densityThe density settings. This corresponds to the value that will be passed to PK_TOPOL_facet_mesh_o_t.density.
in_density_toleranceThe density tolerance. Must be specified is in_density is not ViewIndependent. This corresponds to the value that will be passed to PK_TOPOL_facet_mesh_o_t.local_density_tol.
in_density_max_angleThe density tolerance maximum angle. This corresponds to the value that will be passed to PK_TOPOL_facet_mesh_o_t.local_density_ang.
in_view_directionsAn array of view directions. Must be specified is in_density is not ViewIndependent. This corresponds to the value that will be passed to PK_TOPOL_facet_mesh_o_t.view_directions.
Returns
A reference to this FacetTessellationKit.

◆ SetEdges()

FacetTessellationKit& HPS::Parasolid::FacetTessellationKit::SetEdges ( bool  in_edges)

Sets whether to output edges.

Parameters
in_edgeswhether to output edges. Corresponds to the value that will be passed to PK_TOPOL_render_facet_go_o_t.go_edges.
Returns
A reference to this FacetTessellationKit.

◆ SetFacetPlaneTolerance()

FacetTessellationKit& HPS::Parasolid::FacetTessellationKit::SetFacetPlaneTolerance ( double  in_plane_tolerance,
double  in_max_plane_angle 
)

Sets tolerance between facet and mid-plane.

Parameters
in_plane_tolerancedistance tolerance between facet and mid-plane. Corresponds to the value that will be passed to PK_TOPOL_facet_mesh_o_t.facet_plane_tol.
in_max_plane_angleangular tolerance between facet and mid-plane, in radians. Corresponds to the value that will be passed to PK_TOPOL_facet_mesh_o_t.facet_plane_ang.
Returns
A reference to this FacetTessellationKit.

◆ SetFacetSize()

FacetTessellationKit& HPS::Parasolid::FacetTessellationKit::SetFacetSize ( double  in_minimum_width,
double  in_maximum_width,
int  in_maximum_sides 
)

Sets face size constraints.

Parameters
in_minimum_widthminimum facet width. Corresponds to the value that will be passed to PK_TOPOL_facet_mesh_o_t.min_facet_width.
in_maximum_widthminimum facet width. Corresponds to the value that will be passed to PK_TOPOL_facet_mesh_o_t.max_facet_width.
in_maximum_sidesmaximum facet sides. Corresponds to the value that will be passed to PK_TOPOL_facet_mesh_o_t.max_facet_sides.
Returns
A reference to this FacetTessellationKit.

◆ SetFlattenVertices()

FacetTessellationKit& HPS::Parasolid::FacetTessellationKit::SetFlattenVertices ( bool  in_flatten_vertices)

Sets whether vertices should be forced against tolerance edges.

Parameters
in_flatten_verticeswhether vertices should be forced against tolerance edges. Corresponds to the value that will be passed to PK_TOPOL_facet_mesh_o_t.vertices_on_planar.
Returns
A reference to this FacetTessellationKit.

◆ SetIgnoreCriteria()

FacetTessellationKit& HPS::Parasolid::FacetTessellationKit::SetIgnoreCriteria ( bool  in_ignore,
Ignore  in_ignore_criteria = Ignore::Absolute,
double  in_minimum_value = 0,
bool  in_treat_faces_individually = false 
)

Sets criteria for ignoring facets.

Parameters
in_ignorewhether any facet should be ignored.
in_ignore_criteriaspecifies how to interpret the minimum_value parameter. Corresponds to the value that will be passed to PK_TOPOL_facet_mesh_o_t.ignore.
in_minimum_valueminimum value for a facet not to be ignored. Corresponds to the value that will be passed to PK_TOPOL_facet_mesh_o_t.ignore_value.
in_treat_faces_individuallywhether facets should be considered individually or as part of the face's owning body for ignore calculations. Corresponds to the value that will be passed to PK_TOPOL_facet_mesh_o_t.ignore_scope.
Returns
A reference to this FacetTessellationKit.

◆ SetIgnoredLoops()

FacetTessellationKit& HPS::Parasolid::FacetTessellationKit::SetIgnoredLoops ( IntArray in_ignored_loops)

Sets which loops should be ignored while faceting.

This corresponds to the value that will be passed to PK_TOPOL_facet_mesh_o_t.loops.

Parameters
in_ignored_loopsloops ignored during faceting. Each entry in the vector correspond to a PK_LOOP_t object
Returns
A reference to this FacetTessellationKit.

◆ SetImprovedFacetQuality()

FacetTessellationKit& HPS::Parasolid::FacetTessellationKit::SetImprovedFacetQuality ( bool  in_improved_quality)

Sets whether extra checks should be performed to improve the quality of facets.

Parameters
in_improved_qualitywhether extra checks should be performed to improve the quality of facets. Corresponds to the value that will be passed to PK_TOPOL_facet_mesh_o_t.quality.
Returns
A reference to this FacetTessellationKit.

◆ SetIncrementalFaceting()

FacetTessellationKit& HPS::Parasolid::FacetTessellationKit::SetIncrementalFaceting ( Facet::IncrementalFaceting  in_faceting,
bool  refine_tessellation = false 
)

Sets whether incremental faceting should be used.

Parameters
in_facetingsets the incremental faceting behavior. Corresponds to the value that will be passed to PK_TOPOL_facet_mesh_o_t.incremental_facetting.
refine_tessellationwhether to refine facets. Corresponds to the value that will be passed to PK_TOPOL_facet_mesh_o_t.incremental_refinement.
Returns
A reference to this FacetTessellationKit.

◆ SetInflection()

FacetTessellationKit& HPS::Parasolid::FacetTessellationKit::SetInflection ( bool  in_refine)

Sets whether facets around points of inflections may be further refined.

Parameters
in_refinewhether facets around points of inflections may be further refined. Corresponds to the value that will be passed to PK_TOPOL_facet_mesh_o_t.inflect.
Returns
A reference to this FacetTessellationKit.

◆ SetLocalTolerances()

FacetTessellationKit& HPS::Parasolid::FacetTessellationKit::SetLocalTolerances ( ToleranceArray const &  in_tolerance_array,
IntArray const &  in_topology_array,
IntArray const &  in_tolerance_for_tolopoly 
)

Sets specific tolerances for a set of topologies.

Parameters
in_tolerance_arrayarray of tolerance specifications. Corresponds to the value that will be passed to PK_TOPOL_facet_mesh_o_t.local_tols.
in_topology_arrayarray of topologies for which a specific tolerance will be applied. Each entry in the vector correspond to a PK_TOPOL_t object. Corresponds to the value that will be passed to PK_TOPOL_facet_mesh_o_t.topols_with_local_tols.
in_tolerance_for_tolopolyindexes connecting each element of the topology array to a tolerance. Corresponds to the value that will be passed to PK_TOPOL_facet_mesh_o_t.local_tols_for_topols.
Returns
A reference to this FacetTessellationKit.

◆ SetNormals()

FacetTessellationKit& HPS::Parasolid::FacetTessellationKit::SetNormals ( bool  in_normals)

Sets whether to output surface normals.

Parameters
in_normalswhether to output surface normals. Corresponds to the value that will be passed to PK_TOPOL_render_facet_go_o_t.go_normals.
Returns
A reference to this FacetTessellationKit.

◆ SetOffsetFaces()

FacetTessellationKit& HPS::Parasolid::FacetTessellationKit::SetOffsetFaces ( bool  in_offset_faces)

Sets whether to take into account faces which are offsets of one another.

Parameters
in_offset_faceswhether to take into account faces which are offsets of one another. Corresponds to the value that will be passed to PK_TOPOL_facet_mesh_o_t.respect_offset.
Returns
A reference to this FacetTessellationKit.

◆ SetParameters()

FacetTessellationKit& HPS::Parasolid::FacetTessellationKit::SetParameters ( bool  in_parameters)

Sets whether to output surface parameters.

Parameters
in_parameterswhether to output surface parameters. Corresponds to the value that will be passed to PK_TOPOL_render_facet_go_o_t.go_parameters.
Returns
A reference to this FacetTessellationKit.

◆ SetShapeGeneration()

FacetTessellationKit& HPS::Parasolid::FacetTessellationKit::SetShapeGeneration ( Facet::Shape  in_shape)

Sets constraints on the facet generation.

This corresponds to the value that will be passed to PK_TOPOL_facet_mesh_o_t.shape.

Parameters
in_shapeThe behavior used during tessellation for handling concave, convex and holed entities.
Returns
A reference to this FacetTessellationKit.

◆ SetStrips()

FacetTessellationKit& HPS::Parasolid::FacetTessellationKit::SetStrips ( bool  in_strips,
int  in_max_facets_per_strip,
bool  in_split_strips 
)

Sets output settings for strips.

Parameters
in_stripswhether to output facets in strips. Corresponds to the value that will be passed to PK_TOPOL_render_facet_go_o_t.go_strips.
in_max_facets_per_stripmaximum number of facets per strips. Corresponds to the value that will be passed to PK_TOPOL_render_facet_go_o_t.go_max_facets_per_strip.
in_split_stripswhether to split facet strips. Corresponds to the value that will be passed to PK_TOPOL_render_facet_go_o_t.split_strips.
Returns
A reference to this FacetTessellationKit.

◆ SetSurfacePlaneTolerance()

FacetTessellationKit& HPS::Parasolid::FacetTessellationKit::SetSurfacePlaneTolerance ( double  in_plane_tolerance,
double  in_max_plane_angle 
)

Sets tolerance between surfaces and corresponding facets.

Parameters
in_plane_tolerancedistance tolerance between surface and its facet. Corresponds to the value that will be passed to PK_TOPOL_facet_mesh_o_t.surface_plane_tol.
in_max_plane_angleangular tolerance between surface and its facet, in radians. Corresponds to the value that will be passed to PK_TOPOL_facet_mesh_o_t.surface_plane_ang.
Returns
A reference to this FacetTessellationKit.

◆ SetTessellationLevel()

FacetTessellationKit& HPS::Parasolid::FacetTessellationKit::SetTessellationLevel ( HPS::Parasolid::TessellationLevel  in_tessellation_level,
double  in_chord = -1,
double  in_angle = -1,
bool  in_generate_line_tessellation = true 
)

Sets facet tessellation level.

This function can optionally compute the best values for line tessellation based on the values passed in. Doing so is enabled by default and will result in lines which smoothly match their respective faces.

Parameters
in_tessellation_levelThe tessellation level used for importing facets.
in_chordThe chord tolerance. Only considered if in_tessellation_level is set to Custom.
in_angleThe angle tolerance. Only considered if in_tessellation_level is set to Custom.
in_generate_line_tessellationAutomatically figure out the best parameters for line tessellation based on facet tessellation levels. True by default.
Returns
A reference to this FacetTessellationKit.

◆ SetVertexMatching()

FacetTessellationKit& HPS::Parasolid::FacetTessellationKit::SetVertexMatching ( Facet::Match  in_vertex_matching)

Sets the vertex matching strategy at edges This corresponds to the value that will be passed to PK_TOPOL_facet_mesh_o_t.match.

Parameters
in_vertex_matchingThe behavior used during tessellation for handling facet meshes between neighboring faces.
Returns
A reference to this FacetTessellationKit.

◆ SetWireEdges()

FacetTessellationKit& HPS::Parasolid::FacetTessellationKit::SetWireEdges ( bool  in_wire_edges)

Sets whether wire edges should be taken into account while faceting.

Parameters
in_wire_edgeswhetherwire edges should be taken into account while faceting. Corresponds to the value that will be passed to PK_TOPOL_facet_mesh_o_t.wire_edges.
Returns
A reference to this FacetTessellationKit.

◆ Show()

void HPS::Parasolid::FacetTessellationKit::Show ( FacetTessellationKit out_kit) const

Copies this FacetTessellationKit into the given FacetTessellationKit.

Parameters
out_kitThe FacetTessellationKit to populate with the contents of this FacetTessellationKit.

◆ ShowChordTolerance()

bool HPS::Parasolid::FacetTessellationKit::ShowChordTolerance ( double &  out_chord_tolerance,
double &  out_maximum_chord_length,
double &  out_maximum_chord_angle 
) const

Shows the chord tolerance tessellation setting.

Parameters
out_chord_toleranceThe tolerance setting for this kit.
out_maximum_chord_lengthThe maximum chord length setting for this kit.
out_maximum_chord_angleThe maximum chord angle setting for this kit.
Returns
true if a chord tolerance setting was specified, false otherwise.

◆ ShowDegeneracyBehavior()

bool HPS::Parasolid::FacetTessellationKit::ShowDegeneracyBehavior ( Facet::Degeneracy out_degeneracy_behavior) const

Shows the degeneracy tessellation setting.

Parameters
out_degeneracy_behaviorThe degeneracy setting for this kit.
Returns
true if a degeneracy setting was specified, false otherwise.

◆ ShowDensity()

bool HPS::Parasolid::FacetTessellationKit::ShowDensity ( Facet::Density out_density,
double &  out_density_tolerance,
double &  out_density_max_angle,
DVectorArray out_view_directions 
) const

Shows the density tessellation setting.

Parameters
out_densityThe density setting for this kit.
out_density_toleranceThe density tolerance.
out_density_max_angleThe density tolerance maximum angle.
out_view_directionsAn array of view directions.
Returns
true if a density setting was specified, false otherwise.

◆ ShowEdges()

bool HPS::Parasolid::FacetTessellationKit::ShowEdges ( bool &  out_edges) const

Shows the edges tessellation setting.

Parameters
out_edgesThe edges setting for this kit.
Returns
true if a edges setting was specified, false otherwise.

◆ ShowFacetPlaneTolerance()

bool HPS::Parasolid::FacetTessellationKit::ShowFacetPlaneTolerance ( double &  out_plane_tolerance,
double &  out_max_plane_angle 
) const

Shows the facet plane tolerance tessellation setting.

Parameters
out_plane_toleranceThe tolerance setting for this kit.
out_max_plane_angleThe maximum angle setting for this kit.
Returns
true if a facet plane tolerance setting was specified, false otherwise.

◆ ShowFacetSize()

bool HPS::Parasolid::FacetTessellationKit::ShowFacetSize ( double &  out_minimum_width,
double &  out_maximum_width,
int &  out_maximum_sides 
) const

Shows the facet size tessellation setting.

Parameters
out_minimum_widthThe minimum facet width setting for this kit.
out_maximum_widthThe maximum facet width setting for this kit.
out_maximum_sidesThe maximum facet side setting for this kit.
Returns
true if a facet size setting was specified, false otherwise.

◆ ShowFlattenVertices()

bool HPS::Parasolid::FacetTessellationKit::ShowFlattenVertices ( bool &  out_flatten_vertices) const

Shows the flatten faces tessellation setting.

Parameters
out_flatten_verticesThe flatten faces setting for this kit.
Returns
true if a flatten faces setting was specified, false otherwise.

◆ ShowIgnoreCriteria()

bool HPS::Parasolid::FacetTessellationKit::ShowIgnoreCriteria ( bool &  out_ignore,
Ignore out_ignore_criteria,
double &  out_minimum_value,
bool &  out_treat_faces_individually 
) const

Shows the ignore criteria tessellation setting.

Parameters
out_ignoreWhether facets are ignored in this kit. If this is false the other parameters are meaningless.
out_ignore_criteriaThe ignore criteria setting for this kit. Meaningless if out_ignore is false.
out_minimum_valueThe minimum value for ignoring a facet for this kit. Meaningless if out_ignore is false.
out_treat_faces_individuallyWhether faces are considered individually when deciding if they should be ignored. Meaningless if out_ignore is false.
Returns
true if a ignore criteria were specified, false otherwise.

◆ ShowIgnoredLoops()

bool HPS::Parasolid::FacetTessellationKit::ShowIgnoredLoops ( IntArray out_ignored_loops) const

Shows the ignored loops tessellation setting.

Parameters
out_ignored_loopsThe ignored loops setting for this kit.
Returns
true if a ignored loops setting was specified, false otherwise.

◆ ShowImprovedFacetQuality()

bool HPS::Parasolid::FacetTessellationKit::ShowImprovedFacetQuality ( bool &  out_improved_quality) const

Shows the improved facet quality tessellation setting.

Parameters
out_improved_qualityThe out_improved_quality setting for this kit.
Returns
true if a improved facet quality setting was specified, false otherwise.

◆ ShowIncrementalFaceting()

bool HPS::Parasolid::FacetTessellationKit::ShowIncrementalFaceting ( Facet::IncrementalFaceting out_faceting,
bool &  out_refine_tessellation 
) const

Shows the incremental faceting tessellation setting.

Parameters
out_facetingThe incremental faceting setting for this kit.
out_refine_tessellationWhether facets are refined setting for this kit.
Returns
true if an incremental faceting setting was specified, false otherwise.

◆ ShowInflection()

bool HPS::Parasolid::FacetTessellationKit::ShowInflection ( bool &  out_refine) const

Shows the inflection tessellation setting.

Parameters
out_refineThe inflection setting for this kit.
Returns
true if a inflection setting was specified, false otherwise.

◆ ShowLocalTolerances()

bool HPS::Parasolid::FacetTessellationKit::ShowLocalTolerances ( ToleranceArray out_tolerance_array,
IntArray out_topology_array,
IntArray out_tolerance_for_tolopoly 
) const

Shows the local tolerance tessellation setting.

Parameters
out_tolerance_arrayThe local tolerance array for this kit.
out_topology_arrayThe topology array for this kit.
out_tolerance_for_tolopolyThe index array for this kit.
Returns
true if a local tolerance setting was specified, false otherwise.

◆ ShowNormals()

bool HPS::Parasolid::FacetTessellationKit::ShowNormals ( bool &  out_normals) const

Shows the normals tessellation setting.

Parameters
out_normalsThe normals setting for this kit.
Returns
true if a normals setting was specified, false otherwise.

◆ ShowOffsetFaces()

bool HPS::Parasolid::FacetTessellationKit::ShowOffsetFaces ( bool &  out_offset_faces) const

Shows the offset faces tessellation setting.

Parameters
out_offset_facesThe offset faces setting for this kit.
Returns
true if a offset faces setting was specified, false otherwise.

◆ ShowParameters()

bool HPS::Parasolid::FacetTessellationKit::ShowParameters ( bool &  out_parameters) const

Shows the parameters tessellation setting.

Parameters
out_parametersThe parameters setting for this kit.
Returns
true if a parameters setting was specified, false otherwise.

◆ ShowShapeGeneration()

bool HPS::Parasolid::FacetTessellationKit::ShowShapeGeneration ( Facet::Shape out_shape) const

Shows the shape generation tessellation setting.

Parameters
out_shapeThe shape generation setting for this kit.
Returns
true if a shape generation setting was specified, false otherwise.

◆ ShowStrips()

bool HPS::Parasolid::FacetTessellationKit::ShowStrips ( bool &  out_strips,
int &  out_max_facets_per_strip,
bool &  out_split_strips 
) const

Shows the strips tessellation setting.

Parameters
out_stripsThe strips setting for this kit.
out_max_facets_per_stripThe maximum number of facet per strip setting for this kit.
out_split_stripsWhether strips can be split for this kit.
Returns
true if a strips setting was specified, false otherwise.

◆ ShowSurfacePlaneTolerance()

bool HPS::Parasolid::FacetTessellationKit::ShowSurfacePlaneTolerance ( double &  out_plane_tolerance,
double &  out_max_plane_angle 
) const

Shows the surface plane tolerance tessellation setting.

Parameters
out_plane_toleranceThe tolerance setting for this kit.
out_max_plane_angleThe maximum angle setting for this kit.
Returns
true if a surface plane tolerance setting was specified, false otherwise.

◆ ShowTessellationLevel()

bool HPS::Parasolid::FacetTessellationKit::ShowTessellationLevel ( TessellationLevel out_tessellation_level,
double &  out_chord,
double &  out_angle,
bool &  out_generate_line_tessellation 
) const

Shows the shape generation tessellation setting.

Parameters
out_tessellation_levelThe tessellation level used for this import
out_chordThe chord tolerance. Only relevant if out_tessellation_level is Custom.
out_angleThe angle tolerance. Only relevant if out_tessellation_level is Custom.
out_generate_line_tessellationWhether line tessellation levels are automatically generated based on facet tessellation level.
Returns
true if a shape generation setting was specified, false otherwise.

◆ ShowVertexMatching()

bool HPS::Parasolid::FacetTessellationKit::ShowVertexMatching ( Facet::Match out_vertex_matching) const

Shows the vertex matching tessellation setting.

Parameters
out_vertex_matchingThe vertex matching tessellation setting for this kit.
Returns
true if a vertex matching tessellation setting was specified, false otherwise.

◆ ShowWireEdges()

bool HPS::Parasolid::FacetTessellationKit::ShowWireEdges ( bool &  out_wire_edges) const

Shows the wire edges tessellation setting.

Parameters
out_wire_edgesThe wire edge setting for this kit.
Returns
true if a wire edge setting was specified, false otherwise.

◆ Type()

◆ UnsetChordTolerance()

FacetTessellationKit& HPS::Parasolid::FacetTessellationKit::UnsetChordTolerance ( )

Removes the chord tolerance tessellation state.

Returns
A reference to this FacetTessellationKit.

◆ UnsetDegeneracyBehavior()

FacetTessellationKit& HPS::Parasolid::FacetTessellationKit::UnsetDegeneracyBehavior ( )

Removes the degeneracy tessellation state.

Returns
A reference to this FacetTessellationKit.

◆ UnsetDensity()

FacetTessellationKit& HPS::Parasolid::FacetTessellationKit::UnsetDensity ( )

Removes the density tessellation state.

Returns
A reference to this FacetTessellationKit.

◆ UnsetEdges()

FacetTessellationKit& HPS::Parasolid::FacetTessellationKit::UnsetEdges ( )

Removes the edges tessellation state.

Returns
A reference to this FacetTessellationKit.

◆ UnsetEverything()

FacetTessellationKit& HPS::Parasolid::FacetTessellationKit::UnsetEverything ( )

Removes all settings from this FacetTessellationKit.

Returns
A reference to this FacetTessellationKit.

◆ UnsetFacetPlaneTolerance()

FacetTessellationKit& HPS::Parasolid::FacetTessellationKit::UnsetFacetPlaneTolerance ( )

Removes the facet plane tolerance tessellation state.

Returns
A reference to this FacetTessellationKit.

◆ UnsetFacetSize()

FacetTessellationKit& HPS::Parasolid::FacetTessellationKit::UnsetFacetSize ( )

Removes the facet size tessellation state.

Returns
A reference to this FacetTessellationKit.

◆ UnsetFlattenVertices()

FacetTessellationKit& HPS::Parasolid::FacetTessellationKit::UnsetFlattenVertices ( )

Removes the vertex flattening tessellation state.

Returns
A reference to this FacetTessellationKit.

◆ UnsetIgnoreCriteria()

FacetTessellationKit& HPS::Parasolid::FacetTessellationKit::UnsetIgnoreCriteria ( )

Removes the ignore criteria tessellation state.

Returns
A reference to this FacetTessellationKit.

◆ UnsetIgnoredLoops()

FacetTessellationKit& HPS::Parasolid::FacetTessellationKit::UnsetIgnoredLoops ( )

Removes the ignored loops tessellation state.

Returns
A reference to this FacetTessellationKit.

◆ UnsetImprovedFacetQuality()

FacetTessellationKit& HPS::Parasolid::FacetTessellationKit::UnsetImprovedFacetQuality ( )

Removes the facet quality tessellation state.

Returns
A reference to this FacetTessellationKit.

◆ UnsetIncrementalFaceting()

FacetTessellationKit& HPS::Parasolid::FacetTessellationKit::UnsetIncrementalFaceting ( )

Removes the incremental faceting tessellation state.

Returns
A reference to this FacetTessellationKit.

◆ UnsetInflection()

FacetTessellationKit& HPS::Parasolid::FacetTessellationKit::UnsetInflection ( )

Removes the inflection tessellation state.

Returns
A reference to this FacetTessellationKit.

◆ UnsetLocalTolerances()

FacetTessellationKit& HPS::Parasolid::FacetTessellationKit::UnsetLocalTolerances ( )

Removes the local tolerances tessellation state.

Returns
A reference to this FacetTessellationKit.

◆ UnsetNormals()

FacetTessellationKit& HPS::Parasolid::FacetTessellationKit::UnsetNormals ( )

Removes the normals tessellation state.

Returns
A reference to this FacetTessellationKit.

◆ UnsetOffsetFaces()

FacetTessellationKit& HPS::Parasolid::FacetTessellationKit::UnsetOffsetFaces ( )

Removes the offset faces tessellation state.

Returns
A reference to this FacetTessellationKit.

◆ UnsetParameters()

FacetTessellationKit& HPS::Parasolid::FacetTessellationKit::UnsetParameters ( )

Removes the parameters tessellation state.

Returns
A reference to this FacetTessellationKit.

◆ UnsetShapeGeneration()

FacetTessellationKit& HPS::Parasolid::FacetTessellationKit::UnsetShapeGeneration ( )

Removes the shape generation tessellation state.

Returns
A reference to this FacetTessellationKit.

◆ UnsetStrips()

FacetTessellationKit& HPS::Parasolid::FacetTessellationKit::UnsetStrips ( )

Removes the strip tessellation state.

Returns
A reference to this FacetTessellationKit.

◆ UnsetSurfacePlaneTolerance()

FacetTessellationKit& HPS::Parasolid::FacetTessellationKit::UnsetSurfacePlaneTolerance ( )

Removes the plane tolerance tessellation state.

Returns
A reference to this FacetTessellationKit.

◆ UnsetTessellationLevel()

FacetTessellationKit& HPS::Parasolid::FacetTessellationKit::UnsetTessellationLevel ( )

Removes the tessellation level state.

Returns
A reference to this FacetTessellationKit.

◆ UnsetVertexMatching()

FacetTessellationKit& HPS::Parasolid::FacetTessellationKit::UnsetVertexMatching ( )

Removes the vertex matching tessellation state.

Returns
A reference to this FacetTessellationKit.

◆ UnsetWireEdges()

FacetTessellationKit& HPS::Parasolid::FacetTessellationKit::UnsetWireEdges ( )

Removes the wire edges tessellation state.

Returns
A reference to this FacetTessellationKit.

Member Data Documentation

◆ staticType

const HPS::Type HPS::Parasolid::FacetTessellationKit::staticType = HPS::Type::ParasolidFacetTessellationKit
static

The documentation for this class was generated from the following file: