Exchange

class Exchange

The Exchange class contains objects and enumerations used for importing and exporting CAD files via Exchange.

Public Types

enum class AnnotationCaptureFitting

Enumerates the type of data in the scene to use to generate cameras for annotation captures.

Values:

enumerator PMIOnly

Use only the bounds of the PMI referenced by the annotation capture to compute the camera.

enumerator ModelAndPMI

Use the bounds of the model and the PMI referenced by the annotation capture to compute the camera.

typedef std::vector<BIMRelationship, HPS::Allocator<BIMRelationship>> BIMRelationshipArray
typedef std::vector<BIMRelationshipEntity, HPS::Allocator<BIMRelationshipEntity>> BIMRelationshipEntityArray
enum class BIMRelationshipType : uint32_t

Enumerates the BIM relationship types.

Values:

enumerator ContainedInSpatialStructure
enumerator Aggregates
enumerator VoidsElement
enumerator FillsElement
enumerator SpaceBoundary
enumerator ConnectsPathElements
typedef std::vector<BIMType, HPS::Allocator<BIMType>> BIMTypeArray
enum class BRepMode

Enumerates the ways in which to import BRep and tessellation data for files imported via Exchange.

Values:

enumerator TessellationOnly

Only tessellation data will be requested from Exchange, which will tessellate items as necessary or extract existing tessellations as appropriate. No BRep data will be available for the file if this mode is used. (kA3DReadTessOnly)

enumerator BRepOnly

Only BRep data will be requested from Exchange, and each representation item will be tessellated individually as necessary. This can potentially lead to a lower peak memory level at the expense of a potentially longer import. (kA3DReadGeomOnly)

enumerator BRepAndTessellation

BRep and tessellation data will be requested from Exchange, which will perform the tessellations in one shot rather than on demand. This can potentially lead to a higher peak memory level with the benefit of a potentially faster import. (kA3DReadGeomAndTess)

typedef std::vector<Component, HPS::Allocator<Component>> ComponentArray
typedef std::vector<Configuration, HPS::Allocator<Configuration>> ConfigurationArray
enum class CurveType

Enumerates the types of curves supported by Exchange

Values:

enumerator Blend

Blend boundary curve (kA3DTypeCrvBlend02Boundary ).

enumerator NURBS

NURBS curve (kA3DTypeCrvNurbs ).

enumerator Circle

Circle (kA3DTypeCrvCircle ).

enumerator Composite

Array of oriented curves (kA3DTypeCrvComposite ).

enumerator CurveOnSurface

Curve defined by a UV curve on a surface (kA3DTypeCrvOnSurf ).

enumerator Ellipse

Ellipse (kA3DTypeCrvEllipse ).

enumerator Equation

Curve described by an equation (kA3DTypeCrvEquation ).

enumerator Helix

Helix (kA3DTypeCrvHelix ).

enumerator Hyperbola

Hyperbola (kA3DTypeCrvHyperbola ).

enumerator Intersection

Intersection between two surfaces (kA3DTypeCrvIntersection ).

enumerator Line

Line (kA3DTypeCrvLine ).

enumerator Offset

Offset curve (kA3DTypeCrvOffset ).

enumerator Parabola

Parabola (kA3DTypeCrvParabola ).

enumerator Polyline

Polyhedric curve (kA3DTypeCrvPolyLine ).

enumerator Transform

Transformed curve (kA3DTypeCrvTransform ).

typedef std::vector<CurveType, HPS::Allocator<CurveType>> CurveTypeArray
enum class ImportMode

Enumerates the ways in which to perform file import via Exchange.

Values:

enumerator Complete

The standard form of import. Import options will be respected as to what should be loaded (solids, surfaces, PMI, etc.), but all specified data will be imported for all product occurrences within a file.

enumerator Incremental

Only the structure of the CAD file will be imported. Product occurrences within that structure can then be loaded on demand. This type of import can only be performed for certain formats, in particular, SolidWorks, NX (Unigraphics), Creo (Pro/E), and CATIA V5 files.

typedef std::vector<Layer, HPS::Allocator<Layer>> LayerArray
enum class LoadStatus

Enumerates the various load statuses for a ProductOccurrence.

Values:

enumerator Unknown

Unknown state.

enumerator Loaded

Product occurrence is loaded in Exchange and has visualization data.

enumerator VisualizationOnly

Product occurrence has only visualization data, no Exchange data is available.

enumerator PartiallyLoaded

Some product occurrences under the product occurrence are loaded, some are not.

enumerator NotLoaded

No Exchange or visualization data is loaded for the product occurrence.

typedef HPS::IntArray ParasolidEntityArray
typedef std::vector<Sheet, HPS::Allocator<Sheet>> SheetArray
enum class SurfaceType

Enumerates the types of surfaces supported by Exchange

Values:

enumerator Blend01

Blend Type 1 surface (kA3DTypeSurfBlend01).

enumerator Blend02

Blend Type 2 surface (kA3DTypeSurfBlend02).

enumerator Blend03

Blend Type 3 surface (kA3DTypeSurfBlend03).

enumerator Blend04

Blend Type 4 surface (kA3DTypeSurfBlend04).

enumerator NURBS

NURBS surface (kA3DTypeSurfNurbs ).

enumerator Cone

Conical surface (kA3DTypeSurfCone ).

enumerator Cylinder

Cylindrical surface (kA3DTypeSurfCylinder ).

enumerator Offset

Offset surface (kA3DTypeSurfOffset ).

enumerator Pipe

Pipe surface (kA3DTypeSurfPipe ).

enumerator Plane

Planar surface (kA3DTypeSurfPlane ).

enumerator Ruled

Ruled surface (kA3DTypeSurfRuled ).

enumerator Sphere

Spherical surface (kA3DTypeSurfSphere ).

enumerator Revolution

Revolution surface (kA3DTypeSurfRevolution ).

enumerator Extrusion

An Extrusion (kA3DTypeSurfExtrusion ).

enumerator FromCurve

Surface defined from a curve (kA3DTypeSurfFromCurves).

enumerator Torus

Torus surface (kA3DTypeSurfTorus).

enumerator Transform

Transform (kA3DTypeSurfTransform ).

typedef std::vector<SurfaceType, HPS::Allocator<SurfaceType>> SurfaceTypeArray
enum class Units

Enumerates the units for files imported via Exchange.

Values:

enumerator Unknown

Unknown unit type (kA3DUnitUnknown).

enumerator Point

Point (1/72 of an inch) units (kA3DUnitPoint).

enumerator Inch

Inch units (kA3DUnitInch).

enumerator Millimeter

Millimeter units (kA3DUnitMillimeter).

enumerator Centimeter

Centimeter units (kA3DUnitCentimeter).

enumerator Pica

Pica (1/72 of a foot) units (kA3DUnitPicas).

enumerator Foot

Foot units (kA3DUnitFoot).

enumerator Yard

Yard units (kA3DUnitYard).

enumerator Meter

Meter units (kA3DUnitMeter).

enumerator Kilometer

Kilometer units (kA3DUnitKilometer).

enumerator Mile

Mile units (kA3DUnitMile).

enum class UnloadMode

Enumerates the ways in which a ProductOccurrence can be unloaded.

Values:

enumerator ExchangeAndVisualization

Exchange data will be unloaded for a ProductOccurrence via the A3DAsmModelFileUnloadParts and the Component objects corresponding to Exchange entities which were removed will be deleted.

enumerator ExchangeOnly

Exchange data will be unloaded for a ProductOccurrence via the A3DAsmModelFileUnloadParts while the corresponding Component objects will be kept around. This will invalidate the entity pointers for any Component which no longer exists in the Exchange data, but still allows use of the Component APIs to interact with the components. Any such components will have a load status of LoadStatus::VisualizationOnly, and would be reimported if they or a parent product occurrence get loaded again.

class BIMData : public HPS::Sprocket

BIM related data inside the model.

Public Functions

BIMData()

The default constructor creates an empty BIMData object.

BIMData(BIMData &&in_bim_data)

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

Parameters:

in_bim_data – An rvalue reference to a BIMData to take the impl from.

BIMData(BIMData const &in_bim_data)

The copy constructor creates a new BIMData object that is associated with the same data as the source BIMData.

Parameters:

in_bim_data – The source BIMData to copy.

bool Equals(BIMData const &in_bim_data) const

Check if the source BIMData is equivalent to this BIMData.

Parameters:

in_bim_data – The source BIMData to compare to this BIMData.

Returns:

true if the objects are equivalent, false otherwise.

BIMRelationshipEntityArray GetRelatedEntities(HPS::Exchange::Component const &in_component, BIMRelationshipType in_relationship_type) const

Get an array of BIMRelationshipEntity that are related to the component given.

Parameters:
Returns:

an array of BIMRelationshipEntity.

BIMRelationshipEntityArray GetRelatingEntities(HPS::Exchange::Component const &in_component, BIMRelationshipType in_relationship_type) const

Get an array of BIMRelationshipEntity that are relating to the component given.

Parameters:
Returns:

an array of BIMRelationshipEntity.

BIMRelationshipArray GetRelationships(HPS::Exchange::Component const &in_component) const

Get an array of all relationships that target the component given.

Parameters:

in_component – the component whose relationships are requested.

Returns:

the array of BIMRelationship for the component.

BIMTypeArray GetTypes() const

Get an array of BIMType present in this model.

Returns:

the array of BIMType for this model.

inline virtual HPS::Type ObjectType() const

This function returns the type the object, as declared (if the object is derived, this does not give the true type of the derived object).

Returns:

The declared type of the object in question, which may differ from the true, underlying type.

bool operator!=(BIMData const &in_bim_data) const

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

Parameters:

in_bim_data – The source BIMData to compare to this BIMData.

Returns:

true if the objects are not equivalent, false otherwise.

BIMData &operator=(BIMData &&in_bim_data)

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

Parameters:

in_bim_data – An rvalue reference to a BIMData to take the impl from.

Returns:

A reference to this BIMData.

BIMData &operator=(BIMData const &in_that)

The copy assignment operator copies the underlying impl of the source value to this BIMData.

Parameters:

in_that – The source BIMData to copy.

Returns:

A reference to this BIMData.

bool operator==(BIMData const &in_bim_data) const

Check if the source BIMData is equivalent to this BIMData.

Parameters:

in_bim_data – The source BIMData to compare to this BIMData.

Returns:

true if the objects are equivalent, false otherwise.

virtual ~BIMData()

Public Static Attributes

static const HPS::Type staticType = HPS::Type::ExchangeBIMData
class BIMRelationship : public HPS::Sprocket

BIM relationship

Public Functions

BIMRelationship()

The default constructor creates an empty BIMRelationship object.

BIMRelationship(BIMRelationship &&in_relationship)

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

Parameters:

in_relationship – An rvalue reference to an BIMRelationship to take the impl from.

BIMRelationship(BIMRelationship const &in_relationship)

The copy constructor creates a new BIMRelationship object that is associated with the same data as the source BIMRelationship.

Parameters:

in_relationship – The source BIMRelationship to copy.

bool Equals(BIMRelationship const &in_relationship) const

Check if the source BIMRelationship is equivalent to this BIMRelationship.

Parameters:

in_relationship – The source BIMRelationship to compare to this BIMRelationship.

Returns:

true if the objects are equivalent, false otherwise.

BIMRelationshipEntityArray GetRelatedEntities() const

Get an array of related BIMRelationshipEntity.

Returns:

an array of BIMRelationshipEntity acting as related in the BIMRelationship.

BIMRelationshipEntity GetRelatingEntity() const

Get the relating BIMRelationshipEntity.

Returns:

the RelatingshipEntity acting as relating in the BIMRelationship.

BIMRelationshipType GetType() const

Get the type of this BIMRelationship.

Returns:

the BIMRelationshipType of this BIMRelationship.

inline virtual HPS::Type ObjectType() const

This function returns the type the object, as declared (if the object is derived, this does not give the true type of the derived object).

Returns:

The declared type of the object in question, which may differ from the true, underlying type.

bool operator!=(BIMRelationship const &in_relationship) const

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

Parameters:

in_relationship – The source BIMRelationship to compare to this BIMRelationship.

Returns:

true if the objects are not equivalent, false otherwise.

BIMRelationship &operator=(BIMRelationship &&in_relationship)

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

Parameters:

in_relationship – An rvalue reference to an ImportNotifier to take the impl from.

Returns:

A reference to this BIMRelationship.

BIMRelationship &operator=(BIMRelationship const &in_relationship)
bool operator==(BIMRelationship const &in_relationship) const

Check if the source BIMRelationship is equivalent to this BIMRelationship.

Parameters:

in_relationship – The source BIMRelationship to compare to this BIMRelationship.

Returns:

true if the objects are equivalent, false otherwise.

virtual ~BIMRelationship()

Public Static Attributes

static const HPS::Type staticType = HPS::Type::ExchangeBIMRelationship
class BIMRelationshipEntity : public HPS::Sprocket

Entity inside a BIM relationship

Public Functions

BIMRelationshipEntity()

The default constructor creates an empty BIMRelationshipEntity object.

BIMRelationshipEntity(BIMRelationshipEntity &&in_that)

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

Parameters:

in_that – An rvalue reference to an BIMRelationshipEntity to take the impl from.

BIMRelationshipEntity(BIMRelationshipEntity const &in_that)

The copy constructor creates a new BIMRelationshipEntity object that is associated with the same data as the source BIMRelationshipEntity.

Parameters:

in_that – The source BIMRelationshipEntity to copy.

bool Equals(BIMRelationshipEntity const &in_relationshipEntity) const

Check if the source BIMRelationshipEntity is equivalent to this BIMRelationshipEntity.

Parameters:

in_relationshipEntity – The source BIMRelationshipEntity to compare to this BIMRelationshipEntity.

Returns:

true if the objects are equivalent, false otherwise.

HPS::Exchange::Component const &GetComponent() const

Get the component for this entity.

Returns:

the component for this entity of an empty component is the element is not loaded (such as openings).

HPS::UTF8 GetName(bool use_generated_if_needed = false) const

Get the name of this BIMRelationshipEntity.

Parameters:

use_generated_if_needed – Whether to use the generated name if the component has no name.

Returns:

the name of this BIMRelationshipEntity.

inline virtual HPS::Type ObjectType() const

This function returns the type the object, as declared (if the object is derived, this does not give the true type of the derived object).

Returns:

The declared type of the object in question, which may differ from the true, underlying type.

bool operator!=(BIMRelationshipEntity const &in_relationshipEntity) const

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

Parameters:

in_relationshipEntity – The source BIMRelationshipEntity to compare to this BIMRelationshipEntity.

Returns:

true if the objects are not equivalent, false otherwise.

BIMRelationshipEntity &operator=(BIMRelationshipEntity &&in_that)

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

Parameters:

in_that – An rvalue reference to an ImportNotifier to take the impl from.

Returns:

A reference to this BIMRelationshipEntity.

BIMRelationshipEntity &operator=(BIMRelationshipEntity const &in_that)

The copy assignment operator copies the underlying impl of the source value to this BIMRelationshipEntity.

Parameters:

in_that – The source BIMRelationshipEntity to copy.

Returns:

A reference to this BIMRelationshipEntity.

bool operator==(BIMRelationshipEntity const &in_relationshipEntity) const

Check if the source BIMRelationshipEntity is equivalent to this BIMRelationshipEntity.

Parameters:

in_relationshipEntity – The source BIMRelationshipEntity to compare to this BIMRelationshipEntity.

Returns:

true if the objects are equivalent, false otherwise.

virtual ~BIMRelationshipEntity()

Public Static Attributes

static const HPS::Type staticType = HPS::Type::ExchangeBIMRelationshipEntity
class BIMType : public HPS::Sprocket

BIM Type

Public Functions

BIMType()

The default constructor creates an empty BIMType object.

BIMType(BIMType &&in_bim_type)

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

Parameters:

in_bim_type – An rvalue reference to a BIMType to take the impl from.

BIMType(BIMType const &in_bim_type)

The copy constructor creates a new BIMType object that is associated with the same data as the source BIMType.

Parameters:

in_bim_type – The source BIMType to copy.

bool Equals(BIMType const &in_bim_type) const

Check if the source BIMType is equivalent to this BIMType.

Parameters:

in_bim_type – The source BIMType to compare to this BIMType.

Returns:

true if the objects are equivalent, false otherwise.

ComponentArray GetComponents() const

Get the components that are associated with this type.

Returns:

an array of components that are associated with this type.

HPS::UTF8 GetName() const

Get the name of this type.

Returns:

the name of this type.

inline virtual HPS::Type ObjectType() const

This function returns the type the object, as declared (if the object is derived, this does not give the true type of the derived object).

Returns:

The declared type of the object in question, which may differ from the true, underlying type.

bool operator!=(BIMType const &in_bim_type) const

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

Parameters:

in_bim_type – The source BIMType to compare to this BIMType.

Returns:

true if the objects are not equivalent, false otherwise.

BIMType &operator=(BIMType &&in_bim_type)

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

Parameters:

in_bim_type – An rvalue reference to a BIMType to take the impl from.

Returns:

A reference to this BIMType.

BIMType &operator=(BIMType const &in_bim_type)

The copy assignment operator copies the underlying impl of the source value to this BIMType.

Parameters:

in_bim_type – The source BIMType to copy.

Returns:

A reference to this BIMType.

bool operator==(BIMType const &in_bim_type) const

Check if the source BIMType is equivalent to this BIMType.

Parameters:

in_bim_type – The source BIMType to compare to this BIMType.

Returns:

true if the objects are equivalent, false otherwise.

virtual ~BIMType()

Public Static Attributes

static const HPS::Type staticType = HPS::Type::ExchangeBIMType
class CADModel : public HPS::CADModel

The CADModel class is a smart pointer. It represents an A3DAsmModelFile in Exchange. The primary purpose of this class is simply to provide access to the underlying A3DAsmModelFile pointer for use by Exchange library functions.

Public Functions

void AddMeasurement(Measurement const &in_measurement)
CADModel()

The default constructor creates an uninitialized CADModel object. The Type() function will return Type::None.

CADModel(Component const &in_that)

This constructor creates a CADModel object that shares the underlying smart-pointer of the source Component. The copy will only be successful if the source component is really an upcast of an Exchange::CADModel object. Otherwise the copy will fail and the resulting Exchange::CADModel will be invalid.

Parameters:

in_that – The source Component to copy.

CADModel(Exchange::CADModel &&in_that)

The move constructor creates an Exchange::CADModel by transferring the underlying object of the rvalue reference to this Exchange::CADModel.

Parameters:

in_that – An rvalue reference to an Exchange::CADModel to take the underlying object from.

CADModel(Exchange::CADModel const &in_that)

The copy constructor creates an Exchange::CADModel object that shares the underlying smart-pointer of the source Exchange::CADModel.

Parameters:

in_that – The source Exchange::CADModel to copy.

CADModel(HPS::CADModel const &in_that)

This constructor creates an Exchange::CADModel object that shares the underlying smart-pointer of the source HPS::CADModel. The copy will only be successful if the source component is really an upcast of an Exchange::CADModel object. Otherwise the copy will fail and the resulting Exchange::CADModel will be invalid.

Parameters:

in_that – The source HPS::CADModel to copy.

LayerArray GetAllLayers() const

Get all layers defined in this CAD Model.

Returns:

A list of all layers defined in this CAD Model.

MeasurementArray const &GetAllMeasurements() const

Get a list of all measurements from CADModel.

Returns:

A list of all measurements from this CADModel.

HPS::Exchange::BIMData GetBIMData() const

Gets a const reference to BIM data. Only formats which support the concept of BIM data can have a non empty BIM Data.

Returns:

the BIM data for this CADModel.

HPS::Component GetComponentFromEntity(A3DEntity *in_entity) const

Gets the Component associated with the given A3DEntity pointer (if any).

Parameters:

in_entity – The A3DEntity pointer from which to find the associated Component.

Returns:

The Component associated with the given A3DEntity pointer, or an empty component if there is no such Component.

ConfigurationArray GetConfigurations() const

Gets a list of configurations for this CADModel (if any). Only formats which support the concept of configurations can return a non-empty array, and only files of those formats which contain configurations will return a non-empty array.

Returns:

The list of configurations for this CADModel.

UTF8Array GetCurrentConfiguration() const

Gets the current configuration for this CADModel if it exists. Only formats which support the concept of configurations can have a current configuration, and only files of those formats which contain configurations will have a current configuration.

Returns:

The current configuration for this CADModel.

bool GetEntityOwnership() const

Whether this CADModel owns the associated A3DAsmModelFile or not. If this CADModel owns the associated A3DAsmModelFile, when it is deleted (via Exchange::CADModel::Delete), it will delete not only the associated Visualize components, segments and geometry but also the A3DAsmModelFile via A3DAsmModelFileDelete. If this CADModel does not own the associated A3DAsmModelFile, when it is deleted, it will only delete the associated Visualize components, segments and geometry, but not the A3DAsmModelFile. It will be up to the user to ensure the A3DAsmModelFile is deleted to reclaim any memory it has allocated in this case.

Returns:

Whether this CADModel owns the associated A3DAsmModelFile.

A3DEntity *GetExchangeEntity() const

Gets the A3DEntity pointer corresponding to this Exchange::CADModel.

Returns:

The A3DEntity pointer corresponding to this Exchange::CADModel.

SheetArray GetSheets() const

Gets a list of sheets for this CADModel (if any). Only formats which support the concept of sheets can return a non-empty array.

Returns:

The list of sheets for this CADModel

bool HasIsolatedPart() const

Get the isolated status of this CADModel.

Returns:

true if at leat one part of this CADModel is isolated, false otherwise.

void HideAllPMI(Canvas const &in_canvas, size_t in_layer = 0)

Forces the visibility of all PMI off in the given Canvas and layer. This will undo any hides, shows, isolates, or other highlights performed on PMI components contained within this CADModel via ComponentPath calls.

Parameters:
  • in_canvas – The Canvas in which to perform the the operation

  • in_layer – The layer in the Canvas in which to perform the operation.

inline virtual HPS::Type ObjectType() const

This function returns the type the object, as declared (if the object is derived, this does not give the true type of the derived object).

Returns:

The declared type of the object in question, which may differ from the true, underlying type.

CADModel &operator=(Exchange::CADModel &&in_that)

The move assignment operator transfers the underlying object of the rvalue reference to this Exchange::CADModel.

Parameters:

in_that – An rvalue reference to an Exchange::CADModel to take the underlying object from.

Returns:

A reference to this Exchange::CADModel.

ReloadNotifier Reload(TessellationOptionsKit const &in_options = TessellationOptionsKit(), TranslationOptionsKit const &in_translation_options = TranslationOptionsKit())

Asynchronously reloads this CADModel. This will delete all underlying subcomponents and then reparse the underlying Exchange data.

Parameters:
  • in_options – The options to use to generate tessellations for new Components (if necessary).

  • in_translation_options – The options to use for translation from Exchange BRep to Parasolid. This option only applies if a file was loaded via the ExchangeParasolid module and there are components underlying this component that need to be translated to Parasolid.

bool ReplaceExchangeEntity(Component const &in_component, A3DEntity *in_a3d_entity)

Replace the Exchange entity associated with the provided component. You are required to sync the HPS model tree with the PRC structures after calling this via Reload.

See also

Reload

Parameters:
  • in_component – The component whose entity is to be replaced.

  • in_a3d_entity – The new entity that will be associated with in_component.

Returns:

true if the new entity was associated successfully, false otherwise.

void SetAllPMIInFront(bool in_enable, Canvas const &in_canvas, size_t in_layer = 0)

Forces all of the PMI in this CADModel to be rendered in front of the other geometry. contained within this CADModel via ComponentPath calls.

Parameters:
  • in_enable – Dictates whether the pmi will be forced in front or not.

  • in_canvas – The Canvas in which to perform the the operation

  • in_layer – The layer in the Canvas in which to perform the operation.

void ShowAllPMI(Canvas const &in_canvas, size_t in_layer = 0)

Forces the visibility of all PMI on in the given Canvas and layer. This will undo any hides, shows, isolates, or other highlights performed on PMI components contained within this CADModel via ComponentPath calls.

Parameters:
  • in_canvas – The Canvas in which to perform the the operation

  • in_layer – The layer in the Canvas in which to perform the operation.

void Tessellate(TessellationOptionsKit const &in_options)

Re-tessellate the given CADModel with the provided options. Tessellation occurs at the representation item level in Exchange. All representation items underneath this CADModel will be re-tessellated with the provided options. Additionally, only components for which there is BRep data can the tessellation be regenerated.

Parameters:

in_options – The options to use to generate the new tessellation for this CADModel

TranslationNotifier Translate(TranslationOptionsKit const &in_translation_options)

Asynchronously translates this CADModel into an array of Parasolid parts, using the options provided. A valid Parasolid session is required for this function to succeed. If this CADModel was imported in tessellation only mode an empty Parasolid assembly will be returned.

Parameters:

in_translation_options – Options used during the translation.

Returns:

An TranslationNotifier object that can be used to query the import progress and status.

virtual ~CADModel()

Public Static Attributes

static const HPS::Type staticType = HPS::Type::ExchangeCADModel
class Capture : public HPS::Capture

The Capture class is a smart pointer. It represents an A3DMkpView in Exchange. The primary purpose of this class is simply to provide access to the underlying A3DMkpView pointer for use by Exchange library functions.

Public Functions

HPS::View Activate(HPS::ComponentPath const &in_capture_path = HPS::ComponentPath())

Activates this capture.

Parameters:

in_capture_path – The capture path to operate on.

Returns:

the View.

Capture()

The default constructor creates an uninitialized Capture object. The Type() function will return Type::None.

Capture(Component const &in_that)

This constructor creates a Capture object that shares the underlying smart-pointer of the source Component. The copy will only be successful if the source component is really an upcast of an Exchange::Capture object. Otherwise the copy will fail and the resulting Exchange::Capture will be invalid.

Parameters:

in_that – The source Component to copy.

Capture(Exchange::Capture &&in_that)

The move constructor creates an Exchange::Capture by transferring the underlying object of the rvalue reference to this Exchange::Capture.

Parameters:

in_that – An rvalue reference to an Exchange::Capture to take the underlying object from.

Capture(Exchange::Capture const &in_that)

The copy constructor creates an Exchange::Capture object that shares the underlying smart-pointer of the source Exchange::Capture.

Parameters:

in_that – The source Exchange::Capture to copy.

Capture(HPS::Capture const &in_that)

This constructor creates an Exchange::Capture object that shares the underlying smart-pointer of the source HPS::Capture. The copy will only be successful if the source component is really an upcast of an Exchange::Capture object. Otherwise the copy will fail and the resulting Exchange::Capture will be invalid.

Parameters:

in_that – The source HPS::Capture to copy.

A3DEntity *GetExchangeEntity() const

Gets the A3DEntity pointer corresponding to this Exchange::Capture.

Returns:

The A3DEntity pointer corresponding to this Exchange::Capture.

inline virtual HPS::Type ObjectType() const

This function returns the type the object, as declared (if the object is derived, this does not give the true type of the derived object).

Returns:

The declared type of the object in question, which may differ from the true, underlying type.

Capture &operator=(Exchange::Capture &&in_that)

The move assignment operator transfers the underlying object of the rvalue reference to this Exchange::Capture.

Parameters:

in_that – An rvalue reference to an Exchange::Capture to take the underlying object from.

Returns:

A reference to this Exchange::Capture.

virtual ~Capture()

Public Static Attributes

static const HPS::Type staticType = HPS::Type::ExchangeCapture
class CommonMeasurementOperator : public HPS::Operator

The CommonMeasurementOperator class defines an operator which contains many often used functions when inserting measurements. Users can build a custom measurement operator by deriving from this class. This operator requires the model be loaded using the Exchange bridge, and the model must contain B-rep.

Subclassed by HPS::Exchange::MeasurementOperator

Public Types

enum class Tags

Values:

enumerator Name
enumerator MeasurementType
enumerator Radius
enumerator Inverted
enumerator VectorX
enumerator VectorY
enumerator VectorZ

Public Functions

CommonMeasurementOperator()
CommonMeasurementOperator(Exchange::CADModel const &in_cad_model, MouseButtons in_mouse_trigger = MouseButtons::ButtonLeft(), ModifierKeys in_modifier_trigger = ModifierKeys())
void DeleteMeasurements()

Deletes all measurements

Exchange::CADModel GetCADModel() const
MaterialMappingKit GetMaterial() const

Returns the material used for the measurements

SegmentKey GetMeasurementSegment() const

Returns the top measurement segment containing all measurements

inline virtual HPS::UTF8 GetName() const override

Returns the name of the operator.

size_t GetPrecision() const

Returns the precision used in the measurement (number of digits after the decimal point)

TextAttributeKit GetTextAttributes() const

Returns the text attributes used for the measurements

virtual void OnViewAttached(HPS::View const &in_attached_view) override

This function is called whenever a view is attached to this operator.

Parameters:

in_attached_view – The view attached to this operator.

virtual void OnViewDetached(HPS::View const &in_detached_view) override

This function is called whenever a view is detached from this operator.

Parameters:

in_detached_view – The view detached from this operator.

void SetCADModel(Exchange::CADModel const &in_cad_model)
void SetMaterial(MaterialMappingKit const &in_material_mapping)

Changes the material used for the measurements. Affects all measurements, even those already inserted.

void SetPrecision(size_t in_precision)

Changes the precision used in the measurement (number of digits after the decimal point) Only affects future measurements.

void SetTextAttribute(TextAttributeKit const &in_text_attributes)

Changes the text attributes used for the measurements. Affects all measurements, even those already inserted.

Public Static Functions

static UTF8 GetNewMeasurementSegmentName(HPS::UTF8 const &in_prefix)

Returns the name to be used for the new measurement segment name

class MeasurementDeletedEvent : public HPS::Event

Public Functions

inline virtual Event *Clone() const override

Allocates and returns a copy of this MeasurementDeletedEvent.

Returns:

A copy of this MeasurementDeletedEvent.

inline MeasurementDeletedEvent()

The default constructor creates an empty MeasurementDeletedEvent object.

inline MeasurementDeletedEvent(Event const &in_event)

This constructor converts an Event Object to a MeasurementDeletedEvent object.

Parameters:

in_event – The Event Object to be converted.

inline MeasurementDeletedEvent(HPS::UTF8 const &in_measurement_name, HPS::View const &in_view)
~MeasurementDeletedEvent()

Public Members

UTF8 measurement_name
View view
class MeasurementInsertedEvent : public HPS::Event

Public Functions

inline virtual Event *Clone() const override

Allocates and returns a copy of this MeasurementInsertedEvent.

Returns:

A copy of this MeasurementInsertedEvent.

inline MeasurementInsertedEvent()

The default constructor creates an empty MeasurementInsertedEvent object.

inline MeasurementInsertedEvent(Event const &in_event)

This constructor converts an Event Object to a MeasurementInsertedEvent object.

Parameters:

in_event – The Event Object to be converted.

inline MeasurementInsertedEvent(HPS::Measurement const &in_measurement, HPS::View const &in_view)
~MeasurementInsertedEvent()

Public Members

HPS::Measurement measurement
View view
class Component : public HPS::Component

The Component class is a smart pointer. It represents a variety of Exchange components. The primary purpose of this class is simply to provide access to the underlying A3DEntity pointer for use by Exchange library functions.

Subclassed by HPS::Exchange::ProductOccurrence, HPS::Exchange::Sheet

Public Functions

bool AddTransform(MatrixKit const &in_transform)

Appends a transform to the underlying PRC data associated with this component. Only components of type ExchangeProductOccurrence, or components that have the type ExchangeRepresentationItemMask can have transforms applied to them. Additionally, AddTransform does not work on Exchange models which have a Drawing structure to them. This would include CATDrawing files and 2D DWG files loaded through Exchange. Any attempt to use this function on those models will produce a warning.

Parameters:

in_transform – The transform to apply to this component.

Returns:

true if transform was applied correctly, false otherwise.

Component()

The default constructor creates an uninitialized Exchange::Component object. The Type() function will return Type::None.

Component(Exchange::Component &&in_that)

The move constructor creates an Exchange::Component by transferring the underlying object of the rvalue reference to this Exchange::Component.

Parameters:

in_that – An rvalue reference to an Exchange::Component to take the underlying object from.

Component(Exchange::Component const &in_that)

The copy constructor creates an Exchange::Component object that shares the underlying smart-pointer of the source Exchange::Component.

Parameters:

in_that – The source Exchange::Component to copy.

Component(HPS::Component const &in_that)

This constructor creates an Exchange::Component object that shares the underlying smart-pointer of the source Component. The copy will only be successful if the source component is really an upcast of an Exchange::Component object. Otherwise the copy will fail and the resulting Exchange::Component will be invalid.

Parameters:

in_that – The source Component to copy.

HPS::Component CopyTo(HPS::Component const &in_new_owner)

Create a copy of this component under another component. This function will create a copy of the A3DEntity underlying this component and put it under the Exchange entity associated with the new owner. It will also create a new component, the keys associated to it and include those keys under the new owner. You are required to sync the HPS model tree with the PRC structures after calling this via Reload.

See also

Reload

Parameters:

in_new_owner – The component which will be the owner of the newly created component.

Returns:

The newly created component.

A3DEntity *GetExchangeEntity() const

Gets the A3DEntity pointer corresponding to this Exchange Component.

Returns:

The A3DEntity pointer corresponding to this Exchange Component.

inline virtual HPS::Type ObjectType() const

This function returns the type the object, as declared (if the object is derived, this does not give the true type of the derived object).

Returns:

The declared type of the object in question, which may differ from the true, underlying type.

Component &operator=(Exchange::Component &&in_that)

The move assignment operator transfers the underlying object of the rvalue reference to this Exchange::Component.

Parameters:

in_that – An rvalue reference to an Exchange::Component to take the underlying object from.

Returns:

A reference to this Exchange::Component.

ReloadNotifier Reload(TessellationOptionsKit const &in_tessellation_options = TessellationOptionsKit(), TranslationOptionsKit const &in_translation_options = TranslationOptionsKit())

Asynchronously reloads this component. This will delete all underlying subcomponents and then reparse the underlying Exchange data. This function should be invoked on the Component corresponding to an entity which was edited or a Component above such a Component.

Parameters:
  • in_tessellation_options – The options to use to generate tessellations for new Components (if necessary).

  • in_translation_options – The options to use for translation from Exchange BRep to Parasolid. This option only applies if a file was loaded via the ExchangeParasolid module and there are components underlying this component that need to be translated to Parasolid.

Returns:

A ReloadNotifier object that can be used to query the reload progress and status.

bool SetName(char const *in_new_name)

Rename this component in the PRC.

Parameters:

in_new_name – The new name of the A3DEntity.

Returns:

true if the name was set successfully, false otherwise.

bool SetTransform(MatrixKit const &in_transform)

Applies a transform to the underlying PRC data associated with this component, replacing any transform currently set on it. Only components of type ExchangeProductOccurrence, or components that have the type ExchangeRepresentationItemMask can have transforms applied to them. Additionally, SetTransform does not work on Exchange models which have a Drawing structure to them. This would include CATDrawing files and 2D DWG files loaded through Exchange. Any attempt to use this function on those models will produce a warning.

Parameters:

in_transform – The transform to apply to this component.

Returns:

true if transform was applied correctly, false otherwise.

void Tessellate(TessellationOptionsKit const &in_options)

Re-tessellate the given Component with the provided options. Tessellation occurs at the representation item level in Exchange, so calling this function on Component objects below that level will have no effect. If this function is invoked on Component objects above that level, e.g., at the product occurrence level, all representation items underneath that Component will be re-tessellated with the provided options. Additionally, only components for which there is BRep data can the tessellation be regenerated.

Parameters:

in_options – The options to use to generate the new tessellation for this Component.

TranslationNotifier Translate(Units in_units, TranslationOptionsKit const &in_translation_options)

Asynchronously translates this component into an array of Parasolid parts, using the options provided. A valid Parasolid session is required for this function to succeed. The component has to be a Representation Item for this function to succeed.

Parameters:
  • in_units – The units for the representation item

  • in_translation_options – Options used during the translation.

Returns:

A TranslationNotifier object that can be used to query the translation progress and status.

virtual ~Component()

Releases a reference to this Component. The Component will not be deleted unless the final reference is destroyed.

Public Static Attributes

static const HPS::Type staticType = HPS::Type::ExchangeComponent
class Configuration : public HPS::Sprocket

The Configuration class is a user space object. It is a used to get configuration information for a CAD file.

Public Functions

Configuration()

The default constructor creates an empty Configuration object.

Configuration(char const *in_name)

This constructor creates a Configuration with the given name and no subconfigurations.

Parameters:

in_name – UTF8-encoded string with the name for this Configuration.

Configuration(char const *in_name, ConfigurationArray const &in_subconfigurations)

This constructor creates a Configuration with the given name and the given subconfigurations

Parameters:
  • in_name – UTF8-encoded string with the name for this Configuration.

  • in_subconfigurations – The subconfigurations for this Configuration.

Configuration(char const *in_name, size_t in_count, Configuration const in_subconfigurations[])

This constructor creates a Configuration with the given name and the given subconfigurations

Parameters:
  • in_name – UTF8-encoded string with the name for this Configuration.

  • in_count – Size of the following array.

  • in_subconfigurations – The subconfigurations for this Configuration.

Configuration(Configuration &&in_that)

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

Parameters:

in_that – An rvalue reference to an Configuration to take the impl from.

Configuration(Configuration const &in_configuration)

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

Parameters:

in_configuration – The source Configuration to copy.

virtual bool Empty() const

Indicates whether this Configuration has any values set on it.

Returns:

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

bool Equals(Configuration const &in_kit) const

Check if the source Configuration is equivalent to this Configuration.

Parameters:

in_kit – The source Configuration to compare to this Configuration.

Returns:

true if the objects are equivalent, false otherwise.

HPS::UTF8 GetName() const

Gets the name for this Configuration.

Returns:

The name for this Configuration.

ConfigurationArray GetSubconfigurations() const

Gets the subconfigurations for this Configuration.

Returns:

The subconfigurations for this Configuration.

inline virtual HPS::Type ObjectType() const

This function returns the type the object, as declared (if the object is derived, this does not give the true type of the derived object).

Returns:

The declared type of the object in question, which may differ from the true, underlying type.

bool operator!=(Configuration const &in_kit) const

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

Parameters:

in_kit – The source Configuration to compare to this Configuration.

Returns:

true if the objects are not equivalent, false otherwise.

Configuration &operator=(Configuration &&in_that)

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

Parameters:

in_that – An rvalue reference to an Configuration to take the impl from.

Returns:

A reference to this Configuration.

Configuration &operator=(Configuration const &in_kit)

Copies the source Configuration into this Configuration.

Parameters:

in_kit – The source Configuration to copy.

Returns:

A reference to this Configuration.

bool operator==(Configuration const &in_kit) const

Check if the source Configuration is equivalent to this Configuration.

Parameters:

in_kit – The source Configuration to compare to this Configuration.

Returns:

true if the objects are equivalent, false otherwise.

void Set(Configuration const &in_kit)

Copies the source Configuration into this Configuration.

Parameters:

in_kit – The source Configuration to copy.

void Show(Configuration &out_kit) const

Copies this Configuration into the given Configuration.

Parameters:

out_kit – The Configuration to populate with the contents of this Configuration.

virtual ~Configuration()

Public Static Attributes

static const HPS::Type staticType = HPS::Type::ExchangeConfiguration
class Export3MFOptionsKit : public HPS::SprocketKit

The HPS::Exchange::Export3MFOptionsKit class is a user space object. It contains settings controlling how 3MF data is exported via the Exchange interface.

Public Functions

virtual bool Empty() const

Indicates whether this Export3MFOptionsKit has any values set on it.

Returns:

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

bool Equals(Export3MFOptionsKit const &in_kit) const

Check if the source Export3MFOptionsKit is equivalent to this Export3MFOptionsKit.

Parameters:

in_kit – The source Export3MFOptionsKit to compare to this Export3MFOptionsKit.

Returns:

true if the objects are equivalent, false otherwise.

Export3MFOptionsKit()

The default constructor creates an empty Export3MFOptionsKit object.

Export3MFOptionsKit(Export3MFOptionsKit &&in_that)

The move constructor creates an Export3MFOptionsKit by transferring the underlying object of the rvalue reference to this Export3MFOptionsKit.

Parameters:

in_that – An rvalue reference to an Export3MFOptionsKit to take the underlying object from.

Export3MFOptionsKit(Export3MFOptionsKit const &in_kit)

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

Parameters:

in_kit – The source Export3MFOptionsKit to copy.

inline virtual HPS::Type ObjectType() const

This function returns the type the object, as declared (if the object is derived, this does not give the true type of the derived object).

Returns:

The declared type of the object in question, which may differ from the true, underlying type.

bool operator!=(Export3MFOptionsKit const &in_kit) const

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

Parameters:

in_kit – The source Export3MFOptionsKit to compare to this Export3MFOptionsKit.

Returns:

true if the objects are not equivalent, false otherwise.

Export3MFOptionsKit &operator=(Export3MFOptionsKit &&in_that)

The move assignment operator transfers the underlying object of the rvalue reference to this Export3MFOptionsKit.

Parameters:

in_that – An rvalue reference to an Export3MFOptionsKit to take the underlying object from.

Returns:

A reference to this Export3MFOptionsKit.

Export3MFOptionsKit &operator=(Export3MFOptionsKit const &in_kit)

Copies the source Export3MFOptionsKit into this Export3MFOptionsKit.

Parameters:

in_kit – The source Export3MFOptionsKit to copy.

Returns:

A reference to this Export3MFOptionsKit.

bool operator==(Export3MFOptionsKit const &in_kit) const

Check if the source Export3MFOptionsKit is equivalent to this Export3MFOptionsKit.

Parameters:

in_kit – The source Export3MFOptionsKit to compare to this Export3MFOptionsKit.

Returns:

true if the objects are equivalent, false otherwise.

void Set(Export3MFOptionsKit const &in_kit)

Copies the source Export3MFOptionsKit into this Export3MFOptionsKit.

Parameters:

in_kit – The source Export3MFOptionsKit to copy.

Export3MFOptionsKit &SetAdditionalKeyPaths(KeyPathArray const &in_additional_key_paths)

Sets an array of key paths which will be exported in addition to the model. Use this setting to export Visualize geometry to 3MF.

Parameters:

in_additional_key_paths – The key paths to be exported.

Returns:

A reference to this Export3MFOptionsKit.

Export3MFOptionsKit &SetAdditionalKeyPaths(size_t in_count, KeyPath const in_additional_key_paths[])

Sets an array of key paths which will be exported in addition to the model. Use this setting to export Visualize geometry to 3MF.

Parameters:
  • in_count – The number of key paths contained in in_additional_key_paths.

  • in_additional_key_paths – The key paths to be exported.

Returns:

A reference to this Export3MFOptionsKit.

Export3MFOptionsKit &SetCopyright(char const *in_copyright)

Sets the copyright metadata.

Parameters:

in_copyright – The copyright metadata.

Returns:

A reference to this Export3MFOptionsKit.

Export3MFOptionsKit &SetCurrentTessellationRetention(bool in_state, TessellationOptionsKit const &in_tessellation_kit = TessellationOptionsKit())

Sets whether to retain the current tessellation during export.

Parameters:
  • in_state – Whether to retain the current tessellation during export.

  • in_tessellation_kit – The tessellation to use during export. Only used if in_state is false, or if no tessellation is present.

Returns:

A reference to this Export3MFOptionsKit.

Export3MFOptionsKit &SetDescription(char const *in_description)

Sets a description. This will be reported in the output file as metadata.

Parameters:

in_description – The description.

Returns:

A reference to this Export3MFOptionsKit .

Export3MFOptionsKit &SetLicenseTerms(char const *in_license)

Sets license terms metadata.

Parameters:

in_license – The license terms metadata.

Returns:

A reference to this Export3MFOptionsKit.

void Show(Export3MFOptionsKit &out_kit) const

Copies this Export3MFOptionsKit into the given Export3MFOptionsKit.

Parameters:

out_kit – The Export3MFOptionsKit to populate with the contents of this Export3MFOptionsKit.

bool ShowAdditionalKeyPaths(KeyPathArray &out_additional_key_paths) const

Shows the additional key paths setting.

Parameters:

out_additional_key_paths – The key paths which will be added to the model

Returns:

true if an additional key paths setting was specified, false otherwise.

bool ShowCopyright(HPS::UTF8 &out_copyright) const

Shows the copyright setting.

Parameters:

out_copyright – The copyright metadata.

Returns:

true if a copyright setting was specified, false otherwise.

bool ShowCurrentTessellationRetention(bool &out_state, Exchange::TessellationOptionsKit &out_tessellation_kit) const

Shows the KeepCurrentTessellation setting.

Parameters:
  • out_state – Whether to retain the current tessellation during export.

  • out_tessellation_kit – The tessellation options to use during export. Only valid if out_state is false.

Returns:

true if a tessellation retention setting was specified, false otherwise.

bool ShowDescription(HPS::UTF8 &out_description) const

Shows the description setting.

Parameters:

out_description – The description.

Returns:

true if a description setting was specified, false otherwise.

bool ShowLicenseTerms(HPS::UTF8 &out_license) const

Shows the license setting.

Parameters:

out_license – The license metadata

Returns:

true if a license setting was specified, false otherwise.

Export3MFOptionsKit &UnsetAdditionalKeyPaths()

Removes the additional key paths setting.

Returns:

A reference to this Export3MFOptionsKit.

Export3MFOptionsKit &UnsetCopyright()

Removes the Copyright setting.

Returns:

A reference to this Export3MFOptionsKit.

Export3MFOptionsKit &UnsetCurrentTessellationRetention()

Removes the KeepCurrentTessellation setting.

Returns:

A reference to this Export3MFOptionsKit.

Export3MFOptionsKit &UnsetDescription()

Removes the description setting.

Returns:

A reference to this Export3MFOptionsKit.

Export3MFOptionsKit &UnsetEverything()

Removes all settings from this Export3MFOptionsKit.

Returns:

A reference to this Export3MFOptionsKit.

Export3MFOptionsKit &UnsetLicenseTerms()

Removes the license setting.

Returns:

A reference to this Export3MFOptionsKit.

virtual ~Export3MFOptionsKit()

Public Static Functions

static Export3MFOptionsKit GetDefault()

Creates an Export3MFOptionsKit 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 defaults. These values will be used for export unless an option in overridden by the options passed to File::Export3MF.

Returns:

An Export3MFOptionsKit with the default settings.

Public Static Attributes

static const HPS::Type staticType = HPS::Type::ExchangeExport3MFOptionsKit
class ExportACISOptionsKit : public HPS::SprocketKit

The HPS::Exchange::ExportACISOptionsKit class is a user space object. It contains settings controlling how ACIS data is exported via the Exchange interface. Calling HPS::Exchange::ExportACISOptionsKit::GetDefault() will return an options kit with values found in here.

Public Functions

virtual bool Empty() const

Indicates whether this ExportACISOptionsKit has any values set on it.

Returns:

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

bool Equals(ExportACISOptionsKit const &in_kit) const

Check if the source ExportACISOptionsKit is equivalent to this ExportACISOptionsKit.

Parameters:

in_kit – The source ExportACISOptionsKit to compare to this ExportACISOptionsKit.

Returns:

true if the objects are equivalent, false otherwise.

ExportACISOptionsKit()

The default constructor creates an empty ExportACISOptionsKit object.

ExportACISOptionsKit(ExportACISOptionsKit &&in_that)

The move constructor creates an ExportACISOptionsKit by transferring the underlying object of the rvalue reference to this ExportACISOptionsKit.

Parameters:

in_that – An rvalue reference to an ExportACISOptionsKit to take the underlying object from.

ExportACISOptionsKit(ExportACISOptionsKit const &in_kit)

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

Parameters:

in_kit – The source ExportACISOptionsKit to copy.

inline virtual HPS::Type ObjectType() const

This function returns the type the object, as declared (if the object is derived, this does not give the true type of the derived object).

Returns:

The declared type of the object in question, which may differ from the true, underlying type.

bool operator!=(ExportACISOptionsKit const &in_kit) const

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

Parameters:

in_kit – The source ExportACISOptionsKit to compare to this ExportACISOptionsKit.

Returns:

true if the objects are not equivalent, false otherwise.

ExportACISOptionsKit &operator=(ExportACISOptionsKit &&in_that)

The move assignment operator transfers the underlying object of the rvalue reference to this ExportACISOptionsKit.

Parameters:

in_that – An rvalue reference to an ExportACISOptionsKit to take the underlying object from.

Returns:

A reference to this ExportACISOptionsKit.

ExportACISOptionsKit &operator=(ExportACISOptionsKit const &in_kit)

Copies the source ExportACISOptionsKit into this ExportACISOptionsKit.

Parameters:

in_kit – The source ExportACISOptionsKit to copy.

Returns:

A reference to this ExportACISOptionsKit.

bool operator==(ExportACISOptionsKit const &in_kit) const

Check if the source ExportACISOptionsKit is equivalent to this ExportACISOptionsKit.

Parameters:

in_kit – The source ExportACISOptionsKit to compare to this ExportACISOptionsKit.

Returns:

true if the objects are equivalent, false otherwise.

void Set(ExportACISOptionsKit const &in_kit)

Copies the source ExportACISOptionsKit into this ExportACISOptionsKit.

Parameters:

in_kit – The source ExportACISOptionsKit to copy.

ExportACISOptionsKit &SetBinary(bool in_state)

Sets whether to write ACIS data in binary form. This corresponds to the value that will be passed to A3DRWParamsExportAcisData::m_bSaveAsBinary.

See also

Default value

Parameters:

in_state – Whether to write ACIS data in binary form.

Returns:

A reference to this ExportACISOptionsKit.

ExportACISOptionsKit &SetMillimeterUnits(bool in_state)

Sets whether to write ACIS data in millimeter units instead of the native units of the CADModel. This corresponds to the value that will be passed to A3DRWParamsExportAcisData::m_bSaveAsMillimeter.

See also

Default value

Parameters:

in_state – Whether to write ACIS data in millimeter units instead of the native units of the CADModel.

Returns:

A reference to this ExportACISOptionsKit.

void Show(ExportACISOptionsKit &out_kit) const

Copies this ExportACISOptionsKit into the given ExportACISOptionsKit.

Parameters:

out_kit – The ExportACISOptionsKit to populate with the contents of this ExportACISOptionsKit.

bool ShowBinary(bool &out_state) const

Shows the binary export setting.

Parameters:

out_state – Whether to write ACIS data in binary form.

Returns:

true if a binary export setting was specified, false otherwise.

bool ShowMillimeterUnits(bool &out_state) const

Shows the millimeter unit export setting.

Parameters:

out_state – Whether to write ACIS data in millimeter units instead of the native units of the CADModel.

Returns:

true if a millimeter unit export setting was specified, false otherwise.

ExportACISOptionsKit &UnsetBinary()

Removes the binary export setting.

Returns:

A reference to this ExportACISOptionsKit.

ExportACISOptionsKit &UnsetEverything()

Removes all settings from this ExportACISOptionsKit.

Returns:

A reference to this ExportACISOptionsKit.

ExportACISOptionsKit &UnsetMillimeterUnits()

Removes the millimeter unit export setting.

Returns:

A reference to this ExportACISOptionsKit.

virtual ~ExportACISOptionsKit()

Public Static Functions

static ExportACISOptionsKit GetDefault()

Creates an ExportACISOptionsKit 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 import unless an option is overridden by the options passed to File::ExportACIS.

Returns:

An ExportACISOptionsKit with the default settings.

Public Static Attributes

static const HPS::Type staticType = HPS::Type::ExchangeExportACISOptionsKit
class ExportFBXOptionsKit : public HPS::SprocketKit

The HPS::Exchange::ExportFBXOptionsKit class is a user space object. It contains settings controlling how FBX data is exported via the Exchange interface. Calling HPS::Exchange::ExportFBXOptionsKit::GetDefault() will return an options kit with values found in here.

Public Functions

virtual bool Empty() const

Indicates whether this ExportFBXOptionsKit has any values set on it.

Returns:

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

bool Equals(ExportFBXOptionsKit const &in_kit) const

Check if the source ExportFBXOptionsKit is equivalent to this ExportFBXOptionsKit.

Parameters:

in_kit – The source ExportFBXOptionsKit to compare to this ExportFBXOptionsKit.

Returns:

true if the objects are equivalent, false otherwise.

ExportFBXOptionsKit()

The default constructor creates an empty ExportFBXOptionsKit object.

ExportFBXOptionsKit(ExportFBXOptionsKit &&in_that)

The move constructor creates an ExportFBXOptionsKit by transferring the underlying object of the rvalue reference to this ExportFBXOptionsKit.

Parameters:

in_that – An rvalue reference to an ExportFBXOptionsKit to take the underlying object from.

ExportFBXOptionsKit(ExportFBXOptionsKit const &in_kit)

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

Parameters:

in_kit – The source ExportFBXOptionsKit to copy.

inline virtual HPS::Type ObjectType() const

This function returns the type the object, as declared (if the object is derived, this does not give the true type of the derived object).

Returns:

The declared type of the object in question, which may differ from the true, underlying type.

bool operator!=(ExportFBXOptionsKit const &in_kit) const

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

Parameters:

in_kit – The source ExportFBXOptionsKit to compare to this ExportFBXOptionsKit.

Returns:

true if the objects are not equivalent, false otherwise.

ExportFBXOptionsKit &operator=(ExportFBXOptionsKit &&in_that)

The move assignment operator transfers the underlying object of the rvalue reference to this ExportFBXOptionsKit.

Parameters:

in_that – An rvalue reference to an ExportFBXOptionsKit to take the underlying object from.

Returns:

A reference to this ExportFBXOptionsKit.

ExportFBXOptionsKit &operator=(ExportFBXOptionsKit const &in_kit)

Copies the source ExportFBXOptionsKit into this ExportFBXOptionsKit.

Parameters:

in_kit – The source ExportFBXOptionsKit to copy.

Returns:

A reference to this ExportFBXOptionsKit.

bool operator==(ExportFBXOptionsKit const &in_kit) const

Check if the source ExportFBXOptionsKit is equivalent to this ExportFBXOptionsKit.

Parameters:

in_kit – The source ExportFBXOptionsKit to compare to this ExportFBXOptionsKit.

Returns:

true if the objects are equivalent, false otherwise.

void Set(ExportFBXOptionsKit const &in_kit)

Copies the source ExportFBXOptionsKit into this ExportFBXOptionsKit.

Parameters:

in_kit – The source ExportFBXOptionsKit to copy.

ExportFBXOptionsKit &SetAscii(bool in_state)

Sets whether to write FBX data in ascii form. This corresponds to the value that will be passed to A3DRWParamsExportFBXData::m_bAscii.

See also

Default value

Parameters:

in_state – Whether to write FBX data in ascii form.

Returns:

A reference to this ExportFBXOptionsKit.

ExportFBXOptionsKit &SetTextureFolder(char const *in_name)

Sets folder where texture will be exported (if any). If NULL, then texture are written in the same directory as the .fbx. Symbol @ is expanded as Filename of current file (without extension) Example: If the output file is ‘C:/out/myfile.obj’ and the texture folder is set to ‘C:/out/myfile.obj’, the export process will create a directory called ‘C:/out/myfile’ and place the textures there

See also

Default value

Parameters:

in_name – UTF8-encoded path to the folder where texture will be exported. This corresponds to the value that will be passed to and A3DRWParamsExportFbxData::m_pcTextureFolder.

Returns:

A reference to this ExportFBXOptionsKit.

void Show(ExportFBXOptionsKit &out_kit) const

Copies this ExportFBXOptionsKit into the given ExportFBXOptionsKit.

Parameters:

out_kit – The ExportFBXOptionsKit to populate with the contents of this ExportFBXOptionsKit.

bool ShowAscii(bool &out_state) const

Shows the ascii export setting.

Parameters:

out_state – Whether to write FBX data in ascii form.

Returns:

true if a ascii export setting was specified, false otherwise.

bool ShowTextureFolder(UTF8 &out_path) const

Shows the texture folder setting.

Parameters:

out_path – The path to the folder where texture will be exported.

Returns:

true if a texture folder setting was specified, false otherwise.

ExportFBXOptionsKit &UnsetAscii()

Removes the ascii export setting.

Returns:

A reference to this ExportFBXOptionsKit.

ExportFBXOptionsKit &UnsetEverything()

Removes all settings from this ExportFBXOptionsKit.

Returns:

A reference to this ExportFBXOptionsKit.

ExportFBXOptionsKit &UnsetTextureFolder()

Removes the texture folder setting.

Returns:

A reference to this ExportFBXOptionsKit.

virtual ~ExportFBXOptionsKit()

Public Static Functions

static ExportFBXOptionsKit GetDefault()

Creates an ExportFBXOptionsKit 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 import unless an option is overridden by the options passed to File::ExportFBX.

Returns:

An ExportFBXOptionsKit with the default settings.

Public Static Attributes

static const HPS::Type staticType = HPS::Type::ExchangeExportFBXOptionsKit
class ExportGLTFOptionsKit : public HPS::SprocketKit

The HPS::Exchange::ExportGLTFOptionsKit class is a user space object. It contains settings controlling how GLTF data is exported via the Exchange interface. Calling HPS::Exchange::ExportGLTFOptionsKit::GetDefault() will return an options kit with values found in here.

Public Functions

virtual bool Empty() const

Indicates whether this ExportGLTFOptionsKit has any values set on it.

Returns:

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

bool Equals(ExportGLTFOptionsKit const &in_kit) const

Check if the source ExportGLTFOptionsKit is equivalent to this ExportGLTFOptionsKit.

Parameters:

in_kit – The source ExportGLTFOptionsKit to compare to this ExportGLTFOptionsKit.

Returns:

true if the objects are equivalent, false otherwise.

ExportGLTFOptionsKit()

The default constructor creates an empty ExportGLTFOptionsKit object.

ExportGLTFOptionsKit(ExportGLTFOptionsKit &&in_that)

The move constructor creates an ExportGLTFOptionsKit by transferring the underlying object of the rvalue reference to this ExportGLTFOptionsKit.

Parameters:

in_that – An rvalue reference to an ExportGLTFOptionsKit to take the underlying object from.