HPS::Parasolid::CADModel Class Reference

#include <sprk_parasolid.h>

Inheritance diagram for HPS::Parasolid::CADModel:
HPS::CADModel HPS::Component HPS::Sprocket HPS::Object

Public Member Functions

Component AddEntity (ParasolidEntity in_entity_to_add, FacetTessellationKit const &in_facet_tessellation, LineTessellationKit const &in_line_tessellation, Component const &in_owner=Component())
 
 CADModel ()
 
 CADModel (Component const &in_that)
 
 CADModel (HPS::CADModel const &in_that)
 
 CADModel (Parasolid::CADModel const &in_that)
 
 CADModel (Parasolid::CADModel &&in_that)
 
Component GetComponentFromEntity (ParasolidEntity in_entity)
 
HPS::Type ObjectType () const
 
CADModeloperator= (Parasolid::CADModel &&in_that)
 
void Tessellate (Parasolid::FacetTessellationKit const &in_facet_options, Parasolid::LineTessellationKit const &in_line_options)
 
- Public Member Functions inherited from HPS::CADModel
View ActivateDefaultCapture ()
 
 CADModel ()
 
 CADModel (Component const &in_that)
 
 CADModel (CADModel const &in_that)
 
 CADModel (CADModel &&in_that)
 
 CADModel (Model const &in_that)
 
FilterArray GetActiveFilters (View const &in_view) const
 
CaptureArray GetAllCaptures () const
 
FilterArray GetAllFilters () const
 
Component GetComponentFromKey (Key const &in_key) const
 
ComponentPath GetComponentPath (KeyPath const &in_key_path, ComponentPath::PathType in_path_type=ComponentPath::PathType::Unique) const
 
ComponentPath GetComponentPath (SelectionItem const &in_item, ComponentPath::PathType in_path_type=ComponentPath::PathType::Unique) const
 
Model GetModel () const
 
CADModeloperator= (CADModel &&in_that)
 
void ResetVisibility (Canvas const &in_canvas, size_t in_layer=0)
 
- Public Member Functions inherited from HPS::Component
void AddKey (Key const &in_key)
 
void AddOwner (Component &in_owner, IncludeKey const &in_include=IncludeKey())
 
void AddReference (Component &in_reference)
 
bool AddTransform (MatrixKit const &in_transform)
 
virtual void Assign (Component const &in_that)
 
 Component ()
 
 Component (Component const &in_that)
 
 Component (Component &&in_that)
 
Component CopyTo (HPS::Component const &in_new_owner)
 
void Delete (HPS::Component::DeleteMode mode=HPS::Component::DeleteMode::Standard)
 
bool Equals (Component const &in_that) const
 
void Flush ()
 
MetadataArray GetAllMetadata () const
 
ComponentArray GetAllSubcomponents (ComponentType in_type) const
 
ComponentType GetComponentType () const
 
KeyArray GetKeys () const
 
Metadata GetMetadata (char const *in_name) const
 
UTF8 GetName () const
 
ComponentArray GetOwners () const
 
ComponentArray GetReferences () const
 
ComponentArray GetReferrers () const
 
ComponentArray GetSubcomponents () const
 
bool HasComponentType (ComponentType in_mask) const
 
bool operator!= (Component const &in_that) const
 
Componentoperator= (Component const &in_that)
 
Componentoperator= (Component &&in_that)
 
bool operator== (Component const &in_that) const
 
bool SetName (char const *in_new_name)
 
bool SetTransform (MatrixKit const &in_transform)
 
virtual ~Component ()
 
- Public Member Functions inherited from HPS::Sprocket
 Sprocket (Sprocket &&in_that)
 
- Public Member Functions inherited from HPS::Object
virtual bool Empty () const
 
intptr_t GetClassID () const
 
intptr_t GetInstanceID () const
 
bool HasType (HPS::Type in_mask) const
 
 Object (Object const &that)
 
 Object (Object &&in_that)
 
Objectoperator= (Object const &other_object)
 
Objectoperator= (Object &&in_that)
 
virtual void Reset ()
 
virtual HPS::Type Type () const
 

Static Public Attributes

static const HPS::Type staticType = HPS::Type::ParasolidCADModel
 
- Static Public Attributes inherited from HPS::CADModel
static const HPS::Type staticType = HPS::Type::CADModel
 
- Static Public Attributes inherited from HPS::Component
static const HPS::Type staticType = HPS::Type::Component
 
- Static Public Attributes inherited from HPS::Object
static const HPS::Type staticType = HPS::Type::None
 

Additional Inherited Members

- Public Types inherited from HPS::Component
enum  ComponentType : uint32_t {
  None = 0x00000000, GenericMask = 0xfffff000, ComponentType::ExchangeComponentMask = 0x00001000, ComponentType::ExchangeModelFile = 0x00001001,
  ComponentType::ExchangeProductOccurrence = 0x00001002, ComponentType::ExchangePartDefinition = 0x00001003, ComponentType::ExchangeView = 0x00001004, ComponentType::ExchangeFilter = 0x00001005,
  ComponentType::ExchangeRepresentationItemMask = 0x00003000, ComponentType::ExchangeRIBRepModel = 0x00003001, ComponentType::ExchangeRICurve = 0x00003002, ComponentType::ExchangeRIDirection = 0x00003003,
  ComponentType::ExchangeRIPlane = 0x00003004, ComponentType::ExchangeRIPointSet = 0x00003005, ComponentType::ExchangeRIPolyBRepModel = 0x00003006, ComponentType::ExchangeRIPolyWire = 0x00003007,
  ComponentType::ExchangeRISet = 0x00003008, ComponentType::ExchangeRICoordinateSystem = 0x00003009, ComponentType::ExchangeTopologyMask = 0x00005000, ComponentType::ExchangeTopoBody = 0x00005001,
  ComponentType::ExchangeTopoConnex = 0x00005002, ComponentType::ExchangeTopoShell = 0x00005003, ComponentType::ExchangeTopoFace = 0x00005004, ComponentType::ExchangeTopoLoop = 0x00005005,
  ComponentType::ExchangeTopoCoEdge = 0x00005006, ComponentType::ExchangeTopoEdge = 0x00005007, ComponentType::ExchangeTopoVertex = 0x00005008, ComponentType::ExchangeTopoSingleWireBody = 0x00005009,
  ComponentType::ExchangeTopoWireEdge = 0x0000500a, ComponentType::ExchangeDrawingMask = 0x00009000, ComponentType::ExchangeDrawingModel = 0x00009001, ComponentType::ExchangeDrawingView = 0x00009002,
  ComponentType::ExchangeDrawingSheet = 0x00009003, ComponentType::ExchangeBasicDrawingBlock = 0x00009004, ComponentType::ExchangeOperatorDrawingBlock = 0x00009005, ComponentType::ExchangePMIMask = 0x00011000,
  ComponentType::ExchangePMI = ExchangePMIMask, ComponentType::ExchangePMIText = 0x00011100, ComponentType::ExchangePMIRichText = 0x00011200, ComponentType::ExchangePMIRoughness = 0x00011300,
  ComponentType::ExchangePMIGDT = 0x00011400, ComponentType::ExchangePMIDatum = 0x00011500, ComponentType::ExchangePMILineWelding = 0x00011600, ComponentType::ExchangePMISpotWelding = 0x00011700,
  ComponentType::ExchangePMIDimension = 0x00011800, ComponentType::ExchangePMIBalloon = 0x00011900, ComponentType::ExchangePMICoordinate = 0x00011a00, ComponentType::ExchangePMIFastener = 0x00011b00,
  ComponentType::ExchangePMILocator = 0x00011c00, ComponentType::ExchangePMIMeasurementPoint = 0x00011d00, ComponentType::ParasolidComponentMask = 0x00020000, ComponentType::ParasolidModelFile = 0x00020001,
  ComponentType::ParasolidAssembly = 0x00020002, ComponentType::ParasolidInstance = 0x00020003, ComponentType::ParasolidTopologyMask = 0x00060000, ComponentType::ParasolidTopoBody = 0x00060001,
  ComponentType::ParasolidTopoRegion = 0x00060002, ComponentType::ParasolidTopoShell = 0x00060003, ComponentType::ParasolidTopoFace = 0x00060004, ComponentType::ParasolidTopoLoop = 0x00060005,
  ComponentType::ParasolidTopoFin = 0x00060006, ComponentType::ParasolidTopoEdge = 0x00060007, ComponentType::ParasolidTopoVertex = 0x00060008, ComponentType::DWGComponentMask = 0x00100000,
  ComponentType::DWGModelFile = 0x00100001, ComponentType::DWGLayout = 0x00100002, ComponentType::DWGBlockTable = 0x00100003, ComponentType::DWGBlockTableRecord = 0x00100004,
  ComponentType::DWGEntity = 0x00100005, ComponentType::DWGLayerTable = 0x00100006, ComponentType::DWGLayer = 0x00100007, ComponentType::UserComponent = 0x01000000
}





 
enum  DeleteMode { Standard, Full, StandardAndExchange }
 
- Static Public Member Functions inherited from HPS::Component
static KeyPathArray GetKeyPath (Component const &in_component)
 
static KeyPathArray GetKeyPath (size_t in_count, Component const in_components[])
 
static KeyPathArray GetKeyPath (ComponentArray const &in_components)
 
- Static Public Member Functions inherited from HPS::Object
template<typename T >
static intptr_t ClassID ()
 

Detailed Description

The CADModel class is a smart pointer. It is an abstract concept symbolizing the root of the Parasolid import. It is not related to any Parasolid object.

Constructor & Destructor Documentation

◆ CADModel() [1/5]

HPS::Parasolid::CADModel::CADModel ( )

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

◆ CADModel() [2/5]

HPS::Parasolid::CADModel::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 a Parasolid::CADModel object. Otherwise the copy will fail and the resulting Parasolid::CADModel will be invalid.

Parameters
in_thatThe source Component to copy.

◆ CADModel() [3/5]

HPS::Parasolid::CADModel::CADModel ( HPS::CADModel const &  in_that)

This constructor creates a Parasolid::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 a Parasolid::CADModel object. Otherwise the copy will fail and the resulting Parasolid::CADModel will be invalid.

Parameters
in_thatThe source HPS::CADModel to copy.

◆ CADModel() [4/5]

HPS::Parasolid::CADModel::CADModel ( Parasolid::CADModel const &  in_that)

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

Parameters
in_thatThe source Parasolid::CADModel to copy.

◆ CADModel() [5/5]

HPS::Parasolid::CADModel::CADModel ( Parasolid::CADModel &&  in_that)

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

Parameters
in_thatAn rvalue reference to a Parasolid::CADModel to take the underlying object from.

Member Function Documentation

◆ AddEntity()

Component HPS::Parasolid::CADModel::AddEntity ( ParasolidEntity  in_entity_to_add,
FacetTessellationKit const &  in_facet_tessellation,
LineTessellationKit const &  in_line_tessellation,
Component const &  in_owner = Component() 
)

Renders the entity specified, according to the tessellation options provided. Only entities of type PK_CLASS_assembly and PK_CLASS_body can be used with this function.

Parameters
in_entity_to_addThe Parasolid entity to import into HPS.
in_facet_tessellationThe facet tessellation parameters used during import.
in_line_tessellationThe line tessellation parameters used during import.
in_ownerThe component owning which will own the imported entity
Returns
The component created as part of the import of the provided entity.

◆ GetComponentFromEntity()

Component HPS::Parasolid::CADModel::GetComponentFromEntity ( ParasolidEntity  in_entity)

Returns the Component associated with the provided entity.

Parameters
in_entityThe Parasolid entity for which to return a Component.
Returns
The component associated with the passed in entity, or an empty component if no component is associated with in_entity.

◆ ObjectType()

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

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.

Reimplemented from HPS::CADModel.

◆ operator=()

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

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

Parameters
in_thatAn rvalue reference to a Parasolid::CADModel to take the underlying object from.
Returns
A reference to this Parasolid::CADModel.

◆ Tessellate()

void HPS::Parasolid::CADModel::Tessellate ( Parasolid::FacetTessellationKit const &  in_facet_options,
Parasolid::LineTessellationKit const &  in_line_options 
)

Re-tessellate the given CADModel with the provided options.

Parameters
in_facet_optionsThe facet tessellation options to use to generate the new tessellation for this CADModel.
in_line_optionsThe line tessellation options to use to generate the new tessellation for this CADModel.

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