The GridKey class is a smart pointer to a database object. More...
#include <hps.h>
Public Member Functions | |
GridKey () | |
The default constructor creates an uninitialized GridKey object. More... | |
GridKey (Key const &in_that) | |
This constructor creates an GridKey object that shares the underlying smart-pointer of the source Key. More... | |
GridKey (GridKey const &in_that) | |
The copy constructor creates a GridKey object that shares the underlying smart-pointer of the source GridKey. More... | |
GridKey (GridKey &&in_that) | |
The move constructor creates a GridKey by transferring the underlying object of the rvalue reference to this GridKey. More... | |
GridKey & | operator= (GridKey const &in_that) |
Associate this GridKey with the same underlying object as the source GridKey. More... | |
GridKey & | operator= (GridKey &&in_that) |
The move assignment operator transfers the underlying object of the rvalue reference to this GridKey. More... | |
~GridKey () | |
HPS::Type | ObjectType () const |
void | Consume (GridKit &in_kit) |
Completely replaces all settings on this GridKey with those set on the specified kit and resets the kit. More... | |
void | Set (GridKit const &in_kit) |
Replace those settings on this GridKey with those set on the specified kit. More... | |
void | Show (GridKit &out_kit) const |
Copy the contents of this GridKey into the specified kit. More... | |
GridKey & | SetType (Grid::Type in_type) |
Sets the type of this GridKey. More... | |
GridKey & | SetOrigin (Point const &in_origin) |
Sets the origin for this GridKey. More... | |
GridKey & | SetFirstPoint (Point const &in_first_point) |
Sets the first reference point for this GridKey. More... | |
GridKey & | SetSecondPoint (Point const &in_second_point) |
Sets the second reference point for this GridKey. More... | |
GridKey & | SetFirstCount (int in_first_count) |
Sets the first reference count for this GridKey, i.e., the number of grid elements along the vector determined by the first reference point. More... | |
GridKey & | SetSecondCount (int in_second_count) |
Sets the second reference count for this GridKey, i.e., the number of grid elements along the vector determined by the second reference point. More... | |
bool | ShowType (Grid::Type &out_type) const |
Shows the type for this GridKey. More... | |
bool | ShowOrigin (Point &out_origin) const |
Shows the origin for this GridKey. More... | |
bool | ShowFirstPoint (Point &out_first_point) const |
Shows the first reference point for this GridKey. More... | |
bool | ShowSecondPoint (Point &out_second_point) const |
Shows the second reference point for this GridKey. More... | |
bool | ShowFirstCount (int &out_first_count) const |
Shows the first reference count for this GridKey. More... | |
bool | ShowSecondCount (int &out_second_count) const |
Shows the second reference count for this GridKey. 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::GridKey |
The GridKey class is a smart pointer to a database object.
It is a handle to a grid created by SegmentKey::InsertGrid.
HPS::GridKey::GridKey | ( | ) |
The default constructor creates an uninitialized GridKey object.
The Type() function will return Type::None.
|
explicit |
This constructor creates an GridKey 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 a grid key. Otherwise the copy will fail and the resulting GridKey will be invalid.
in_that | The source Key to copy. |
HPS::GridKey::GridKey | ( | GridKey const & | in_that | ) |
HPS::GridKey::GridKey | ( | GridKey && | in_that | ) |
HPS::GridKey::~GridKey | ( | ) |
|
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::GridKey::Consume | ( | GridKit & | in_kit | ) |
|
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.
|
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::GridKey::Set | ( | GridKit const & | in_kit | ) |
GridKey& HPS::GridKey::SetFirstCount | ( | int | in_first_count | ) |
Sets the first reference count for this GridKey, i.e., the number of grid elements along the vector determined by the first reference point.
If the type of the grid is Grid::Type::Quadrilateral, there are three type of behavior depending on if the count is greater than zero, less than zero, or equal to zero. If the count is greater than zero, the count determines the finite number of grid lines which will intersect with the vector determined by the first reference point. If the count is less than zero, the count determines the finite number of grid lines which will intersect with the vector determined by the first reference point and additionally that same number of intersections along the negation of that vector. Lastly, if the count is zero, the grid will extend infinitely along the vector determined by the first reference point and its negation. If the type of the grid is Grid::Type::Radial, there are two types of behavior depending on if the count is greater than zero or equal to zero. If the count is greater than zero, it determines the finite number of circular arcs which will intersect with the radial vectors. If the count is equal to zero, there will be an infinite number of intersections along the radial arcs. Negative counts are invalid in this case.
in_first_count | The count of the number of grid elements along the vector determined by the first reference point. |
Sets the first reference point for this GridKey.
If the type of the grid is Grid::Type::Quadrilateral, this defines the first point along one of the vectors defining the grid (the other vector is determined by the second point). It also determines the spacing between the grid lines along the vector. If the type of the grid is Grid::Type::Radial, this defines the first point along the radius vector which will intersect with the circular grid arcs.
in_first_point | The first reference point for this GridKey. |
|
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. |
GridKey& HPS::GridKey::SetSecondCount | ( | int | in_second_count | ) |
Sets the second reference count for this GridKey, i.e., the number of grid elements along the vector determined by the second reference point.
If the type of the grid is Grid::Type::Quadrilateral, there are three type of behavior depending on if the count is greater than zero, less than zero, or equal to zero. If the count is greater than zero, the count determines the finite number of grid lines which will intersect with the vector determined by the second reference point. If the count is less than zero, the count determines the finite number of grid lines which will intersect with the vector determined by the second reference point and additionally that same number of intersections along the negation of that vector. Lastly, if the count is zero, the grid will extend infinitely along the vector determined by the second reference point and its negation. If the type of the grid is Grid::Type::Radial, the count determines the number of radial vectors for the grid.
in_second_count | The count of the number of grid elements along the vector determined by the second reference point. |
Sets the second reference point for this GridKey.
If the type of the grid Grid::Type::Quadrilateral, this defines the first point along the second vector defining the grid (the other vector is determined by the first point). It also determines the spacing between the grid lines along the vector. If the type of the grid is Grid::Type::Radial, this defines the first point on the first circular arc which intersects with the radial vectors, and determines the spacing of the arcs along the radial vectors.
in_second_point | The second reference point for this GridKey. |
GridKey& HPS::GridKey::SetType | ( | Grid::Type | in_type | ) |
|
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::GridKey::Show | ( | GridKit & | out_kit | ) | const |
|
inherited |
Shows the bounding of this geometry.
out_kit | The BoundingKit that is set on this GeometryKey |
bool HPS::GridKey::ShowFirstCount | ( | int & | out_first_count | ) | const |
bool HPS::GridKey::ShowFirstPoint | ( | Point & | out_first_point | ) | const |
bool HPS::GridKey::ShowOrigin | ( | Point & | out_origin | ) | const |
|
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::GridKey::ShowSecondCount | ( | int & | out_second_count | ) | const |
bool HPS::GridKey::ShowSecondPoint | ( | Point & | out_second_point | ) | const |
bool HPS::GridKey::ShowType | ( | Grid::Type & | out_type | ) | const |
|
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 |