Public Member Functions | List of all members
HPS::CADModel Class Reference

#include <sprk.h>

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

Public Member Functions

 CADModel ()
 
 CADModel (Component const &in_that)
 
 CADModel (CADModel const &in_that)
 
 CADModel (CADModel &&in_that)
 
 CADModel (Model const &in_that)
 
HPS::Type ObjectType () const
 
CADModeloperator= (CADModel const &in_that)=default
 
CADModeloperator= (CADModel &&in_that)
 
Component GetComponentFromKey (Key const &in_key) const
 
ComponentPath GetComponentPath (KeyPath const &in_key_path) const
 
ComponentPath GetComponentPath (SelectionItem const &in_item) const
 
Model GetModel () const
 
FilterArray GetAllFilters () const
 
CaptureArray GetAllCaptures () const
 
FilterArray GetActiveFilters (View const &in_view) const
 
View ActivateDefaultCapture ()
 
void ResetVisibility (Canvas &in_canvas, size_t in_layer=0)
 
- Public Member Functions inherited from HPS::Component
 Component ()
 
 Component (Component const &in_that)
 
 Component (Component &&in_that)
 
virtual ~Component ()
 
Componentoperator= (Component const &in_that)
 
Componentoperator= (Component &&in_that)
 
virtual void Assign (Component const &in_that)
 
bool Equals (Component const &in_that) const
 
bool operator!= (Component const &in_that) const
 
bool operator== (Component const &in_that) const
 
ComponentType GetComponentType () const
 
bool HasComponentType (ComponentType in_mask) const
 
void AddKey (Key const &in_key)
 
KeyArray GetKeys () const
 
void AddOwner (Component &in_owner, IncludeKey const &in_include=IncludeKey())
 
ComponentArray GetOwners () const
 
ComponentArray GetSubcomponents () const
 
ComponentArray GetAllSubcomponents (ComponentType in_type) const
 
void AddReference (Component &in_reference)
 
ComponentArray GetReferrers () const
 
ComponentArray GetReferences () const
 
MetadataArray GetAllMetadata () const
 
Metadata GetMetadata (char const *in_name) const
 
void Delete ()
 
- Public Member Functions inherited from HPS::Sprocket
 Sprocket (Sprocket &&in_that)
 
- Public Member Functions inherited from HPS::Object
Objectoperator= (Object const &other_object)
 
 Object (Object &&in_that)
 
Objectoperator= (Object &&in_that)
 
HPS::Type Type () const
 
virtual bool Empty () const
 
virtual void Reset ()
 
bool HasType (HPS::Type in_mask) const
 
intptr_t GetClassID () const
 
intptr_t GetInstanceID () const
 

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 = 0x00006000, ComponentType::ExchangeDrawingModel = 0x00006001, ComponentType::ExchangeDrawingView = 0x00006002,
  ComponentType::ExchangeDrawingSheet = 0x00006003, ComponentType::ExchangeBasicDrawingBlock = 0x00006004, ComponentType::ExchangeOperatorDrawingBlock = 0x00006005, ComponentType::ExchangePMIMask = 0x00009000,
  ComponentType::ExchangePMI = ExchangePMIMask, ComponentType::ExchangePMIText = 0x00009100, ComponentType::ExchangePMIRichText = 0x00009200, ComponentType::ExchangePMIRoughness = 0x00009300,
  ComponentType::ExchangePMIGDT = 0x00009400, ComponentType::ExchangePMIDatum = 0x00009500, ComponentType::ExchangePMILineWelding = 0x00009600, ComponentType::ExchangePMISpotWelding = 0x00009700,
  ComponentType::ExchangePMIDimension = 0x00009800, ComponentType::ExchangePMIBalloon = 0x00009900, ComponentType::ExchangePMICoordinate = 0x00009a00, ComponentType::ExchangePMIFastener = 0x00009b00,
  ComponentType::ExchangePMILocator = 0x00009c00, ComponentType::ExchangePMIMeasurementPoint = 0x00009d00, ComponentType::ParasolidComponentMask = 0x00010000, ComponentType::ParasolidModelFile = 0x00010001,
  ComponentType::ParasolidAssembly = 0x00010002, ComponentType::ParasolidTopologyMask = 0x00050000, ComponentType::ParasolidTopoBody = 0x00050001, ComponentType::ParasolidTopoRegion = 0x00050002,
  ComponentType::ParasolidTopoShell = 0x00050003, ComponentType::ParasolidTopoFace = 0x00050004, ComponentType::ParasolidTopoLoop = 0x00050005, ComponentType::ParasolidTopoFin = 0x00050006,
  ComponentType::ParasolidTopoEdge = 0x00050007, ComponentType::ParasolidTopoVertex = 0x00050008, ComponentType::DWGComponentMask = 0x00100000, ComponentType::DWGModelFile = 0x00100001,
  ComponentType::DWGLayout = 0x00100002, ComponentType::DWGBlockTable = 0x00100003, ComponentType::DWGBlockTableRecord = 0x00100004, ComponentType::DWGEntity = 0x00100005,
  ComponentType::DWGLayerTable = 0x00100006, ComponentType::DWGLayer = 0x00100007
}
 
- Public Types inherited from HPS::Sprocket
enum  UpdateType { Synchronous, Asynchronous }
 
- 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 represents the root Component for a structured file format.

Constructor & Destructor Documentation

HPS::CADModel::CADModel ( )

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

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

Parameters
in_thatThe source Component to copy.
HPS::CADModel::CADModel ( CADModel const &  in_that)

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

Parameters
in_thatThe source CADModel to copy.
HPS::CADModel::CADModel ( CADModel &&  in_that)

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

Parameters
in_thatAn rvalue reference to a CADModel to take the underlying object from.
HPS::CADModel::CADModel ( Model const &  in_that)

This constructor creates a CADModel object that is associated with the given Model. This will throw an exception if the given Model is not associated with a CADModel.

Parameters
in_thatThe source Model to use to find the associated CADModel.

Member Function Documentation

View HPS::CADModel::ActivateDefaultCapture ( )

Creates a new View object corresponding to the default capture for this CADModel. The View object that is returned will have the corresponding visibility settings, material settings, transformation settings, and camera for the default capture set on it.

Returns
A newly created View object corresponding to this Capture.
FilterArray HPS::CADModel::GetActiveFilters ( View const &  in_view) const

Get a list of the active filters on the given View.

Parameters
in_viewThe View for which to get the active filters.
Returns
A list of the active filters on the given View.
CaptureArray HPS::CADModel::GetAllCaptures ( ) const

Get a list of all captures from all subcomponents for this CADModel.

Returns
A list of all captures from all subcomponents for this CADModel.
FilterArray HPS::CADModel::GetAllFilters ( ) const

Get a list of all filters from all subcomponents for this CADModel.

Returns
A list of all filters from all subcomponents for this CADModel.
Component HPS::CADModel::GetComponentFromKey ( Key const &  in_key) const

Find the Component associated with the given Key (if any).

Parameters
in_keyThe Key from which to find the associated Component.
Returns
The Component associated with the given Key (if any).
ComponentPath HPS::CADModel::GetComponentPath ( KeyPath const &  in_key_path) const

Get the Component path which corresponds to the given KeyPath. The returned path will basically be the Component associated with each key which occurs in the given KeyPath, up to the CADModel. Note that since there are some Component objects for which there is no underlying Key (e.g., a Component representing a CoEdge), these objects will not appear in the returned Component list.

Parameters
in_key_pathThe KeyPath for which to compute the corresponding Component path.
Returns
The Component path corresponding to the given KeyPath.
ComponentPath HPS::CADModel::GetComponentPath ( SelectionItem const &  in_item) const

Get the Component path which corresponds to the given SelectionItem. The returned path will basically be the Component associated with each key which occurs in the KeyPath associated with the SelectionItem, up to the CADModel. Note that since there are some Component objects for which there is no underlying Key (e.g., a Component representing a CoEdge), these objects will not appear in the returned Component list.

Parameters
in_itemThe SelectionItem for which to compute the corresponding Component path.
Returns
The Component path corresponding to the given SelectionItem.
Model HPS::CADModel::GetModel ( ) const

Get the Model associated with this CADModel.

Returns
The Model associated with this CADModel.
HPS::Type HPS::CADModel::ObjectType ( ) const
inlinevirtual

This function returns the type the object, as declared. This does not necessarily give the true type of the underlying object.

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

Reimplemented from HPS::Component.

Reimplemented in HPS::Parasolid::CADModel, and HPS::Exchange::CADModel.

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

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

Parameters
in_thatAn rvalue reference to a CADModel to take the underlying object from.
Returns
A reference to this CADModel.
void HPS::CADModel::ResetVisibility ( Canvas in_canvas,
size_t  in_layer = 0 
)

Resets the visibility in the view specfied by the given Canvas and layer. This will undo any hides, shows or isolates performed on components contained within this CADModel via ComponentPath calls.

Parameters
in_canvasThe Canvas in which to perform the the visibility reset.
in_layerThe layer in the Canvas in which to perform the visibility reset.
See also
ComponentPath::Hide
ComponentPath::Show
ComponentPath::Isolate

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