The InfiniteLineKey class is a smart pointer to a database object. More...
#include <hps.h>
Public Member Functions | |
InfiniteLineKey () | |
The default constructor creates an uninitialized InfiniteLineKey object. More... | |
InfiniteLineKey (Key const &in_that) | |
This constructor creates an InfiniteLineKey object that shares the underlying smart-pointer of the source Key. More... | |
InfiniteLineKey (InfiniteLineKey const &in_that) | |
The copy constructor creates an InfiniteLineKey object that shares the underlying smart-pointer of the source InfiniteLineKey. More... | |
InfiniteLineKey & | operator= (InfiniteLineKey const &in_that) |
Associate this InfiniteLineKey with the same underlying impl as the source InfiniteLineKey. More... | |
InfiniteLineKey (InfiniteLineKey &&in_that) | |
The move constructor creates an InfiniteLineKey by transferring the underlying impl of the rvalue reference to this InfiniteLineKey thereby avoiding a copy and allocation. More... | |
InfiniteLineKey & | operator= (InfiniteLineKey &&in_that) |
The move assignment operator transfers the underlying impl of the rvalue reference to this InfiniteLineKey thereby avoiding a copy. More... | |
~InfiniteLineKey () | |
HPS::Type | ObjectType () const |
void | Consume (InfiniteLineKit &in_kit) |
Completely replaces all settings on this InfiniteLineKey with those set on the specified kit and resets the kit. More... | |
void | Set (InfiniteLineKit const &in_kit) |
Replace those settings on this InfiniteLineKey with those set on the specified kit. More... | |
void | Show (InfiniteLineKit &out_kit) const |
Copy the contents of this InfiniteLineKey into the specified kit. More... | |
InfiniteLineKey & | SetFirst (Point const &in_first) |
Sets the first point for this InfiniteLineKey. More... | |
InfiniteLineKey & | SetSecond (Point const &in_second) |
Sets the second point for this InfiniteLineKey. More... | |
InfiniteLineKey & | SetType (InfiniteLine::Type in_type) |
Sets the type of this InfiniteLineKey. More... | |
bool | ShowFirst (Point &out_first) const |
Shows the first point for this InfiniteLineKey. More... | |
bool | ShowSecond (Point &out_second) const |
Shows the second point for this InfiniteLineKey. More... | |
bool | ShowType (InfiniteLine::Type &out_type) const |
Shows the type of this InfiniteLineKey. More... | |
size_t | ShowReferrers (SegmentKeyArray &out_segments) const |
Shows the all the segments which contain references to this key. More... | |
size_t | ShowReferrers (ReferenceKeyArray &out_references) const |
Shows the all the references to this key. More... | |
GeometryKey & | SetPriority (int in_priority) |
Assigns a drawing priority value to the geometry. More... | |
GeometryKey & | UnsetPriority () |
Removes the drawing priority setting. More... | |
bool | ShowPriority (int &out_priority) const |
Shows the drawing priority. More... | |
GeometryKey & | SetUserData (intptr_t in_index, size_t in_bytes, byte const in_data[]) |
Sets user data on this key. More... | |
GeometryKey & | SetUserData (intptr_t in_index, ByteArray const &in_data) |
Sets user data on this key. More... | |
GeometryKey & | SetUserData (IntPtrTArray const &in_indices, ByteArrayArray const &in_data) |
Sets user data on this key. More... | |
GeometryKey & | UnsetUserData (intptr_t in_index) |
Removes the user data at the given index from this key. More... | |
GeometryKey & | UnsetUserData (size_t in_count, intptr_t const in_indices[]) |
Removes the user data at the given indices from this key. More... | |
GeometryKey & | UnsetUserData (IntPtrTArray const &in_indices) |
Removes the user data at the given indices from this key. More... | |
GeometryKey & | UnsetAllUserData () |
Removes all user data from this key. More... | |
size_t | ShowUserDataCount () const |
Get the number of user data indices set on this key. More... | |
bool | ShowUserDataIndices (IntPtrTArray &out_indices) const |
Shows the indices of all user data set on this key. More... | |
bool | ShowUserData (intptr_t in_index, ByteArray &out_data) const |
Shows the user data at a given index for this key. More... | |
bool | ShowUserData (IntPtrTArray &out_indices, ByteArrayArray &out_data) const |
Shows all user data for this key. More... | |
bool | ShowBounding (BoundingKit &out_kit) const |
Shows the bounding of this geometry. More... | |
bool | HasOwner () const |
SegmentKey | Up () const |
SegmentKey | Owner () const |
void | Delete () |
Removes the database object referred to by this key. More... | |
void | MoveTo (SegmentKey const &in_new_owner) |
Moves the database object referred to by this key into a new containing segment pointed to by in_new_owner. More... | |
Key | CopyTo (SegmentKey const &in_destination) const |
Copies the database object referred to by this key into a segment pointed to by in_destination. More... | |
virtual void | Assign (Key const &in_that) |
Share the underlying smart-pointer of the Key source. More... | |
bool | Equals (Key const &in_that) const |
Determines whether the database objects pointed to by this key and in_that are the same. More... | |
bool | operator!= (Key const &in_that) const |
Determines whether the database objects pointed to by this key and in_that are the same. More... | |
bool | operator== (Key const &in_that) const |
Determines whether the database objects pointed to by this key and in_that are the same. More... | |
size_t | GetHash () const |
Returns a hash code for the key. More... | |
virtual HPS::Type | Type () const |
This function returns the true type of the underlying object. More... | |
virtual bool | Empty () const |
Indicates whether this object has any values set on it. 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 | |
template<typename T > | |
static intptr_t | ClassID () |
Unique identifier for this class. More... | |
Static Public Attributes | |
static const HPS::Type | staticType = HPS::Type::InfiniteLineKey |
The InfiniteLineKey class is a smart pointer to a database object.
It is a handle to an infinite line or ray inserted via SegmentKey::InsertInfiniteLine.
HPS::InfiniteLineKey::InfiniteLineKey | ( | ) |
The default constructor creates an uninitialized InfiniteLineKey object.
The Type() function will return Type::None.
|
explicit |
This constructor creates an InfiniteLineKey object that shares the underlying smart-pointer of the source Key.
The copy will only be successful if the source key is really an upcast of an InfiniteLine key. Otherwise the copy will fail and the resulting InfiniteLineKey will be invalid.
in_that | The source Key to copy. |
HPS::InfiniteLineKey::InfiniteLineKey | ( | InfiniteLineKey const & | in_that | ) |
The copy constructor creates an InfiniteLineKey object that shares the underlying smart-pointer of the source InfiniteLineKey.
in_that | The source InfiniteLineKey to copy. |
HPS::InfiniteLineKey::InfiniteLineKey | ( | InfiniteLineKey && | in_that | ) |
The move constructor creates an InfiniteLineKey by transferring the underlying impl of the rvalue reference to this InfiniteLineKey thereby avoiding a copy and allocation.
in_that | An rvalue reference to a InfiniteLineKey to take the impl from. |
HPS::InfiniteLineKey::~InfiniteLineKey | ( | ) |
|
virtualinherited |
|
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.
void HPS::InfiniteLineKey::Consume | ( | InfiniteLineKit & | in_kit | ) |
Completely replaces all settings on this InfiniteLineKey with those set on the specified kit and resets the kit.
in_kit | The kit from which to get the settings to replace on this InfiniteLineKey. |
|
inherited |
Copies the database object referred to by this key into a segment pointed to by in_destination.
|
inherited |
Removes the database object referred to by this key.
|
inlinevirtualinherited |
Indicates whether this object has any values set on it.
Reimplemented in HPS::STL::ImportResultsKit, HPS::STL::ImportOptionsKit, HPS::OBJ::ImportResultsKit, HPS::OBJ::ImportOptionsKit, HPS::Hardcopy::File::ExportOptionsKit, HPS::Stream::ExportOptionsKit, HPS::Stream::ImportResultsKit, HPS::Stream::ImportOptionsKit, HPS::PointCloud::ImportOptionsKit, HPS::PointCloud::ImportResultsKit, HPS::UpdateOptionsKit, HPS::HighlightSearchOptionsKit, HPS::HighlightOptionsKit, HPS::SelectionOptionsKit, HPS::SearchOptionsKit, HPS::CutGeometryGatheringOptionsKit, HPS::ShapeKit, HPS::ShaderKit, HPS::Shader::ImportOptionsKit, HPS::ImageKit, HPS::Image::ImportOptionsKit, HPS::Image::ExportOptionsKit, HPS::TextureOptionsKit, HPS::LinePatternKit, HPS::LinePatternParallelKit, HPS::LinePatternOptionsKit, HPS::GlyphKit, HPS::ApplicationWindowOptionsKit, HPS::OffScreenWindowOptionsKit, HPS::StandAloneWindowOptionsKit, HPS::GridKit, HPS::PolygonKit, HPS::MeshKit, HPS::ShellKit, HPS::ShellRelationResultsKit, HPS::ShellRelationOptionsKit, HPS::ShellOptimizationOptionsKit, HPS::TextKit, HPS::EllipticalArcKit, HPS::EllipseKit, HPS::TrimKit, HPS::NURBSSurfaceKit, HPS::NURBSCurveKit, HPS::SpotlightKit, HPS::InfiniteLineKit, HPS::CuttingSectionKit, HPS::CircularWedgeKit, HPS::CircularArcKit, HPS::CircleKit, HPS::SphereKit, HPS::CylinderKit, HPS::DistantLightKit, HPS::MarkerKit, HPS::LineKit, HPS::AttributeLockKit, HPS::FontInfoState, HPS::WindowInfoKit, HPS::DebuggingKit, HPS::SubwindowKit, HPS::ContourLineKit, HPS::VisualEffectsKit, HPS::TransformMaskKit, HPS::PostProcessEffectsKit, HPS::DrawingAttributeKit, HPS::HiddenLineAttributeKit, HPS::PerformanceKit, HPS::NURBSSurfaceAttributeKit, HPS::MaterialKit, HPS::MaterialMappingKit, HPS::MatrixKit, HPS::CurveAttributeKit, HPS::EdgeAttributeKit, HPS::LineAttributeKit, HPS::TextAttributeKit, HPS::CuttingSectionAttributeKit, HPS::CylinderAttributeKit, HPS::LightingAttributeKit, HPS::SphereAttributeKit, HPS::MarkerAttributeKit, HPS::CullingKit, HPS::ColorInterpolationKit, HPS::TransparencyKit, HPS::SelectabilityKit, HPS::CameraKit, HPS::VisibilityKit, HPS::BoundingKit, HPS::SegmentOptimizationOptionsKit, HPS::Publish::ExportOptionsKit, HPS::Publish::TextFieldKit, HPS::Publish::SignatureFieldKit, HPS::Publish::DropDownListKit, HPS::Exchange::TessellationOptionsKit, HPS::Publish::ListBoxKit, HPS::Exchange::ExportSTEPOptionsKit, HPS::Exchange::ExportParasolidOptionsKit, HPS::Publish::RadioButtonKit, HPS::Exchange::ExportIGESOptionsKit, HPS::Exchange::ExportXMLOptionsKit, HPS::Publish::CheckBoxKit, HPS::Exchange::ExportU3DOptionsKit, HPS::Exchange::ExportSTLOptionsKit, HPS::Publish::ButtonKit, HPS::Exchange::ExportPRCOptionsKit, HPS::Publish::LinkKit, HPS::Exchange::ExportJTOptionsKit, HPS::Publish::SlideTableKit, HPS::Exchange::ExportACISOptionsKit, HPS::Publish::TableKit, HPS::Exchange::Export3MFOptionsKit, HPS::Publish::ImageKit, HPS::Publish::TextKit, HPS::Exchange::ModelFileImportOptionsKit, HPS::Publish::ViewKit, HPS::Exchange::TranslationOptionsKit, HPS::Publish::ArtworkKit, HPS::Publish::AnnotationKit, HPS::ComponentPath, HPS::Exchange::ImportOptionsKit, HPS::Parasolid::ExportOptionsKit, HPS::Exchange::NURBSConversionOptionsKit, HPS::Parasolid::LineTessellationKit, HPS::Exchange::Configuration, HPS::Publish::PageKit, HPS::Parasolid::FacetTessellationKit, HPS::Publish::DocumentKit, HPS::Parasolid::ImportOptionsKit, HPS::DWG::ImportOptionsKit, HPS::OOC::ImportOptionsKit, HPS::Sketchup::ImportOptionsKit, and HPS::Sketchup::ImportResultsKit.
|
inherited |
Determines whether the database objects pointed to by this key and in_that are the same.
Empty keys (when key.Empty() returns true) are never equal to any key, even when the key is compared against itself (they act analogously to NaN comparisons in this case.)
|
inherited |
Returns a unique identifier that is shared by all objects of the same class.
|
inherited |
Returns a hash code for the key.
|
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.
|
inherited |
|
inherited |
|
inherited |
Moves the database object referred to by this key into a new containing segment pointed to by in_new_owner.
|
inlinevirtual |
Reimplemented from HPS::GeometryKey.
|
inherited |
Determines whether the database objects pointed to by this key and in_that are the same.
InfiniteLineKey& HPS::InfiniteLineKey::operator= | ( | InfiniteLineKey const & | in_that | ) |
Associate this InfiniteLineKey with the same underlying impl as the source InfiniteLineKey.
in_that | The source InfiniteLineKey for the assignment. |
InfiniteLineKey& HPS::InfiniteLineKey::operator= | ( | InfiniteLineKey && | in_that | ) |
The move assignment operator transfers the underlying impl of the rvalue reference to this InfiniteLineKey thereby avoiding a copy.
in_that | An rvalue reference to an InfiniteLineKey to take the impl from. |
|
inherited |
Determines whether the database objects pointed to by this key and in_that are the same.
|
inherited |
|
virtualinherited |
Resets this object to its initial, uninitialized state.
Reimplemented in HPS::EventHandler, HPS::EventDispatcher, HPS::World, HPS::HighlightSearchResults, HPS::HighlightSearchResultsIterator, HPS::SelectionResults, HPS::SelectionResultsIterator, HPS::FontSearchResults, HPS::FontSearchResultsIterator, HPS::SearchResults, and HPS::SearchResultsIterator.
void HPS::InfiniteLineKey::Set | ( | InfiniteLineKit const & | in_kit | ) |
Replace those settings on this InfiniteLineKey with those set on the specified kit.
in_kit | The kit from which to get the settings to replace on this InfiniteLineKey. |
InfiniteLineKey& HPS::InfiniteLineKey::SetFirst | ( | Point const & | in_first | ) |
Sets the first point for this InfiniteLineKey.
in_first | The first point for this InfiniteLineKey. If the type is InfiniteLine::Type::Ray, this will be the point at which the ray starts. |
|
inherited |
Assigns a drawing priority value to the geometry.
It affects the order in which the geometry is visited if and only if the rendering algorithm is set to Priority. The geometry has a default drawing priority assigned, based on the order of insertion.
in_priority | The drawing priority; higher priority items are drawn on top of lower priority items. |
InfiniteLineKey& HPS::InfiniteLineKey::SetSecond | ( | Point const & | in_second | ) |
Sets the second point for this InfiniteLineKey.
in_second | The second point for this InfiniteLineKey. If the type is InfiniteLine::Type::Ray, this will be the point through which the ray passes. |
InfiniteLineKey& HPS::InfiniteLineKey::SetType | ( | InfiniteLine::Type | in_type | ) |
Sets the type of this InfiniteLineKey.
in_type | The type of this InfiniteLineKey. |
|
inherited |
Sets user data on this key.
in_index | The index of the user data to set. |
in_bytes | The number of bytes of user data to set. |
in_data | The bytes of user data to set. |
|
inherited |
Sets user data on this key.
in_index | The index of the user data to set. |
in_data | The bytes of user data to set. |
|
inherited |
Sets user data on this key.
in_indices | An array of user data indices to set. |
in_data | An array of bytes of user data to set. |
void HPS::InfiniteLineKey::Show | ( | InfiniteLineKit & | out_kit | ) | const |
Copy the contents of this InfiniteLineKey into the specified kit.
out_kit | The kit to populate with the contents of this InfiniteLineKey. |
|
inherited |
Shows the bounding of this geometry.
out_kit | The BoundingKit that is set on this GeometryKey |
bool HPS::InfiniteLineKey::ShowFirst | ( | Point & | out_first | ) | const |
Shows the first point for this InfiniteLineKey.
out_first | The first point for this InfiniteLineKey. |
|
inherited |
Shows the drawing priority.
out_priority | The drawing priority; higher priority items are drawn on top of lower priority items. |
|
inherited |
Shows the all the segments which contain references to this key.
Note that while a segment may only appear once in the returned array, that segment could have multiple references to this key.
out_segments | The list of segments which contains references to this key. |
|
inherited |
Shows the all the references to this key.
out_references | The list of all references to this key. |
bool HPS::InfiniteLineKey::ShowSecond | ( | Point & | out_second | ) | const |
Shows the second point for this InfiniteLineKey.
out_second | The second point for this InfiniteLineKey. |
bool HPS::InfiniteLineKey::ShowType | ( | InfiniteLine::Type & | out_type | ) | const |
Shows the type of this InfiniteLineKey.
out_type | The type of this InfiniteLineKey. |
|
inherited |
Shows the user data at a given index for this key.
in_index | The index of the user data to show. |
out_data | The user data at the given index. |
|
inherited |
Shows all user data for this key.
out_indices | An array of all user data indices set on this key. |
out_data | An array of all user data set on this key. |
|
inherited |
Get the number of user data indices set on this key.
|
inherited |
Shows the indices of all user data set on this key.
out_indices | The user data indices set on this key. |
|
virtualinherited |
This function returns the true type of the underlying object.
This function is useful for finding the type of smart pointer objects that have been cast to more generic types.
Reimplemented in HPS::UpdateOptionsControl, HPS::HighlightControl, HPS::SelectionOptionsControl, HPS::OffScreenWindowOptionsControl, HPS::ApplicationWindowOptionsControl, HPS::StandAloneWindowOptionsControl, HPS::AttributeLockControl, HPS::WindowInfoControl, HPS::DebuggingControl, HPS::SubwindowControl, HPS::ContourLineControl, HPS::VisualEffectsControl, HPS::TransformMaskControl, HPS::PostProcessEffectsControl, HPS::DrawingAttributeControl, HPS::HiddenLineAttributeControl, HPS::PerformanceControl, HPS::NURBSSurfaceAttributeControl, HPS::ConditionControl, HPS::StyleControl, HPS::PortfolioControl, HPS::MaterialMappingControl, HPS::TextureMatrixControl, HPS::ModellingMatrixControl, HPS::CurveAttributeControl, HPS::EdgeAttributeControl, HPS::LineAttributeControl, HPS::TextAttributeControl, HPS::CuttingSectionAttributeControl, HPS::CylinderAttributeControl, HPS::LightingAttributeControl, HPS::SphereAttributeControl, HPS::MarkerAttributeControl, HPS::CullingControl, HPS::ColorInterpolationControl, HPS::TransparencyControl, HPS::SelectabilityControl, HPS::CameraControl, HPS::VisibilityControl, HPS::BoundingControl, HPS::Kit, and HPS::Control.
|
inherited |
Removes all user data from this key.
|
inherited |
Removes the drawing priority setting.
|
inherited |
Removes the user data at the given index from this key.
in_index | The index of the user data to remove. |
|
inherited |
Removes the user data at the given indices from this key.
in_count | The size of the following array. |
in_indices | The indices of the user data to remove. |
|
inherited |
Removes the user data at the given indices from this key.
in_indices | The indices of the user data to remove. |
|
inherited |
|
static |