LineKey
- 
class HPS::LineKey : public HPS::GeometryKey
- The LineKey class is a smart pointer to a database object. It is a handle to a line inserted via SegmentKey::InsertLine. - Public Functions - 
void Consume(LineKit &in_kit)
- Completely replaces all settings on this LineKey with those set on the specified kit and resets the kit. - Parameters
- in_kit – The kit from which to get the settings to replace on this LineKey. 
 
 - 
LineKey &EditPointsByDeletion(size_t in_offset, size_t in_count)
- Removes points from the point list for this LineKey. - Parameters
- in_offset – The offset into the point list for the line at which to start removing points. This value must be such that in_offset<point_count for deletion to succeed. 
- in_count – The number of points to delete from the point list for the line. This value must be such that in_offset+in_count<=point_count for the deletion to succeed. 
 
- Returns
- A reference to this LineKey. 
 
 - 
LineKey &EditPointsByInsertion(size_t in_offset, PointArray const &in_points)
- Adds points to the point list for this LineKey. - Parameters
- in_offset – The offset into the point list for the line at which to insert points. This value must be such that in_offset<point_count for insertion to succeed. 
- in_points – The points to insert into the point list at the specified offset. 
 
- Returns
- A reference to this LineKey. 
 
 - 
LineKey &EditPointsByInsertion(size_t in_offset, size_t in_count, Point const in_points[])
- Adds points to the point list for this LineKey. - Parameters
- in_offset – The offset into the point list for the line at which to insert points. This value must be such that in_offset<point_count for insertion to succeed. 
- in_count – Size of the following array. 
- in_points – The points to insert into the point list at the specified offset. 
 
- Returns
- A reference to this LineKey. 
 
 - 
LineKey &EditPointsByReplacement(size_t in_offset, PointArray const &in_points)
- Replaces points in the point list for this LineKey. - Parameters
- in_offset – The offset into the point list for the line at which to start replacing points. This value must be such that in_offset<point_count for replacement to succeed. 
- in_points – The points to use to replace those in the point list at the specified offset. This size of the array must be such that in_offset+in_points.size()<=point_count for the replacement to succeed. 
 
- Returns
- A reference to this LineKey. 
 
 - 
LineKey &EditPointsByReplacement(size_t in_offset, size_t in_count, Point const in_points[])
- Replaces points in the point list for this LineKey. - Parameters
- in_offset – The offset into the point list for the line at which to start replacing points. This value must be such that in_offset<point_count for replacement to succeed. 
- in_count – Size of the following array. This value must be such that in_offset+in_count<=point_count for the replacement to succeed. 
- in_points – The points to use to replace those in the point list at the specified offset. 
 
- Returns
- A reference to this LineKey. 
 
 - 
size_t GetPointCount() const
- Retrieves the number of points in this line. - Returns
- The number of points in this line. 
 
 - 
LineKey()
- The default constructor creates an uninitialized LineKey object. The Type() function will return Type::None. 
 - 
explicit LineKey(Key const &in_that)
- This constructor creates a LineKey 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 Line key. Otherwise the copy will fail and the resulting LineKey will be invalid. - Parameters
- in_name – The source Key to copy. 
 
 - 
LineKey(LineKey &&in_that)
- The move constructor creates a LineKey by transferring the underlying impl of the rvalue reference to this LineKey thereby avoiding a copy and allocation. - Parameters
- in_that – An rvalue reference to a LineKey to take the impl from. 
 
 - 
LineKey(LineKey const &in_that)
- The copy constructor creates a LineKey object that shares the underlying smart-pointer of the source LineKey. - Parameters
- in_that – The source LineKey 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. 
 
 - 
LineKey &operator=(LineKey &&in_that)
- The move assignment operator transfers the underlying impl of the rvalue reference to this LineKey thereby avoiding a copy. 
 - 
LineKey &operator=(LineKey const &in_that)
- Associate this LineKey with the same underlying impl as the source LineKey. 
 - 
void Set(LineKit const &in_kit)
- Copies the source LineKit into this LineKit. - Parameters
- in_kit – The source LineKit to copy. 
 
 - 
LineKey &SetPointCoordinateSpace(LineCoordinateSpaceArray const &in_spaces)
- Sets the coordinate space to use for each point of this line. The default is Line::CoordinateSpace::Object. - Parameters
- in_spaces – The coordinate spaces for each point in the line. 
- Returns
- A reference to this LineKey. 
 
 - 
LineKey &SetPointCoordinateSpace(size_t in_count, Line::CoordinateSpace const in_spaces[])
- Sets the coordinate space to use for each point of this line. The default is Line::CoordinateSpace::Object. - Parameters
- in_count – Size of the following array. 
- in_spaces – The coordinate spaces for each point in the line. 
 
- Returns
- A reference to this LineKey. 
 
 - 
LineKey &SetPointCoordinateSpace(size_t in_count, size_t const in_indices[], Line::CoordinateSpace const in_spaces[])
- Sets the coordinate space to use for each point of this line. The default is Line::CoordinateSpace::Object. - Parameters
- in_count – The number of points to unset. 
- in_indices – The list of point indices to unset. 
- in_spaces – The coordinate spaces for each point in the line. 
 
- Returns
- A reference to this LineKey. 
 
 - 
LineKey &SetPointCoordinateSpace(SizeTArray const &in_indices, LineCoordinateSpaceArray const &in_spaces)
- Sets the coordinate space to use for each point of this line. The default is Line::CoordinateSpace::Object. - Parameters
- in_indices – The list of point indices to unset. 
- in_spaces – The coordinate spaces for each point in the line. 
 
- Returns
- A reference to this LineKey. 
 
 - 
LineKey &SetPoints(PointArray const &in_points, LineCoordinateSpaceArray const &in_spaces)
- Sets the points for this LineKey. 
 - 
LineKey &SetPoints(size_t in_count, Point const in_points[], Line::CoordinateSpace const in_spaces[])
- Sets the points for this LineKey. 
 - 
bool ShowPointCoordinateSpace(LineCoordinateSpaceArray &out_spaces) const
- Shows the coordinate space that is being used for the points at the specified indices. - Parameters
- out_spaces – The coordinate spaces for each all points on this line. 
- Returns
- true if line coordinates could be retrieved for this line false otherwise. 
 
 - 
bool ShowPointCoordinateSpace(size_t in_count, size_t const in_indices[], LineCoordinateSpaceArray &out_spaces) const
- Shows the coordinate space that is being used for the points at the specified indices. - Parameters
- in_count – The number of points to show. 
- in_indices – The list of point indices to show. 
- out_spaces – The coordinate spaces for each index specified. 
 
- Returns
- true if line coordinates could be retrieved for this line false otherwise. 
 
 - 
bool ShowPointCoordinateSpace(SizeTArray const &in_indices, LineCoordinateSpaceArray &out_spaces) const
- Shows the coordinate space that is being used for the points at the specified indices. - Parameters
- in_indices – The list of point indices to show. 
- out_spaces – The coordinate spaces for each index specified. 
 
- Returns
- true if line coordinates could be retrieved for this line false otherwise. 
 
 - 
bool ShowPoints(PointArray &out_points) const
- Shows the points for this LineKey. - Parameters
- out_points – The points for this LineKey. 
- Returns
- true if points were set, false otherwise. 
 
 - 
bool ShowPoints(PointArray &out_points, LineCoordinateSpaceArray &out_coordinate_spaces) const
- Shows the points for this LineKey. - Parameters
- out_points – The points for this LineKey. 
- out_coordinate_spaces – The coordinate spaces for each point in this line. 
 
- Returns
- true if points were set, false otherwise. 
 
 - 
bool ShowPointsByList(size_t in_count, size_t const in_indices[], PointArray &out_points) const
- Show a subset of the points for this LineKey by list. - Parameters
- in_count – The number of points to show. 
- in_indices – The list of point indices to show. 
- out_points – The requested points for this LineKey. 
 
- Returns
- true if all requested points were set, false otherwise. 
 
 - 
bool ShowPointsByList(SizeTArray const &in_indices, PointArray &out_points) const
- Show a subset of the points for this LineKey by list. - Parameters
- in_indices – The list of point indices to show. 
- out_points – The requested points for this LineKey. 
 
- Returns
- true if all requested points were set, false otherwise. 
 
 - 
bool ShowPointsByRange(size_t in_start_index, size_t in_count, PointArray &out_points) const
- Show a subset of the points for this LineKey by range. - Parameters
- in_start_index – The first point to show. 
- in_count – The number of points to show. 
- out_points – The requested points for this LineKey. 
 
- Returns
- true if all requested points were set, false otherwise. 
 
 - 
LineKey &UnsetPointCoordinateSpace()
- Unsets the coordinate space for all points on this line back to Coordinate::Space::Object. - Returns
- A reference to this LineKey. 
 
 - 
LineKey &UnsetPointCoordinateSpace(size_t in_count, size_t const in_indices[])
- Unsets the coordinate space for specified points on this line back to Coordinate::Space::Object. - Parameters
- in_count – The number of points to unset. 
- in_indices – The list of point indices to unset. 
 
- Returns
- A reference to this LineKey. 
 
 - 
LineKey &UnsetPointCoordinateSpace(SizeTArray const &in_indices)
- Unsets the coordinate space for specified points on this line back to Coordinate::Space::Object. - Parameters
- in_indices – The list of point indices to unset. 
- Returns
- A reference to this LineKey. 
 
 - 
~LineKey()
 - Public Static Attributes - 
static const HPS::Type staticType = HPS::Type::LineKey
 
- 
void Consume(LineKit &in_kit)
