#include <hps.h>

Inheritance diagram for HPS::SegmentKey:
HPS::Key HPS::Object HPS::WindowKey HPS::ApplicationWindowKey HPS::OffScreenWindowKey HPS::StandAloneWindowKey

Public Member Functions

SegmentKey Down (char const *in_segment_name, bool in_create_if_not_present=false) const
 
size_t Find (Search::Type in_request, Search::Space in_search_space, SearchResults &out_results) const
 
size_t Find (SearchTypeArray const &in_requests, Search::Space in_search_space, SearchResults &out_results) const
 
size_t Find (size_t in_types_count, Search::Type const in_requests [], Search::Space in_search_space, SearchResults &out_results) const
 
size_t Find (SearchOptionsKit const &in_options, SearchResults &out_results) const
 
size_t Find (SearchOptionsKit const &in_options) const
 
void Flush (Search::Type in_type_to_remove=Search::Type::Everything, Search::Space in_search_space=Search::Space::SegmentOnly)
 
void Flush (SearchTypeArray const &in_types_to_remove, Search::Space in_search_space=Search::Space::SegmentOnly)
 
void Flush (size_t in_types_count, Search::Type const in_types_to_remove [], Search::Space in_search_space=Search::Space::SegmentOnly)
 
AttributeLockControl GetAttributeLockControl ()
 
AttributeLockControl const GetAttributeLockControl () const
 
BoundingControl GetBoundingControl ()
 
BoundingControl const GetBoundingControl () const
 
CameraControl GetCameraControl ()
 
CameraControl const GetCameraControl () const
 
ColorInterpolationControl GetColorInterpolationControl ()
 
ColorInterpolationControl const GetColorInterpolationControl () const
 
ConditionControl GetConditionControl ()
 
ConditionControl const GetConditionControl () const
 
ContourLineControl GetContourLineControl ()
 
ContourLineControl const GetContourLineControl () const
 
CullingControl GetCullingControl ()
 
CullingControl const GetCullingControl () const
 
CurveAttributeControl GetCurveAttributeControl ()
 
CurveAttributeControl const GetCurveAttributeControl () const
 
CuttingSectionAttributeControl GetCuttingSectionAttributeControl ()
 
CuttingSectionAttributeControl const GetCuttingSectionAttributeControl () const
 
CylinderAttributeControl GetCylinderAttributeControl ()
 
CylinderAttributeControl const GetCylinderAttributeControl () const
 
DrawingAttributeControl GetDrawingAttributeControl ()
 
DrawingAttributeControl const GetDrawingAttributeControl () const
 
EdgeAttributeControl GetEdgeAttributeControl ()
 
EdgeAttributeControl const GetEdgeAttributeControl () const
 
HiddenLineAttributeControl GetHiddenLineAttributeControl ()
 
HiddenLineAttributeControl const GetHiddenLineAttributeControl () const
 
LightingAttributeControl GetLightingAttributeControl ()
 
LightingAttributeControl const GetLightingAttributeControl () const
 
LineAttributeControl GetLineAttributeControl ()
 
LineAttributeControl const GetLineAttributeControl () const
 
MarkerAttributeControl GetMarkerAttributeControl ()
 
MarkerAttributeControl const GetMarkerAttributeControl () const
 
MaterialMappingControl GetMaterialMappingControl ()
 
MaterialMappingControl const GetMaterialMappingControl () const
 
ModellingMatrixControl GetModellingMatrixControl ()
 
ModellingMatrixControl const GetModellingMatrixControl () const
 
NURBSSurfaceAttributeControl GetNURBSSurfaceAttributeControl ()
 
NURBSSurfaceAttributeControl const GetNURBSSurfaceAttributeControl () const
 
PerformanceControl GetPerformanceControl ()
 
PerformanceControl const GetPerformanceControl () const
 
PortfolioControl GetPortfolioControl ()
 
PortfolioControl const GetPortfolioControl () const
 
SelectabilityControl GetSelectabilityControl ()
 
SelectabilityControl const GetSelectabilityControl () const
 
SphereAttributeControl GetSphereAttributeControl ()
 
SphereAttributeControl const GetSphereAttributeControl () const
 
StyleControl GetStyleControl ()
 
StyleControl const GetStyleControl () const
 
SubwindowControl GetSubwindowControl ()
 
SubwindowControl const GetSubwindowControl () const
 
TextAttributeControl GetTextAttributeControl ()
 
TextAttributeControl const GetTextAttributeControl () const
 
TextureMatrixControl GetTextureMatrixControl ()
 
TextureMatrixControl const GetTextureMatrixControl () const
 
TransformMaskControl GetTransformMaskControl ()
 
TransformMaskControl const GetTransformMaskControl () const
 
TransparencyControl GetTransparencyControl ()
 
TransparencyControl const GetTransparencyControl () const
 
VisibilityControl GetVisibilityControl ()
 
VisibilityControl const GetVisibilityControl () const
 
VisualEffectsControl GetVisualEffectsControl ()
 
VisualEffectsControl const GetVisualEffectsControl () const
 
IncludeKey IncludeSegment (SegmentKey const &in_seg)
 
IncludeKey IncludeSegment (SegmentKey const &in_seg, ConditionalExpression const &in_conditional)
 
CircleKey InsertCircle (CircleKit const &in_kit)
 
CircleKey InsertCircle (Point const &in_start, Point const &in_middle, Point const &in_end)
 
CircleKey InsertCircle (Point const &in_center, float in_radius, Vector const &in_normal)
 
CircularArcKey InsertCircularArc (CircularArcKit const &in_kit)
 
CircularArcKey InsertCircularArc (Point const &in_start, Point const &in_middle, Point const &in_end)
 
CircularWedgeKey InsertCircularWedge (CircularWedgeKit const &in_kit)
 
CircularWedgeKey InsertCircularWedge (Point const &in_start, Point const &in_middle, Point const &in_end)
 
CuttingSectionKey InsertCuttingSection (Plane const &in_plane)
 
CuttingSectionKey InsertCuttingSection (CuttingSectionKit const &in_kit)
 
CuttingSectionKey InsertCuttingSection (PlaneArray const &in_planes)
 
CuttingSectionKey InsertCuttingSection (size_t in_planes_count, Plane const in_planes [])
 
CylinderKey InsertCylinder (CylinderKit const &in_kit)
 
CylinderKey InsertCylinder (size_t in_pcount, Point const in_points[], size_t in_rcount, float const in_radii [], Cylinder::Capping in_caps=Cylinder::Capping::Both)
 
CylinderKey InsertCylinder (PointArray const &in_points, FloatArray const &in_radii, Cylinder::Capping in_caps=Cylinder::Capping::Both)
 
CylinderKey InsertCylinder (Point const &in_point1, Point const &in_point2, float in_radius, Cylinder::Capping in_caps=Cylinder::Capping::Both)
 
DistantLightKey InsertDistantLight (Vector const &in_direction)
 
DistantLightKey InsertDistantLight (DistantLightKit const &in_kit)
 
EllipseKey InsertEllipse (EllipseKit const &in_kit)
 
EllipseKey InsertEllipse (Point const &in_center, Point const &in_major, Point const &in_minor)
 
EllipticalArcKey InsertEllipticalArc (EllipticalArcKit const &in_kit)
 
EllipticalArcKey InsertEllipticalArc (Point const &in_center, Point const &in_major, Point const &in_minor, float in_start, float in_end)
 
GridKey InsertGrid (GridKit const &in_kit)
 
GridKey InsertGrid (Point const &in_origin, Point const &in_first_point=Point(1, 0, 0), Point const &in_second_point=Point(0, 1, 0), int in_first_count=0, int in_second_count=0, Grid::Type in_type=Grid::Type::Quadrilateral)
 
InfiniteLineKey InsertInfiniteLine (InfiniteLineKit const &in_kit)
 
InfiniteLineKey InsertInfiniteLine (Point const &in_first, Point const &in_second, InfiniteLine::Type in_type)
 
LineKey InsertLine (LineKit const &in_kit)
 
LineKey InsertLine (size_t in_count, Point const in_pts[])
 
LineKey InsertLine (PointArray const &in_pts)
 
LineKey InsertLine (Point const &pt1, Point const &pt2)
 
LineKey InsertLineFromGeometry (CircleKey const &in_circle, float in_deviation=-1.0f)
 
LineKey InsertLineFromGeometry (CircularArcKey const &in_circular_arc, float in_deviation=-1.0f)
 
LineKey InsertLineFromGeometry (CircularWedgeKey const &in_circular_wedge, float in_deviation=-1.0f)
 
LineKey InsertLineFromGeometry (EllipseKey const &in_ellipse, float in_deviation=-1.0f)
 
LineKey InsertLineFromGeometry (EllipticalArcKey const &in_elliptical_arc, float in_deviation=-1.0f)
 
LineKey InsertLineFromGeometry (NURBSCurveKey const &in_nurbs_curve, float in_deviation=-1.0f)
 
MarkerKey InsertMarker (Point const &in_position)
 
MarkerKey InsertMarker (MarkerKit const &in_kit)
 
MeshKey InsertMesh (MeshKit const &in_kit)
 
MeshKey InsertMesh (size_t in_rows, size_t in_columns, PointArray const &in_points)
 
MeshKey InsertMesh (size_t in_rows, size_t in_columns, size_t in_point_count, Point const in_points [])
 
NURBSCurveKey InsertNURBSCurve (NURBSCurveKit const &in_kit)
 
NURBSCurveKey InsertNURBSCurve (size_t in_degree, PointArray const &in_points, FloatArray const &in_weights, FloatArray const &in_knots, float in_start_u, float in_end_u)
 
NURBSCurveKey InsertNURBSCurve (size_t in_degree, size_t in_pcount, Point const in_points [], float const in_weights[], size_t in_knot_count, float const in_knots[], float in_start_u, float in_end_u)
 
NURBSSurfaceKey InsertNURBSSurface (NURBSSurfaceKit const &in_kit)
 
NURBSSurfaceKey InsertNURBSSurface (size_t in_udegree, size_t in_vdegree, size_t in_ucount, size_t in_vcount, PointArray const &in_points, FloatArray const &in_weights, FloatArray const &in_uknots, FloatArray const &in_vknots)
 
NURBSSurfaceKey InsertNURBSSurface (size_t in_udegree, size_t in_vdegree, size_t in_ucount, size_t in_vcount, size_t in_point_count, Point const in_points[], float const in_weights[], size_t in_uknot_count, float const in_uknots[], size_t in_vknot_count, float const in_vknots[])
 
NURBSSurfaceKey InsertNURBSSurface (size_t in_udegree, size_t in_vdegree, size_t in_ucount, size_t in_vcount, PointArray const &in_points, FloatArray const &in_weights, FloatArray const &in_uknots, FloatArray const &in_vknots, TrimKitArray const &in_trims)
 
NURBSSurfaceKey InsertNURBSSurface (size_t in_udegree, size_t in_vdegree, size_t in_ucount, size_t in_vcount, size_t in_point_count, Point const in_points[], float const in_weights[], size_t in_uknot_count, float const in_uknots[], size_t in_vknot_count, float const in_vknots[], size_t in_trim_count, TrimKit const in_trims[])
 
PolygonKey InsertPolygon (PolygonKit const &in_kit)
 
PolygonKey InsertPolygon (PointArray const &in_points)
 
PolygonKey InsertPolygon (size_t in_count, Point const in_points [])
 
ShellKey InsertShell (ShellKit const &in_kit)
 
ShellKey InsertShell (PointArray const &in_points, IntArray const &in_facelist)
 
ShellKey InsertShell (size_t in_point_count, Point const in_points [], size_t in_facelist_count, int const in_facelist [])
 
ShellKey InsertShellByTristrips (PointArray const &in_points, IntArray const &in_tristrips)
 
ShellKey InsertShellByTristrips (size_t in_point_count, Point const in_points [], size_t in_tristrips_count, int const in_tristrips [])
 
ShellKey InsertShellFromGeometry (SphereKey const &in_sphere)
 
ShellKey InsertShellFromGeometry (CylinderKey const &in_cylinder)
 
ShellKey InsertShellFromGeometry (NURBSSurfaceKey const &in_nurbs_surface)
 
ShellKey InsertShellFromGeometry (MeshKey const &in_mesh)
 
ShellKey InsertShellFromGeometry (PolygonKey const &in_polygon)
 
ShellKey InsertShellFromGeometry (EllipseKey const &in_ellipse)
 
ShellKey InsertShellFromGeometry (CircleKey const &in_circle)
 
ShellKey InsertShellFromGeometry (CircularWedgeKey const &in_circular_wedge)
 
ShellKey InsertShellFromGeometry (TextKey const &in_text)
 
SphereKey InsertSphere (SphereKit const &in_kit)
 
SphereKey InsertSphere (Point const &in_center, float in_radius, Vector const &in_axis=Vector(0, 1, 0), Vector const &in_prime_meridian=Vector(1, 0, 0))
 
SpotlightKey InsertSpotlight (Point const &in_position, Point const &in_target)
 
SpotlightKey InsertSpotlight (SpotlightKit const &in_kit)
 
TextKey InsertText (TextKit const &in_kit)
 
TextKey InsertText (Point const &in_position, char const *in_text)
 
UTF8 Name () const
 
HPS::Type ObjectType () const
 
SegmentKeyoperator= (SegmentKey const &other)
 
SegmentKeyoperator= (SegmentKey &&in_that)
 
void Optimize (SegmentOptimizationOptionsKit const &in_kit)
 
OptimizeMappingResults OptimizeWithMapping (SegmentOptimizationOptionsKit const &in_kit)
 
ReferenceKey ReferenceGeometry (Key const &in_key)
 
ReferenceKey ReferenceGeometry (Key const &in_key, ConditionalExpression const &in_conditional)
 
 SegmentKey ()
 
 SegmentKey (SegmentKey const &in_that)
 
 SegmentKey (SegmentKey &&in_that)
 
 SegmentKey (Key const &in_that)
 
SegmentKeySetAttributeLock (AttributeLockKit const &in_kit)
 
SegmentKeySetBounding (BoundingKit const &in_kit)
 
SegmentKeySetCamera (CameraKit const &in_kit)
 
SegmentKeySetColorInterpolation (ColorInterpolationKit const &in_kit)
 
SegmentKeySetCondition (char const *in_condition)
 
SegmentKeySetConditions (UTF8Array const &in_conditions)
 
SegmentKeySetConditions (size_t in_count, UTF8 const in_conditions [])
 
SegmentKeySetContourLine (ContourLineKit const &in_kit)
 
SegmentKeySetCulling (CullingKit const &in_kit)
 
SegmentKeySetCurveAttribute (CurveAttributeKit const &in_kit)
 
SegmentKeySetCuttingSectionAttribute (CuttingSectionAttributeKit const &in_kit)
 
SegmentKeySetCylinderAttribute (CylinderAttributeKit const &in_kit)
 
SegmentKeySetDrawingAttribute (DrawingAttributeKit const &in_kit)
 
SegmentKeySetEdgeAttribute (EdgeAttributeKit const &in_kit)
 
SegmentKeySetHiddenLineAttribute (HiddenLineAttributeKit const &in_kit)
 
SegmentKeySetLightingAttribute (LightingAttributeKit const &in_kit)
 
SegmentKeySetLineAttribute (LineAttributeKit const &in_kit)
 
SegmentKeySetMarkerAttribute (MarkerAttributeKit const &in_kit)
 
SegmentKeySetMaterialMapping (MaterialMappingKit const &in_kit)
 
SegmentKeySetMaterialPalette (char const *in_name)
 
SegmentKeySetModellingMatrix (MatrixKit const &in_kit)
 
SegmentKeySetName (char const *in_name)
 
SegmentKeySetNURBSSurfaceAttribute (NURBSSurfaceAttributeKit const &in_kit)
 
SegmentKeySetPBRMaterial (PBRMaterialKit const &in_kit)
 
SegmentKeySetPerformance (PerformanceKit const &in_kit)
 
SegmentKeySetPriority (int in_priority)
 
SegmentKeySetSelectability (SelectabilityKit const &in_kit)
 
SegmentKeySetSphereAttribute (SphereAttributeKit const &in_kit)
 
SegmentKeySetSubwindow (SubwindowKit const &in_kit)
 
SegmentKeySetTextAttribute (TextAttributeKit const &in_kit)
 
SegmentKeySetTextureMatrix (MatrixKit const &in_kit)
 
SegmentKeySetTransformMask (TransformMaskKit const &in_kit)
 
SegmentKeySetTransparency (TransparencyKit const &in_kit)
 
SegmentKeySetUserData (IntPtrTArray const &in_indices, ByteArrayArray const &in_data)
 
SegmentKeySetUserData (intptr_t in_index, size_t in_bytes, byte const in_data[])
 
SegmentKeySetUserData (intptr_t in_index, ByteArray const &in_data)
 
SegmentKeySetVisibility (VisibilityKit const &in_kit)
 
SegmentKeySetVisualEffects (VisualEffectsKit const &in_kit)
 
bool ShowAttributeLock (AttributeLockKit &out_kit) const
 
bool ShowBounding (BoundingKit &out_kit) const
 
bool ShowCamera (CameraKit &out_kit) const
 
bool ShowColorInterpolation (ColorInterpolationKit &out_kit) const
 
bool ShowConditions (UTF8Array &out_conditions) const
 
bool ShowContourLine (ContourLineKit &out_kit) const
 
bool ShowCulling (CullingKit &out_kit) const
 
bool ShowCurveAttribute (CurveAttributeKit &out_kit) const
 
bool ShowCuttingSectionAttribute (CuttingSectionAttributeKit &out_kit) const
 
bool ShowCylinderAttribute (CylinderAttributeKit &out_kit) const
 
bool ShowDrawingAttribute (DrawingAttributeKit &out_kit) const
 
bool ShowEdgeAttribute (EdgeAttributeKit &out_kit) const
 
bool ShowHiddenLineAttribute (HiddenLineAttributeKit &out_kit) const
 
size_t ShowIncluders (SegmentKeyArray &out_segments) const
 
size_t ShowIncluders (IncludeKeyArray &out_includes) const
 
bool ShowLightingAttribute (LightingAttributeKit &out_kit) const
 
bool ShowLineAttribute (LineAttributeKit &out_kit) const
 
bool ShowMarkerAttribute (MarkerAttributeKit &out_kit) const
 
bool ShowMaterialMapping (MaterialMappingKit &out_kit) const
 
bool ShowMaterialPalette (UTF8 &out_name) const
 
bool ShowModellingMatrix (MatrixKit &out_kit) const
 
bool ShowNURBSSurfaceAttribute (NURBSSurfaceAttributeKit &out_kit) const
 
bool ShowPBRMaterial (PBRMaterialKit &out_kit) const
 
bool ShowPerformance (PerformanceKit &out_kit) const
 
bool ShowPriority (int &out_priority) const
 
size_t ShowReferrers (SegmentKeyArray &out_segments) const
 
size_t ShowReferrers (ReferenceKeyArray &out_references) const
 
bool ShowSelectability (SelectabilityKit &out_kit) const
 
bool ShowSphereAttribute (SphereAttributeKit &out_kit) const
 
size_t ShowStylers (SegmentKeyArray &out_segments) const
 
size_t ShowStylers (StyleKeyArray &out_styles) const
 
size_t ShowSubsegments () const
 
size_t ShowSubsegments (SegmentKeyArray &out_children) const
 
bool ShowSubwindow (SubwindowKit &out_kit) const
 
bool ShowTextAttribute (TextAttributeKit &out_kit) const
 
bool ShowTextureMatrix (MatrixKit &out_kit) const
 
bool ShowTransformMask (TransformMaskKit &out_kit) const
 
bool ShowTransparency (TransparencyKit &out_kit) const
 
bool ShowUserData (IntPtrTArray &out_indices, ByteArrayArray &out_data) const
 
bool ShowUserData (intptr_t in_index, ByteArray &out_data) const
 
size_t ShowUserDataCount () const
 
bool ShowUserDataIndices (IntPtrTArray &out_indices) const
 
bool ShowVisibility (VisibilityKit &out_kit) const
 
bool ShowVisualEffects (VisualEffectsKit &out_kit) const
 
SegmentKey Subsegment (char const *in_segment_name="", bool in_create_if_not_present=true) const
 
SegmentKeyUnsetAllUserData ()
 
SegmentKeyUnsetAttributeLock ()
 
SegmentKeyUnsetBounding ()
 
SegmentKeyUnsetCamera ()
 
SegmentKeyUnsetColorInterpolation ()
 
SegmentKeyUnsetConditions ()
 
SegmentKeyUnsetContourLine ()
 
SegmentKeyUnsetCulling ()
 
SegmentKeyUnsetCurveAttribute ()
 
SegmentKeyUnsetCuttingSectionAttribute ()
 
SegmentKeyUnsetCylinderAttribute ()
 
SegmentKeyUnsetDrawingAttribute ()
 
SegmentKeyUnsetEdgeAttribute ()
 
SegmentKeyUnsetHiddenLineAttribute ()
 
SegmentKeyUnsetLightingAttribute ()
 
SegmentKeyUnsetLineAttribute ()
 
SegmentKeyUnsetMarkerAttribute ()
 
SegmentKeyUnsetMaterialMapping ()
 
SegmentKeyUnsetMaterialPalette ()
 
SegmentKeyUnsetModellingMatrix ()
 
SegmentKeyUnsetNURBSSurfaceAttribute ()
 
SegmentKeyUnsetPBRMaterial ()
 
SegmentKeyUnsetPerformance ()
 
SegmentKeyUnsetPriority ()
 
SegmentKeyUnsetSelectability ()
 
SegmentKeyUnsetSphereAttribute ()
 
SegmentKeyUnsetSubwindow ()
 
SegmentKeyUnsetTextAttribute ()
 
SegmentKeyUnsetTextureMatrix ()
 
SegmentKeyUnsetTransformMask ()
 
SegmentKeyUnsetTransparency ()
 
SegmentKeyUnsetUserData (intptr_t in_index)
 
SegmentKeyUnsetUserData (size_t in_count, intptr_t const in_indices[])
 
SegmentKeyUnsetUserData (HPS::IntPtrTArray const &in_indices)
 
SegmentKeyUnsetVisibility ()
 
SegmentKeyUnsetVisualEffects ()
 
 ~SegmentKey ()
 
- Public Member Functions inherited from HPS::Key
virtual void Assign (Key const &in_that)
 
Key CopyTo (SegmentKey const &in_destination) const
 
void Delete ()
 
bool Equals (Key const &in_that) const
 
size_t GetHash () const
 
bool HasOwner () const
 
 Key ()
 
 Key (Key const &in_that)
 
 Key (Control const &in_control)
 
 Key (Key &&in_that)
 
void MoveTo (SegmentKey const &in_new_owner)
 
bool operator!= (Key const &in_that) const
 
Keyoperator= (Key &&in_that)
 
Keyoperator= (Key const &in_that)
 
bool operator== (Key const &in_that) const
 
SegmentKey Owner () const
 
SegmentKey Up () const
 
virtual ~Key ()
 
- 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::SegmentKey
 
- Static Public Attributes inherited from HPS::Key
static const HPS::Type staticType = HPS::Type::Key
 
- Static Public Attributes inherited from HPS::Object
static const HPS::Type staticType = HPS::Type::None
 

Additional Inherited Members

- Static Public Member Functions inherited from HPS::Object
template<typename T >
static intptr_t ClassID ()
 

Detailed Description

The SegmentKey class is a smart pointer to a database object. Segments are the nodes in the scene graph. They can contain attributes, geometry, or other segments, among other things.

Constructor & Destructor Documentation

◆ SegmentKey() [1/4]

HPS::SegmentKey::SegmentKey ( )

An uninitialized key refers to no database object and Type() will return Type::None.

◆ SegmentKey() [2/4]

HPS::SegmentKey::SegmentKey ( SegmentKey const &  in_that)

Shares a reference to a database object referred to by in_that.

◆ SegmentKey() [3/4]

HPS::SegmentKey::SegmentKey ( SegmentKey &&  in_that)

The move constructor creates a SegmentKey by transferring the underlying impl of the rvalue reference to this SegmentKey thereby avoiding a copy and allocation.

Parameters
in_thatAn rvalue reference to a SegmentKey to take the impl from.

◆ SegmentKey() [4/4]

HPS::SegmentKey::SegmentKey ( Key const &  in_that)
explicit

Shares a reference to a database object referred to by in_that. If the key assignment is invalid, this key will revert to an uninitialized state.

◆ ~SegmentKey()

HPS::SegmentKey::~SegmentKey ( )

Releases a reference to a database object but does not destroy the database object.

Member Function Documentation

◆ Down()

SegmentKey HPS::SegmentKey::Down ( char const *  in_segment_name,
bool  in_create_if_not_present = false 
) const

Returns the segment contained by this key with name of in_segment_name. If the segment does not exist and the flag in_create_if_not_present is not set, the key returned will be uninitialized.

◆ Find() [1/5]

size_t HPS::SegmentKey::Find ( Search::Type  in_request,
Search::Space  in_search_space,
SearchResults out_results 
) const

Searches in_search_space for in_request and returns a handle to the results.

◆ Find() [2/5]

size_t HPS::SegmentKey::Find ( SearchTypeArray const &  in_requests,
Search::Space  in_search_space,
SearchResults out_results 
) const

Searches in_search_space for in_request and returns a handle to the results.

◆ Find() [3/5]

size_t HPS::SegmentKey::Find ( size_t  in_types_count,
Search::Type const  in_requests[],
Search::Space  in_search_space,
SearchResults out_results 
) const

Searches in_search_space for in_request and returns a handle to the results.

◆ Find() [4/5]

size_t HPS::SegmentKey::Find ( SearchOptionsKit const &  in_options,
SearchResults out_results 
) const

Searches starting at this segment using in_options and writes found objects into out_results, returns count.

◆ Find() [5/5]

size_t HPS::SegmentKey::Find ( SearchOptionsKit const &  in_options) const

Searches starting at this segment using in_options, returns count.

◆ Flush() [1/3]

void HPS::SegmentKey::Flush ( Search::Type  in_type_to_remove = Search::Type::Everything,
Search::Space  in_search_space = Search::Space::SegmentOnly 
)

Searches in_search_space for in_type_to_remove and deletes all instances from the segment(s).

◆ Flush() [2/3]

void HPS::SegmentKey::Flush ( SearchTypeArray const &  in_types_to_remove,
Search::Space  in_search_space = Search::Space::SegmentOnly 
)

Searches in_search_space for in_types_to_remove and deletes all instances from the segment(s).

◆ Flush() [3/3]

void HPS::SegmentKey::Flush ( size_t  in_types_count,
Search::Type const  in_types_to_remove[],
Search::Space  in_search_space = Search::Space::SegmentOnly 
)

Searches in_search_space for in_types_to_remove and deletes all instances from the segment(s).

◆ GetAttributeLockControl() [1/2]

AttributeLockControl HPS::SegmentKey::GetAttributeLockControl ( )

Returns a control that allows the user to manipulate and query details of the attribute locks on this segment.

◆ GetAttributeLockControl() [2/2]

AttributeLockControl const HPS::SegmentKey::GetAttributeLockControl ( ) const

Returns a control that allows the user to manipulate and query details of the attribute locks on this segment.

◆ GetBoundingControl() [1/2]

BoundingControl HPS::SegmentKey::GetBoundingControl ( )

Returns a control that allows the user to manipulate and query details of the bounding control on this segment.

◆ GetBoundingControl() [2/2]

BoundingControl const HPS::SegmentKey::GetBoundingControl ( ) const

Returns a control that allows the user to manipulate and query details of the bounding control on this segment.

◆ GetCameraControl() [1/2]

CameraControl HPS::SegmentKey::GetCameraControl ( )
Returns
A control that allows the user to manipulate and query details of the camera attribute on this segment.

◆ GetCameraControl() [2/2]

CameraControl const HPS::SegmentKey::GetCameraControl ( ) const
Returns
A control that allows the user to manipulate and query details of the camera attribute on this segment.

◆ GetColorInterpolationControl() [1/2]

ColorInterpolationControl HPS::SegmentKey::GetColorInterpolationControl ( )
Returns
A control that allows the user to manipulate and query details of the color interpolation attributes on this segment.

◆ GetColorInterpolationControl() [2/2]

ColorInterpolationControl const HPS::SegmentKey::GetColorInterpolationControl ( ) const
Returns
A control that allows the user to manipulate and query details of the color interpolation attributes on this segment.

◆ GetConditionControl() [1/2]

ConditionControl HPS::SegmentKey::GetConditionControl ( )
Returns
A control that allows the user to manipulate and query details of conditions on this segment.

◆ GetConditionControl() [2/2]

ConditionControl const HPS::SegmentKey::GetConditionControl ( ) const
Returns
A control that allows the user to manipulate and query details of conditions on this segment.

◆ GetContourLineControl() [1/2]

ContourLineControl HPS::SegmentKey::GetContourLineControl ( )
Returns
A control that allows the user to manipulate and query details of the contour line attributes on this segment.

◆ GetContourLineControl() [2/2]

ContourLineControl const HPS::SegmentKey::GetContourLineControl ( ) const
Returns
A control that allows the user to manipulate and query details of the contour line attributes on this segment.

◆ GetCullingControl() [1/2]

CullingControl HPS::SegmentKey::GetCullingControl ( )

Returns a control that allows the user to manipulate and query details of the culling attribute on this segment.

◆ GetCullingControl() [2/2]

CullingControl const HPS::SegmentKey::GetCullingControl ( ) const

Returns a control that allows the user to manipulate and query details of the culling attribute on this segment.

◆ GetCurveAttributeControl() [1/2]

CurveAttributeControl HPS::SegmentKey::GetCurveAttributeControl ( )

Returns a control that allows the user to manipulate and query details of the curve attribute on this segment.

◆ GetCurveAttributeControl() [2/2]

CurveAttributeControl const HPS::SegmentKey::GetCurveAttributeControl ( ) const

Returns a control that allows the user to manipulate and query details of the curve attribute on this segment.

◆ GetCuttingSectionAttributeControl() [1/2]

CuttingSectionAttributeControl HPS::SegmentKey::GetCuttingSectionAttributeControl ( )

Returns a control that allows the user to manipulate and query details of the cutting section attributes on this segment.

◆ GetCuttingSectionAttributeControl() [2/2]

CuttingSectionAttributeControl const HPS::SegmentKey::GetCuttingSectionAttributeControl ( ) const

Returns a control that allows the user to manipulate and query details of the cutting section attributes on this segment.

◆ GetCylinderAttributeControl() [1/2]

CylinderAttributeControl HPS::SegmentKey::GetCylinderAttributeControl ( )

Returns a control that allows the user to manipulate and query details of the cylinder attribute on this segment.

◆ GetCylinderAttributeControl() [2/2]

CylinderAttributeControl const HPS::SegmentKey::GetCylinderAttributeControl ( ) const

Returns a control that allows the user to manipulate and query details of the cylinder attribute on this segment.

◆ GetDrawingAttributeControl() [1/2]

DrawingAttributeControl HPS::SegmentKey::GetDrawingAttributeControl ( )

Returns a control that allows the user to manipulate and query details of the drawing attribute on this segment.

◆ GetDrawingAttributeControl() [2/2]

DrawingAttributeControl const HPS::SegmentKey::GetDrawingAttributeControl ( ) const

Returns a control that allows the user to manipulate and query details of the drawing attribute on this segment.

◆ GetEdgeAttributeControl() [1/2]

EdgeAttributeControl HPS::SegmentKey::GetEdgeAttributeControl ( )

Returns a control that allows the user to manipulate and query details of the edge attribute on this segment.

◆ GetEdgeAttributeControl() [2/2]

EdgeAttributeControl const HPS::SegmentKey::GetEdgeAttributeControl ( ) const

Returns a control that allows the user to manipulate and query details of the edge attribute on this segment.

◆ GetHiddenLineAttributeControl() [1/2]

HiddenLineAttributeControl HPS::SegmentKey::GetHiddenLineAttributeControl ( )

Returns a control that allows the user to manipulate and query details of the hidden line attribute on this segment.

◆ GetHiddenLineAttributeControl() [2/2]

HiddenLineAttributeControl const HPS::SegmentKey::GetHiddenLineAttributeControl ( ) const

Returns a control that allows the user to manipulate and query details of the hidden line attribute on this segment.

◆ GetLightingAttributeControl() [1/2]

LightingAttributeControl HPS::SegmentKey::GetLightingAttributeControl ( )

Returns a control that allows the user to manipulate and query details of the lighting attribute on this segment.

◆ GetLightingAttributeControl() [2/2]

LightingAttributeControl const HPS::SegmentKey::GetLightingAttributeControl ( ) const

Returns a control that allows the user to manipulate and query details of the lighting attribute on this segment.

◆ GetLineAttributeControl() [1/2]

LineAttributeControl HPS::SegmentKey::GetLineAttributeControl ( )

Returns a control that allows the user to manipulate and query details of the line attribute on this segment.

◆ GetLineAttributeControl() [2/2]

LineAttributeControl const HPS::SegmentKey::GetLineAttributeControl ( ) const

Returns a control that allows the user to manipulate and query details of the line attribute on this segment.

◆ GetMarkerAttributeControl() [1/2]

MarkerAttributeControl HPS::SegmentKey::GetMarkerAttributeControl ( )

Returns a control that allows the user to manipulate and query details of the marker attribute on this segment.

◆ GetMarkerAttributeControl() [2/2]

MarkerAttributeControl const HPS::SegmentKey::GetMarkerAttributeControl ( ) const

Returns a control that allows the user to manipulate and query details of the marker attribute on this segment.

◆ GetMaterialMappingControl() [1/2]

MaterialMappingControl HPS::SegmentKey::GetMaterialMappingControl ( )

Returns a control that allows the user to manipulate and query details of the material mapping on this segment.

◆ GetMaterialMappingControl() [2/2]

MaterialMappingControl const HPS::SegmentKey::GetMaterialMappingControl ( ) const

Returns a control that allows the user to manipulate and query details of the material mapping on this segment.

◆ GetModellingMatrixControl() [1/2]

ModellingMatrixControl HPS::SegmentKey::GetModellingMatrixControl ( )

Returns a control that allows the user to manipulate and query details of the modelling matrix on this segment.

◆ GetModellingMatrixControl() [2/2]

ModellingMatrixControl const HPS::SegmentKey::GetModellingMatrixControl ( ) const

Returns a control that allows the user to manipulate and query details of the modelling matrix on this segment.

◆ GetNURBSSurfaceAttributeControl() [1/2]

NURBSSurfaceAttributeControl HPS::SegmentKey::GetNURBSSurfaceAttributeControl ( )

Returns a control that allows the user to manipulate and query details of the NURBS surface attribute on this segment.

◆ GetNURBSSurfaceAttributeControl() [2/2]

NURBSSurfaceAttributeControl const HPS::SegmentKey::GetNURBSSurfaceAttributeControl ( ) const

Returns a control that allows the user to manipulate and query details of the NURBS surface attribute on this segment.

◆ GetPerformanceControl() [1/2]

PerformanceControl HPS::SegmentKey::GetPerformanceControl ( )

Returns a control that allows the user to manipulate and query details of the performance attribute on this segment.

◆ GetPerformanceControl() [2/2]

PerformanceControl const HPS::SegmentKey::GetPerformanceControl ( ) const

Returns a control that allows the user to manipulate and query details of the performance attribute on this segment.

◆ GetPortfolioControl() [1/2]

PortfolioControl HPS::SegmentKey::GetPortfolioControl ( )
Returns
A control that allows the user to manipulate and query portfolios in use on this segment.

◆ GetPortfolioControl() [2/2]

PortfolioControl const HPS::SegmentKey::GetPortfolioControl ( ) const
Returns
A control that allows the user to manipulate and query portfolios in use on this segment.

◆ GetSelectabilityControl() [1/2]

SelectabilityControl HPS::SegmentKey::GetSelectabilityControl ( )

Returns a control that allows the user to manipulate and query details of the selectability attribute on this segment.

◆ GetSelectabilityControl() [2/2]

SelectabilityControl const HPS::SegmentKey::GetSelectabilityControl ( ) const

Returns a control that allows the user to manipulate and query details of the selectability attribute on this segment.

◆ GetSphereAttributeControl() [1/2]

SphereAttributeControl HPS::SegmentKey::GetSphereAttributeControl ( )

Returns a control that allows the user to manipulate and query details of the sphere attribute on this segment.

◆ GetSphereAttributeControl() [2/2]

SphereAttributeControl const HPS::SegmentKey::GetSphereAttributeControl ( ) const

Returns a control that allows the user to manipulate and query details of the sphere attribute on this segment.

◆ GetStyleControl() [1/2]

StyleControl HPS::SegmentKey::GetStyleControl ( )
Returns
A control that allows the user to manipulate and query details of styles on this segment.

◆ GetStyleControl() [2/2]

StyleControl const HPS::SegmentKey::GetStyleControl ( ) const
Returns
A control that allows the user to manipulate and query details of styles on this segment.

◆ GetSubwindowControl() [1/2]

SubwindowControl HPS::SegmentKey::GetSubwindowControl ( )

Returns a control that allows the user to manipulate and query details of the subwindow attribute on this segment.

◆ GetSubwindowControl() [2/2]

SubwindowControl const HPS::SegmentKey::GetSubwindowControl ( ) const

Returns a control that allows the user to manipulate and query details of the subwindow attribute on this segment.

◆ GetTextAttributeControl() [1/2]

TextAttributeControl HPS::SegmentKey::GetTextAttributeControl ( )

Returns a control that allows the user to manipulate and query details of the text attribute on this segment.

◆ GetTextAttributeControl() [2/2]

TextAttributeControl const HPS::SegmentKey::GetTextAttributeControl ( ) const

Returns a control that allows the user to manipulate and query details of the text attribute on this segment.

◆ GetTextureMatrixControl() [1/2]

TextureMatrixControl HPS::SegmentKey::GetTextureMatrixControl ( )

Returns a control that allows the user to manipulate and query details of the texture matrix on this segment.

◆ GetTextureMatrixControl() [2/2]

TextureMatrixControl const HPS::SegmentKey::GetTextureMatrixControl ( ) const

Returns a control that allows the user to manipulate and query details of the texture matrix on this segment.

◆ GetTransformMaskControl() [1/2]

TransformMaskControl HPS::SegmentKey::GetTransformMaskControl ( )

Returns a control that allows the user to manipulate and query details of the transform mask on this segment.

◆ GetTransformMaskControl() [2/2]

TransformMaskControl const HPS::SegmentKey::GetTransformMaskControl ( ) const

Returns a control that allows the user to manipulate and query details of the transform mask on this segment.

◆ GetTransparencyControl() [1/2]

TransparencyControl HPS::SegmentKey::GetTransparencyControl ( )

Returns a control that allows the user to manipulate and query details of the transparency attribute on this segment.

◆ GetTransparencyControl() [2/2]

TransparencyControl const HPS::SegmentKey::GetTransparencyControl ( ) const

Returns a control that allows the user to manipulate and query details of the transparency attribute on this segment.

◆ GetVisibilityControl() [1/2]

VisibilityControl HPS::SegmentKey::GetVisibilityControl ( )

Returns a control that allows the user to manipulate and query details of the visibility attribute on this segment.

◆ GetVisibilityControl() [2/2]

VisibilityControl const HPS::SegmentKey::GetVisibilityControl ( ) const

Returns a control that allows the user to manipulate and query details of the visibility attribute on this segment.

◆ GetVisualEffectsControl() [1/2]

VisualEffectsControl HPS::SegmentKey::GetVisualEffectsControl ( )

Returns a control that allows the user to manipulate and query details of the visual effects attribute on this segment.

◆ GetVisualEffectsControl() [2/2]

VisualEffectsControl const HPS::SegmentKey::GetVisualEffectsControl ( ) const

Returns a control that allows the user to manipulate and query details of the visual effects attribute on this segment.

◆ IncludeSegment() [1/2]

IncludeKey HPS::SegmentKey::IncludeSegment ( SegmentKey const &  in_seg)

Creates a link between this segment and in_seg, returns a handle to the include itself. Included segments are treated like child segments for most operations including drawing.

◆ IncludeSegment() [2/2]

IncludeKey HPS::SegmentKey::IncludeSegment ( SegmentKey const &  in_seg,
ConditionalExpression const &  in_conditional 
)

Creates a link between this segment and in_seg, returns a handle to the include itself. The link will only be applied if the condition is set in the draw path. Included segments are treated like child segments for most operations including drawing.

◆ InsertCircle() [1/3]

CircleKey HPS::SegmentKey::InsertCircle ( CircleKit const &  in_kit)

Creates a new circle geometry in this segment and returns a key to it.

◆ InsertCircle() [2/3]

CircleKey HPS::SegmentKey::InsertCircle ( Point const &  in_start,
Point const &  in_middle,
Point const &  in_end 
)

Creates a new circle geometry in this segment and returns a key to it.

◆ InsertCircle() [3/3]

CircleKey HPS::SegmentKey::InsertCircle ( Point const &  in_center,
float  in_radius,
Vector const &  in_normal 
)

Creates a new circle geometry in this segment and returns a key to it.

◆ InsertCircularArc() [1/2]

CircularArcKey HPS::SegmentKey::InsertCircularArc ( CircularArcKit const &  in_kit)

Creates a new circular arc geometry in this segment and returns a key to it.

◆ InsertCircularArc() [2/2]

CircularArcKey HPS::SegmentKey::InsertCircularArc ( Point const &  in_start,
Point const &  in_middle,
Point const &  in_end 
)

Creates a new circular arc geometry in this segment and returns a key to it.

◆ InsertCircularWedge() [1/2]

CircularWedgeKey HPS::SegmentKey::InsertCircularWedge ( CircularWedgeKit const &  in_kit)

Creates a new circular wedge geometry in this segment and returns a key to it.

◆ InsertCircularWedge() [2/2]

CircularWedgeKey HPS::SegmentKey::InsertCircularWedge ( Point const &  in_start,
Point const &  in_middle,
Point const &  in_end 
)

Creates a new circular wedge geometry in this segment and returns a key to it.

◆ InsertCuttingSection() [1/4]

CuttingSectionKey HPS::SegmentKey::InsertCuttingSection ( Plane const &  in_plane)

Creates a new cutting section in this segment and returns a key to it.

◆ InsertCuttingSection() [2/4]

CuttingSectionKey HPS::SegmentKey::InsertCuttingSection ( CuttingSectionKit const &  in_kit)

Creates a new cutting section in this segment and returns a key to it.

◆ InsertCuttingSection() [3/4]

CuttingSectionKey HPS::SegmentKey::InsertCuttingSection ( PlaneArray const &  in_planes)

Creates a new cutting section in this segment and returns a key to it.

◆ InsertCuttingSection() [4/4]

CuttingSectionKey HPS::SegmentKey::InsertCuttingSection ( size_t  in_planes_count,
Plane const  in_planes[] 
)

Creates a new cutting section in this segment and returns a key to it.

◆ InsertCylinder() [1/4]

CylinderKey HPS::SegmentKey::InsertCylinder ( CylinderKit const &  in_kit)

Creates a new cylinder geometry in this segment and returns a key to it.

◆ InsertCylinder() [2/4]

CylinderKey HPS::SegmentKey::InsertCylinder ( size_t  in_pcount,
Point const  in_points[],
size_t  in_rcount,
float const  in_radii[],
Cylinder::Capping  in_caps = Cylinder::Capping::Both 
)

Creates a new cylinder geometry in this segment and returns a key to it.

◆ InsertCylinder() [3/4]

CylinderKey HPS::SegmentKey::InsertCylinder ( PointArray const &  in_points,
FloatArray const &  in_radii,
Cylinder::Capping  in_caps = Cylinder::Capping::Both 
)

Creates a new cylinder geometry in this segment and returns a key to it.

◆ InsertCylinder() [4/4]

CylinderKey HPS::SegmentKey::InsertCylinder ( Point const &  in_point1,
Point const &  in_point2,
float  in_radius,
Cylinder::Capping  in_caps = Cylinder::Capping::Both 
)

Creates a new cylinder geometry in this segment and returns a key to it.

◆ InsertDistantLight() [1/2]

DistantLightKey HPS::SegmentKey::InsertDistantLight ( Vector const &  in_direction)

Creates a new distant light geometry in this segment and returns a key to it.

◆ InsertDistantLight() [2/2]

DistantLightKey HPS::SegmentKey::InsertDistantLight ( DistantLightKit const &  in_kit)

Creates a new distant light geometry in this segment and returns a key to it.

◆ InsertEllipse() [1/2]

EllipseKey HPS::SegmentKey::InsertEllipse ( EllipseKit const &  in_kit)

Creates a new ellipse geometry in this segment and returns a key to it.

◆ InsertEllipse() [2/2]

EllipseKey HPS::SegmentKey::InsertEllipse ( Point const &  in_center,
Point const &  in_major,
Point const &  in_minor 
)

Creates a new ellipse geometry in this segment and returns a key to it.

◆ InsertEllipticalArc() [1/2]

EllipticalArcKey HPS::SegmentKey::InsertEllipticalArc ( EllipticalArcKit const &  in_kit)

Creates a new elliptical arc geometry in this segment and returns a key to it.

◆ InsertEllipticalArc() [2/2]

EllipticalArcKey HPS::SegmentKey::InsertEllipticalArc ( Point const &  in_center,
Point const &  in_major,
Point const &  in_minor,
float  in_start,
float  in_end 
)

Creates a new elliptical arc geometry in this segment and returns a key to it.

◆ InsertGrid() [1/2]

GridKey HPS::SegmentKey::InsertGrid ( GridKit const &  in_kit)

Creates a new grid in this segment and returns a key to it.

◆ InsertGrid() [2/2]

GridKey HPS::SegmentKey::InsertGrid ( Point const &  in_origin,
Point const &  in_first_point = Point(1, 0, 0),
Point const &  in_second_point = Point(0, 1, 0),
int  in_first_count = 0,
int  in_second_count = 0,
Grid::Type  in_type = Grid::Type::Quadrilateral 
)

Creates a new grid in this segment and returns a key to it.

◆ InsertInfiniteLine() [1/2]

InfiniteLineKey HPS::SegmentKey::InsertInfiniteLine ( InfiniteLineKit const &  in_kit)

Creates a new infinite line geometry in this segment and returns a key to it.

◆ InsertInfiniteLine() [2/2]

InfiniteLineKey HPS::SegmentKey::InsertInfiniteLine ( Point const &  in_first,
Point const &  in_second,
InfiniteLine::Type  in_type 
)

Creates a new infinite line geometry in this segment and returns a key to it.

◆ InsertLine() [1/4]

LineKey HPS::SegmentKey::InsertLine ( LineKit const &  in_kit)

Creates a new line geometry in this segment and returns a key to it.

◆ InsertLine() [2/4]

LineKey HPS::SegmentKey::InsertLine ( size_t  in_count,
Point const  in_pts[] 
)

Creates a new line geometry in this segment and returns a key to it.

◆ InsertLine() [3/4]

LineKey HPS::SegmentKey::InsertLine ( PointArray const &  in_pts)

Creates a new line geometry in this segment and returns a key to it.

◆ InsertLine() [4/4]

LineKey HPS::SegmentKey::InsertLine ( Point const &  pt1,
Point const &  pt2 
)

Creates a new line geometry in this segment and returns a key to it.

◆ InsertLineFromGeometry() [1/6]

LineKey HPS::SegmentKey::InsertLineFromGeometry ( CircleKey const &  in_circle,
float  in_deviation = -1.0f 
)

Creates a new line geometry in this segment which approximates the given circle and returns a key to it.

Parameters
in_circleThe CircleKey that will be used to compute the line approximation.
in_deviationThe distance in object space from the line approximation to the circle. Default value is -1.0f, which tells Visualize to compute a deviation based on the bounding volume of the circle.
Returns
The reference to the newly created line. Will have a type of Type::None if line insertion failed.

◆ InsertLineFromGeometry() [2/6]

LineKey HPS::SegmentKey::InsertLineFromGeometry ( CircularArcKey const &  in_circular_arc,
float  in_deviation = -1.0f 
)

Creates a new line geometry in this segment which approximates the given circular arc and returns a key to it.

Parameters
in_circular_arcThe CircularArcKey that will be used to compute the line approximation.
in_deviationThe distance in object space from the line approximation to the circular arc. Default value is -1.0f, which tells Visualize to compute a deviation based on the bounding volume of the circular arc.
Returns
The reference to the newly created line. Will have a type of Type::None if line insertion failed.

◆ InsertLineFromGeometry() [3/6]

LineKey HPS::SegmentKey::InsertLineFromGeometry ( CircularWedgeKey const &  in_circular_wedge,
float  in_deviation = -1.0f 
)

Creates a new line geometry in this segment which approximates the given circular wedge and returns a key to it.

Parameters
in_circular_wedgeThe CircularWedgeKey that will be used to compute the line approximation.
in_deviationThe distance in object space from the line approximation to the circular wedge. Default value is -1.0f, which tells Visualize to compute a deviation based on the bounding volume of the circular wedge.
Returns
The reference to the newly created line. Will have a type of Type::None if line insertion failed.

◆ InsertLineFromGeometry() [4/6]

LineKey HPS::SegmentKey::InsertLineFromGeometry ( EllipseKey const &  in_ellipse,
float  in_deviation = -1.0f 
)

Creates a new line geometry in this segment which approximates the given ellipse and returns a key to it.

Parameters
in_ellipseThe EllipseKey that will be used to compute the line approximation.
in_deviationThe distance in object space from the line approximation to the ellipse. Default value is -1.0f, which tells Visualize to compute a deviation based on the bounding volume of the ellipse.
Returns
The reference to the newly created line. Will have a type of Type::None if line insertion failed.

◆ InsertLineFromGeometry() [5/6]

LineKey HPS::SegmentKey::InsertLineFromGeometry ( EllipticalArcKey const &  in_elliptical_arc,
float  in_deviation = -1.0f 
)

Creates a new line geometry in this segment which approximates the given elliptical arc and returns a key to it.

Parameters
in_elliptical_arcThe EllipticalArcKey that will be used to compute the line approximation.
in_deviationThe distance in object space from the line approximation to the elliptical arc. Default value is -1.0f, which tells Visualize to compute a deviation based on the bounding volume of the elliptical arc.
Returns
The reference to the newly created line. Will have a type of Type::None if line insertion failed.

◆ InsertLineFromGeometry() [6/6]

LineKey HPS::SegmentKey::InsertLineFromGeometry ( NURBSCurveKey const &  in_nurbs_curve,
float  in_deviation = -1.0f 
)

Creates a new line geometry in this segment which approximates the given NURBS curve and returns a key to it.

Parameters
in_nurbs_curveThe NURBSCurveKey that will be used to compute the line approximation.
in_deviationThe distance in object space from the line approximation to the NURBS curve. Default value is -1.0f, which tells Visualize to compute a deviation based on the bounding volume of the NURBS curve.
Returns
The reference to the newly created line. Will have a type of Type::None if line insertion failed.

◆ InsertMarker() [1/2]

MarkerKey HPS::SegmentKey::InsertMarker ( Point const &  in_position)

Creates a new marker geometry in this segment and returns a key to it.

◆ InsertMarker() [2/2]

MarkerKey HPS::SegmentKey::InsertMarker ( MarkerKit const &  in_kit)

Creates a new marker geometry in this segment and returns a key to it.

◆ InsertMesh() [1/3]

MeshKey HPS::SegmentKey::InsertMesh ( MeshKit const &  in_kit)

Creates a new mesh geometry in this segment and returns a key to it.

◆ InsertMesh() [2/3]

MeshKey HPS::SegmentKey::InsertMesh ( size_t  in_rows,
size_t  in_columns,
PointArray const &  in_points 
)

Creates a new mesh geometry in this segment and returns a key to it.

◆ InsertMesh() [3/3]

MeshKey HPS::SegmentKey::InsertMesh ( size_t  in_rows,
size_t  in_columns,
size_t  in_point_count,
Point const  in_points[] 
)

Creates a new mesh geometry in this segment and returns a key to it.

◆ InsertNURBSCurve() [1/3]

NURBSCurveKey HPS::SegmentKey::InsertNURBSCurve ( NURBSCurveKit const &  in_kit)

Creates a new NURBS curve geometry in this segment and returns a key to it.

◆ InsertNURBSCurve() [2/3]

NURBSCurveKey HPS::SegmentKey::InsertNURBSCurve ( size_t  in_degree,
PointArray const &  in_points,
FloatArray const &  in_weights,
FloatArray const &  in_knots,
float  in_start_u,
float  in_end_u 
)

Creates a new NURBS curve geometry in this segment and returns a key to it.

◆ InsertNURBSCurve() [3/3]

NURBSCurveKey HPS::SegmentKey::InsertNURBSCurve ( size_t  in_degree,
size_t  in_pcount,
Point const  in_points[],
float const  in_weights[],
size_t  in_knot_count,
float const  in_knots[],
float  in_start_u,
float  in_end_u 
)

Creates a new NURBS curve geometry in this segment and returns a key to it.

◆ InsertNURBSSurface() [1/5]

NURBSSurfaceKey HPS::SegmentKey::InsertNURBSSurface ( NURBSSurfaceKit const &  in_kit)

Creates a new NURBS surface geometry in this segment and returns a key to it.

◆ InsertNURBSSurface() [2/5]

NURBSSurfaceKey HPS::SegmentKey::InsertNURBSSurface ( size_t  in_udegree,
size_t  in_vdegree,
size_t  in_ucount,
size_t  in_vcount,
PointArray const &  in_points,
FloatArray const &  in_weights,
FloatArray const &  in_uknots,
FloatArray const &  in_vknots 
)

Creates a new NURBS surface geometry in this segment and returns a key to it.

◆ InsertNURBSSurface() [3/5]

NURBSSurfaceKey HPS::SegmentKey::InsertNURBSSurface ( size_t  in_udegree,
size_t  in_vdegree,
size_t  in_ucount,
size_t  in_vcount,
size_t  in_point_count,
Point const  in_points[],
float const  in_weights[],
size_t  in_uknot_count,
float const  in_uknots[],
size_t  in_vknot_count,
float const  in_vknots[] 
)

Creates a new NURBS surface geometry in this segment and returns a key to it.

◆ InsertNURBSSurface() [4/5]

NURBSSurfaceKey HPS::SegmentKey::InsertNURBSSurface ( size_t  in_udegree,
size_t  in_vdegree,
size_t  in_ucount,
size_t  in_vcount,
PointArray const &  in_points,
FloatArray const &  in_weights,
FloatArray const &  in_uknots,
FloatArray const &  in_vknots,
TrimKitArray const &  in_trims 
)

Creates a new NURBS surface geometry in this segment and returns a key to it.

◆ InsertNURBSSurface() [5/5]

NURBSSurfaceKey HPS::SegmentKey::InsertNURBSSurface ( size_t  in_udegree,
size_t  in_vdegree,
size_t  in_ucount,
size_t  in_vcount,
size_t  in_point_count,
Point const  in_points[],
float const  in_weights[],
size_t  in_uknot_count,
float const  in_uknots[],
size_t  in_vknot_count,
float const  in_vknots[],
size_t  in_trim_count,
TrimKit const  in_trims[] 
)

Creates a new NURBS surface geometry in this segment and returns a key to it.

◆ InsertPolygon() [1/3]

PolygonKey HPS::SegmentKey::InsertPolygon ( PolygonKit const &  in_kit)

Creates a new polygon geometry in this segment and returns a key to it.

◆ InsertPolygon() [2/3]

PolygonKey HPS::SegmentKey::InsertPolygon ( PointArray const &  in_points)

Creates a new polygon geometry in this segment and returns a key to it.

◆ InsertPolygon() [3/3]

PolygonKey HPS::SegmentKey::InsertPolygon ( size_t  in_count,
Point const  in_points[] 
)

Creates a new polygon geometry in this segment and returns a key to it.

◆ InsertShell() [1/3]

ShellKey HPS::SegmentKey::InsertShell ( ShellKit const &  in_kit)

Creates a new shell geometry in this segment and returns a key to it.

◆ InsertShell() [2/3]

ShellKey HPS::SegmentKey::InsertShell ( PointArray const &  in_points,
IntArray const &  in_facelist 
)

Creates a new shell geometry in this segment and returns a key to it.

◆ InsertShell() [3/3]

ShellKey HPS::SegmentKey::InsertShell ( size_t  in_point_count,
Point const  in_points[],
size_t  in_facelist_count,
int const  in_facelist[] 
)

Creates a new shell geometry in this segment and returns a key to it.

◆ InsertShellByTristrips() [1/2]

ShellKey HPS::SegmentKey::InsertShellByTristrips ( PointArray const &  in_points,
IntArray const &  in_tristrips 
)

Creates a new shell geometry in this segment and then returns a key to it.

Parameters
in_pointsAn array of HPS::Point that will serve as vertices in the tri-strip.
in_tristripsAn array of integers that designates the order of the vertices. The first number indicates the number of vertices in a tri-strip. For example, the following declaration specifies two tri-strips, the first with three vertices and the second with five: IntArray triStripIndex = { 3, 0, 1, 2, 5, 3, 4, 5, 6, 7 };
// EXAMPLE: Insert a shell using two tri-strips.
HPS::SegmentKey triStripSegment = windowKey.Subsegment();
PointArray triStripPoints = {
Point(0, 0, 0),
Point(10, 0, 0),
Point(20, 0, 0),
Point(30, 0, 0),
Point(0, 10, 0),
Point(10, 10, 0),
Point(20, 10, 0),
Point(30, 10, 0),
Point(-10, 40, 10),
Point(-10, 20, 10)
};
// To create a tri-strip, reference the points in the scene graph
// using an integer array. The first number indicates how many
// indices are in the tri strip, and the numbers that follow
// represent the vertices.
// In this example, the first tri-strip has 8 indices, and
// the second has just 4.
IntArray triStripIndex = { 8, 4, 0, 5, 1, 6, 2, 7, 3, 4, 8, 4, 9, 0 };
triStripSegment.InsertShellByTristrips(triStripPoints, triStripIndex);
triStripSegment.GetVisibilityControl().SetEdges(true);
windowKey.GetDrawingAttributeControl().SetWorldHandedness(
);
windowKey.GetCameraControl().Zoom(0.05F);
windowKey.Update();

◆ InsertShellByTristrips() [2/2]

ShellKey HPS::SegmentKey::InsertShellByTristrips ( size_t  in_point_count,
Point const  in_points[],
size_t  in_tristrips_count,
int const  in_tristrips[] 
)

Creates a new shell geometry in this segment and returns a key to it.

◆ InsertShellFromGeometry() [1/9]

ShellKey HPS::SegmentKey::InsertShellFromGeometry ( SphereKey const &  in_sphere)

Creates a new shell geometry in this segment which approximates the given sphere and returns a key to it.

Parameters
in_sphereThe SphereKey that will be used to compute the shell approximation.
Returns
The reference to the newly created shell. Will have a type of Type::None if shell insertion failed.

◆ InsertShellFromGeometry() [2/9]

ShellKey HPS::SegmentKey::InsertShellFromGeometry ( CylinderKey const &  in_cylinder)

Creates a new shell geometry in this segment which approximates the given cylinder and returns a key to it.

Parameters
in_cylinderThe CylinderKey that will be used to compute the shell approximation.
Returns
The reference to the newly created shell. Will have a type of Type::None if shell insertion failed.

◆ InsertShellFromGeometry() [3/9]

ShellKey HPS::SegmentKey::InsertShellFromGeometry ( NURBSSurfaceKey const &  in_nurbs_surface)

Creates a new shell geometry in this segment which approximates the given NURBS surface and returns a key to it.

Parameters
in_nurbs_surfaceThe NURBSSurfaceKey that will be used to compute the shell approximation.
Returns
The reference to the newly created shell. Will have a type of Type::None if shell insertion failed.

◆ InsertShellFromGeometry() [4/9]

ShellKey HPS::SegmentKey::InsertShellFromGeometry ( MeshKey const &  in_mesh)

Creates a new shell geometry in this segment which approximates the given mesh and returns a key to it.

Parameters
in_meshThe MeshKey that will be used to compute the shell approximation.
Returns
The reference to the newly created shell. Will have a type of Type::None if shell insertion failed.

◆ InsertShellFromGeometry() [5/9]

ShellKey HPS::SegmentKey::InsertShellFromGeometry ( PolygonKey const &  in_polygon)

Creates a new shell geometry in this segment which approximates the given polygon and returns a key to it.

Parameters
in_polygonThe PolygonKey that will be used to compute the shell approximation.
Returns
The reference to the newly created shell. Will have a type of Type::None if shell insertion failed.

◆ InsertShellFromGeometry() [6/9]

ShellKey HPS::SegmentKey::InsertShellFromGeometry ( EllipseKey const &  in_ellipse)

Creates a new shell geometry in this segment which approximates the given ellipse and returns a key to it.

Parameters
in_ellipseThe EllipseKey that will be used to compute the shell approximation.
Returns
The reference to the newly created shell. Will have a type of Type::None if shell insertion failed.

◆ InsertShellFromGeometry() [7/9]

ShellKey HPS::SegmentKey::InsertShellFromGeometry ( CircleKey const &  in_circle)

Creates a new shell geometry in this segment which approximates the given circle and returns a key to it.

Parameters
in_circleThe CircleKey that will be used to compute the shell approximation.
Returns
The reference to the newly created shell. Will have a type of Type::None if shell insertion failed.

◆ InsertShellFromGeometry() [8/9]

ShellKey HPS::SegmentKey::InsertShellFromGeometry ( CircularWedgeKey const &  in_circular_wedge)

Creates a new shell geometry in this segment which approximates the given circular wedge and returns a key to it.

Parameters
in_circular_wedgeThe CircularWedgeKey that will be used to compute the shell approximation.
Returns
The reference to the newly created shell. Will have a type of Type::None if shell insertion failed.

◆ InsertShellFromGeometry() [9/9]

ShellKey HPS::SegmentKey::InsertShellFromGeometry ( TextKey const &  in_text)

Creates a new shell geometry in this segment which approximates the given text and returns a key to it. The text must be inserted into the window segment in order for this call to succeed.

Parameters
in_textThe TextKey that will be used to compute the shell approximation.
Returns
The reference to the newly created shell. Will have a type of Type::None if shell insertion failed.

◆ InsertSphere() [1/2]

SphereKey HPS::SegmentKey::InsertSphere ( SphereKit const &  in_kit)

Creates a new sphere geometry in this segment and returns a key to it.

Parameters
in_kitThe SphereKit that will define the sphere
Returns
The reference to the newly created sphere. Will have a type of Type::None if sphere insertion failed

◆ InsertSphere() [2/2]

SphereKey HPS::SegmentKey::InsertSphere ( Point const &  in_center,
float  in_radius,
Vector const &  in_axis = Vector(0, 1, 0),
Vector const &  in_prime_meridian = Vector(1, 0, 0) 
)

Creates a new sphere geometry in this segment and returns a key to it.

Parameters
in_centerThe Point that will define the center of the sphere
in_radiusThe radius of the sphere
in_axisThe Vector that will define the axis of the sphere
in_prime_meridianThe Vector that will define the orientation of the sphere (as rotated on its axis)
Returns
The reference to the newly created sphere. Will have a type of Type::None if sphere insertion failed

◆ InsertSpotlight() [1/2]

SpotlightKey HPS::SegmentKey::InsertSpotlight ( Point const &  in_position,
Point const &  in_target 
)

Creates a new spot light geometry in this segment and returns a key to it.

◆ InsertSpotlight() [2/2]

SpotlightKey HPS::SegmentKey::InsertSpotlight ( SpotlightKit const &  in_kit)

Creates a new spot light geometry in this segment and returns a key to it.

◆ InsertText() [1/2]

TextKey HPS::SegmentKey::InsertText ( TextKit const &  in_kit)

Creates a new text geometry in this segment and returns a key to it.

◆ InsertText() [2/2]

TextKey HPS::SegmentKey::InsertText ( Point const &  in_position,
char const *  in_text 
)

Creates a new text geometry in this segment and returns a key to it.

Parameters
in_positionThe position, in world coordinates, where the text will be inserted.
in_textThe text UTF-8 encoded string to insert.
Returns
A reference to the newly created TextKey object. Will have a type of Type::None if line insertion failed.

◆ Name()

UTF8 HPS::SegmentKey::Name ( ) const

Returns the name given to this segment when it was created.

◆ ObjectType()

HPS::Type HPS::SegmentKey::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::Key.

Reimplemented in HPS::OffScreenWindowKey, HPS::ApplicationWindowKey, HPS::StandAloneWindowKey, and HPS::WindowKey.

◆ operator=() [1/2]

SegmentKey& HPS::SegmentKey::operator= ( SegmentKey const &  other)

Copy assignment operator for SegmentKey

◆ operator=() [2/2]

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

The move assignment operator transfers the underlying impl of the rvalue reference to this SegmentKey thereby avoiding a copy.

Parameters
in_thatAn rvalue reference to a SegmentKey to take the impl from.
Returns
A reference to this SegmentKey.

◆ Optimize()

void HPS::SegmentKey::Optimize ( SegmentOptimizationOptionsKit const &  in_kit)

Optimizes this Segment according to the options specified in the SegmentOptimizationOptionsKit.

Parameters
in_kitA SegmentOptimizationOptionsKit that specifies how the Segment should be optimized.

◆ OptimizeWithMapping()

OptimizeMappingResults HPS::SegmentKey::OptimizeWithMapping ( SegmentOptimizationOptionsKit const &  in_kit)

Optimizes this Segment according to the options specified in the SegmentOptimizationOptionsKit.

Note
If shell merging is specified in the SegmentOptimizationOptionsKit then the original shells will be preserved. Original shells may be flushed after merging information has been retrieved from the returned OptimizeMappingResults.
Parameters
in_kitA SegmentOptimizationOptionsKit that specifies how the Segment should be optimized.
Returns
OptimizeMappingResults with information about merged shells.

◆ ReferenceGeometry() [1/2]

ReferenceKey HPS::SegmentKey::ReferenceGeometry ( Key const &  in_key)

References either a geometry key or a segment key in this segment. If the provided key is a geometry key, that geometry will be drawn as though it was in this segment. If the provided key is a segment key, all geometry in that segment will be drawn as though they were in this segment, however no attributes, subsegments or geometry in subsegments will be brought along (though attributes set directly on geometry within the segment will be preserved).

Parameters
in_keyA key to either a piece of geometry or a segment.
Returns
A reference to the newly created geometry reference. This will have a type of Type::None if geometry reference creation failed.

◆ ReferenceGeometry() [2/2]

ReferenceKey HPS::SegmentKey::ReferenceGeometry ( Key const &  in_key,
ConditionalExpression const &  in_conditional 
)

Conditionally references either a geometry key or a segment key in this segment. If the provided key is a geometry key, that geometry will be drawn as though it was in this segment. If the provided key is a segment key, all geometry in that segment will be drawn as though they were in this segment, however no attributes, subsegments or geometry in subsegments will be brought along (though attributes set directly on geometry within the segment will be preserved). The referenced geometry will only get drawn in this segment if a condition is set above the geometry reference satisfying the provided condition.

Parameters
in_keyA key to either a piece of geometry or a segment.
in_conditionalA conditional expression which will determine whether the referenced geometry gets drawn for this segment.
Returns
A reference to the newly created geometry reference. This will have a type of Type::None if geometry reference creation failed.

◆ SetAttributeLock()

SegmentKey& HPS::SegmentKey::SetAttributeLock ( AttributeLockKit const &  in_kit)

Sets the attribute locks designated by in_kit on this segment.

◆ SetBounding()

SegmentKey& HPS::SegmentKey::SetBounding ( BoundingKit const &  in_kit)

Sets the bounding designated by in_kit on this segment.

◆ SetCamera()

SegmentKey& HPS::SegmentKey::SetCamera ( CameraKit const &  in_kit)

Sets the camera attribute designated by in_kit on this segment.

◆ SetColorInterpolation()

SegmentKey& HPS::SegmentKey::SetColorInterpolation ( ColorInterpolationKit const &  in_kit)

Sets the color interpolation attributes designated by in_kit on this segment.

◆ SetCondition()

SegmentKey& HPS::SegmentKey::SetCondition ( char const *  in_condition)

Sets in_condition as the only condition on this segment, replacing any existing conditions.

◆ SetConditions() [1/2]

SegmentKey& HPS::SegmentKey::SetConditions ( UTF8Array const &  in_conditions)

Sets in_conditions as the only conditions on this segment, replacing any existing conditions.

◆ SetConditions() [2/2]

SegmentKey& HPS::SegmentKey::SetConditions ( size_t  in_count,
UTF8 const  in_conditions[] 
)

Sets in_conditions as the only conditions on this segment, replacing any existing conditions.

◆ SetContourLine()

SegmentKey& HPS::SegmentKey::SetContourLine ( ContourLineKit const &  in_kit)

Sets the contour line attributes designated by in_kit on this segment.

◆ SetCulling()

SegmentKey& HPS::SegmentKey::SetCulling ( CullingKit const &  in_kit)

Sets the culling attributes designated by in_kit on this segment.

◆ SetCurveAttribute()

SegmentKey& HPS::SegmentKey::SetCurveAttribute ( CurveAttributeKit const &  in_kit)

Sets the curve attributes designated by in_kit on this segment.

◆ SetCuttingSectionAttribute()

SegmentKey& HPS::SegmentKey::SetCuttingSectionAttribute ( CuttingSectionAttributeKit const &  in_kit)

Sets the cutting section attributes designated by in_kit on this segment.

◆ SetCylinderAttribute()

SegmentKey& HPS::SegmentKey::SetCylinderAttribute ( CylinderAttributeKit const &  in_kit)

Sets the cylinder attributes designated by in_kit on this segment.

◆ SetDrawingAttribute()

SegmentKey& HPS::SegmentKey::SetDrawingAttribute ( DrawingAttributeKit const &  in_kit)

Sets the drawing attributes designated by in_kit on this segment.

◆ SetEdgeAttribute()

SegmentKey& HPS::SegmentKey::SetEdgeAttribute ( EdgeAttributeKit const &  in_kit)

Sets the edge attributes designated by in_kit on this segment.

◆ SetHiddenLineAttribute()

SegmentKey& HPS::SegmentKey::SetHiddenLineAttribute ( HiddenLineAttributeKit const &  in_kit)

Sets the hidden line attributes designated by in_kit on this segment.

◆ SetLightingAttribute()

SegmentKey& HPS::SegmentKey::SetLightingAttribute ( LightingAttributeKit const &  in_kit)

Sets the lighting attributes designated by in_kit on this segment.

◆ SetLineAttribute()

SegmentKey& HPS::SegmentKey::SetLineAttribute ( LineAttributeKit const &  in_kit)

Sets the line attributes designated by in_kit on this segment.

◆ SetMarkerAttribute()

SegmentKey& HPS::SegmentKey::SetMarkerAttribute ( MarkerAttributeKit const &  in_kit)

Sets the marker attributes designated by in_kit on this segment.

◆ SetMaterialMapping()

SegmentKey& HPS::SegmentKey::SetMaterialMapping ( MaterialMappingKit const &  in_kit)

Sets the material mappings designated by in_kit on this segment.

◆ SetMaterialPalette()

SegmentKey& HPS::SegmentKey::SetMaterialPalette ( char const *  in_name)

Applies the material palette associated with in_name to this segment, replacing any existing material palette.

◆ SetModellingMatrix()

SegmentKey& HPS::SegmentKey::SetModellingMatrix ( MatrixKit const &  in_kit)

Sets the modelling matrix attributes designated by in_kit on this segment.

◆ SetName()

SegmentKey& HPS::SegmentKey::SetName ( char const *  in_name)

Sets the new name of this segment.

Returns
A reference to this key

◆ SetNURBSSurfaceAttribute()

SegmentKey& HPS::SegmentKey::SetNURBSSurfaceAttribute ( NURBSSurfaceAttributeKit const &  in_kit)

Sets the NURBS surface attributes designated by in_kit on this segment.

◆ SetPBRMaterial()

SegmentKey& HPS::SegmentKey::SetPBRMaterial ( PBRMaterialKit const &  in_kit)

Sets a PBR material designated by in_kit on this segment.

◆ SetPerformance()

SegmentKey& HPS::SegmentKey::SetPerformance ( PerformanceKit const &  in_kit)

Sets the performance attributes designated by in_kit on this segment.

◆ SetPriority()

SegmentKey& HPS::SegmentKey::SetPriority ( int  in_priority)

Assigns a specific drawing priority value to this segment. It affects the order in which the segment is visited if and only if the rendering algorithm is set to Priority. Segments have a default drawing priority assigned, based on the order that they were created.

Parameters
in_priorityThe drawing priority, higher priority items are drawn on top of lower priority items.
Returns
A reference to this object.
See also
SubwindowKit::SetRenderingAlgorithm()

◆ SetSelectability()

SegmentKey& HPS::SegmentKey::SetSelectability ( SelectabilityKit const &  in_kit)

Sets the selectability attributes designated by in_kit on this segment.

◆ SetSphereAttribute()

SegmentKey& HPS::SegmentKey::SetSphereAttribute ( SphereAttributeKit const &  in_kit)

Sets the sphere attributes designated by in_kit on this segment.

◆ SetSubwindow()

SegmentKey& HPS::SegmentKey::SetSubwindow ( SubwindowKit const &  in_kit)

Sets the subwindow attributes designated by in_kit on this segment.

◆ SetTextAttribute()

SegmentKey& HPS::SegmentKey::SetTextAttribute ( TextAttributeKit const &  in_kit)

Sets the text attributes designated by in_kit on this segment.

◆ SetTextureMatrix()

SegmentKey& HPS::SegmentKey::SetTextureMatrix ( MatrixKit const &  in_kit)

Sets the texture matrix attributes designated by in_kit on this segment.

◆ SetTransformMask()

SegmentKey& HPS::SegmentKey::SetTransformMask ( TransformMaskKit const &  in_kit)

Sets the transform mask designated by in_kit on this segment.

◆ SetTransparency()

SegmentKey& HPS::SegmentKey::SetTransparency ( TransparencyKit const &  in_kit)

Sets the transparency attributes designated by in_kit on this segment.

◆ SetUserData() [1/3]

SegmentKey& HPS::SegmentKey::SetUserData ( IntPtrTArray const &  in_indices,
ByteArrayArray const &  in_data 
)

Sets user data on this key.

Parameters
in_indicesAn array of user data indices to set.
in_dataAn array of bytes of user data to set.
Returns
A reference to this key.

◆ SetUserData() [2/3]

SegmentKey& HPS::SegmentKey::SetUserData ( intptr_t  in_index,
size_t  in_bytes,
byte const  in_data[] 
)

Sets user data on this key.

Parameters
in_indexThe index of the user data to set.
in_bytesThe number of bytes of user data to set.
in_dataThe bytes of user data to set.
Returns
A reference to this key.

◆ SetUserData() [3/3]

SegmentKey& HPS::SegmentKey::SetUserData ( intptr_t  in_index,
ByteArray const &  in_data 
)

Sets user data on this key.

Parameters
in_indexThe index of the user data to set.
in_dataThe bytes of user data to set.
Returns
A reference to this key.

◆ SetVisibility()

SegmentKey& HPS::SegmentKey::SetVisibility ( VisibilityKit const &  in_kit)

Sets the visibility attribute designated by in_kit on this segment.

◆ SetVisualEffects()

SegmentKey& HPS::SegmentKey::SetVisualEffects ( VisualEffectsKit const &  in_kit)

Sets the visual effects attributes designated by in_kit on this segment.

◆ ShowAttributeLock()

bool HPS::SegmentKey::ShowAttributeLock ( AttributeLockKit out_kit) const

Shows the attribute locks settings on this segment.

Returns
False if no attribute locks settings exist on this segment.

◆ ShowBounding()

bool HPS::SegmentKey::ShowBounding ( BoundingKit out_kit) const

Shows the bounding or bounding settings on this segment.

Returns
False if no bounding or bounding settings on this segment.

◆ ShowCamera()

bool HPS::SegmentKey::ShowCamera ( CameraKit out_kit) const

Shows the camera attribute settings on this segment. Returns false if no camera is set on this segment.

◆ ShowColorInterpolation()

bool HPS::SegmentKey::ShowColorInterpolation ( ColorInterpolationKit out_kit) const

Shows the color interpolation attribute settings on this segment. Returns false if no color interpolation attribute settings exist on this segment.

◆ ShowConditions()

bool HPS::SegmentKey::ShowConditions ( UTF8Array out_conditions) const

Shows all conditions on this segment.

◆ ShowContourLine()

bool HPS::SegmentKey::ShowContourLine ( ContourLineKit out_kit) const

Shows the contour line attribute settings on this segment. Returns false if no contour line attribute settings exist on this segment.

◆ ShowCulling()

bool HPS::SegmentKey::ShowCulling ( CullingKit out_kit) const

Shows the culling attribute settings on this segment.

Returns
False if no culling attribute settings exist on this segment.

◆ ShowCurveAttribute()

bool HPS::SegmentKey::ShowCurveAttribute ( CurveAttributeKit out_kit) const

Shows the curve attribute settings on this segment. Returns false if no curve attribute settings exist on this segment.

◆ ShowCuttingSectionAttribute()

bool HPS::SegmentKey::ShowCuttingSectionAttribute ( CuttingSectionAttributeKit out_kit) const

Shows the cutting section attribute settings on this segment. Returns false if no cutting section attribute settings exist on this segment.

◆ ShowCylinderAttribute()

bool HPS::SegmentKey::ShowCylinderAttribute ( CylinderAttributeKit out_kit) const

Shows the cylinder attribute settings on this segment. Returns false if no cylinder attribute settings exist on this segment.

◆ ShowDrawingAttribute()

bool HPS::SegmentKey::ShowDrawingAttribute ( DrawingAttributeKit out_kit) const

Shows the drawing attribute settings on this segment. Returns false if no drawing settings exist on this segment.

◆ ShowEdgeAttribute()

bool HPS::SegmentKey::ShowEdgeAttribute ( EdgeAttributeKit out_kit) const

Shows the edge attribute settings on this segment. Returns false if no edge attribute settings exist on this segment.

◆ ShowHiddenLineAttribute()

bool HPS::SegmentKey::ShowHiddenLineAttribute ( HiddenLineAttributeKit out_kit) const

Shows the hidden line attribute settings on this segment. Returns false if no hidden line settings exist on this segment.

◆ ShowIncluders() [1/2]

size_t HPS::SegmentKey::ShowIncluders ( SegmentKeyArray out_segments) const

Shows the all the segments which contain includes of this key.

Parameters
out_segmentsThe list of segments which contains includes of this key.
Returns
The number of segments which contain includes of this key.

◆ ShowIncluders() [2/2]

size_t HPS::SegmentKey::ShowIncluders ( IncludeKeyArray out_includes) const

Shows the all the includes of this key.

Parameters
out_includesThe list of all includes of this key.
Returns
The number of includes of this key.

◆ ShowLightingAttribute()

bool HPS::SegmentKey::ShowLightingAttribute ( LightingAttributeKit out_kit) const

Shows the lighting attribute settings on this segment. Returns false if no lighting attribute settings exist on this segment.

◆ ShowLineAttribute()

bool HPS::SegmentKey::ShowLineAttribute ( LineAttributeKit out_kit) const

Shows the line attribute settings on this segment. Returns false if no line attribute settings exist on this segment.

◆ ShowMarkerAttribute()

bool HPS::SegmentKey::ShowMarkerAttribute ( MarkerAttributeKit out_kit) const

Shows the marker attribute settings on this segment. Returns false if no marker attribute settings exist on this segment.

◆ ShowMaterialMapping()

bool HPS::SegmentKey::ShowMaterialMapping ( MaterialMappingKit out_kit) const

Shows the material mapping settings on this segment. Returns false if no material mapping settings exist on this segment.

◆ ShowMaterialPalette()

bool HPS::SegmentKey::ShowMaterialPalette ( UTF8 out_name) const

Shows the existing material palette, if any, that is active on this segment.

◆ ShowModellingMatrix()

bool HPS::SegmentKey::ShowModellingMatrix ( MatrixKit out_kit) const

Shows the modelling matrix setting on this segment. Returns false if no modelling matrix setting exists on this segment.

◆ ShowNURBSSurfaceAttribute()

bool HPS::SegmentKey::ShowNURBSSurfaceAttribute ( NURBSSurfaceAttributeKit out_kit) const

Shows the NURBS surface attribute settings on this segment. Returns false if no NURBS surface attribute settings exist on this segment.

◆ ShowPBRMaterial()

bool HPS::SegmentKey::ShowPBRMaterial ( PBRMaterialKit out_kit) const

Shows the PBR material settings on this segment. Returns false if no PBR material settings exist on this segment.

◆ ShowPerformance()

bool HPS::SegmentKey::ShowPerformance ( PerformanceKit out_kit) const

Shows the performance attribute settings on this segment. Returns false if no performance settings exist on this segment.

◆ ShowPriority()

bool HPS::SegmentKey::ShowPriority ( int &  out_priority) const

Shows the drawing priority.

Parameters
out_priorityThe drawing priority, higher priority items are drawn on top of lower priority items.
Returns
true if a priority was specified, false otherwise.

◆ ShowReferrers() [1/2]

size_t HPS::SegmentKey::ShowReferrers ( SegmentKeyArray out_segments) const

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.

Parameters
out_segmentsThe list of segments which contains references to this key.
Returns
The number of segments which contain references to this key.

◆ ShowReferrers() [2/2]

size_t HPS::SegmentKey::ShowReferrers ( ReferenceKeyArray out_references) const

Shows the all the references to this key.

Parameters
out_referencesThe list of all references to this key.
Returns
The number of references to this key.

◆ ShowSelectability()

bool HPS::SegmentKey::ShowSelectability ( SelectabilityKit out_kit) const

Shows the selectability attribute settings on this segment.

Returns
False if no selectability settings exist on this segment.

◆ ShowSphereAttribute()

bool HPS::SegmentKey::ShowSphereAttribute ( SphereAttributeKit out_kit) const

Shows the sphere attribute settings on this segment.

Returns
False if no sphere attribute settings exist on this segment.

◆ ShowStylers() [1/2]

size_t HPS::SegmentKey::ShowStylers ( SegmentKeyArray out_segments) const

Shows the all the segments which are styled by this key. Note that while a segment may only appear once in the returned array, that segment could have multiple styles which refer to this key.

Parameters
out_segmentsThe list of segments which are styled by this key.
Returns
The number of segments which are styled by this key.

◆ ShowStylers() [2/2]

size_t HPS::SegmentKey::ShowStylers ( StyleKeyArray out_styles) const

Shows the all the styles which refer to this key.

Parameters
out_stylesThe list of all styles which refer to this key.
Returns
The number of styles which refer to this key.

◆ ShowSubsegments() [1/2]

size_t HPS::SegmentKey::ShowSubsegments ( ) const
Returns
A count of all child segments of this segment

◆ ShowSubsegments() [2/2]

size_t HPS::SegmentKey::ShowSubsegments ( SegmentKeyArray out_children) const
Returns
A count of all child segments of this segment and populates out_children with keys to them.

◆ ShowSubwindow()

bool HPS::SegmentKey::ShowSubwindow ( SubwindowKit out_kit) const

Shows the subwindow attribute settings on this segment.

Returns
False if no subwindow attribute settings exist on this segment.

◆ ShowTextAttribute()

bool HPS::SegmentKey::ShowTextAttribute ( TextAttributeKit out_kit) const

Shows the text attribute settings on this segment. Returns false if no text attribute settings exist on this segment.

◆ ShowTextureMatrix()

bool HPS::SegmentKey::ShowTextureMatrix ( MatrixKit out_kit) const

Shows the texture matrix setting on this segment.

Returns
False if no texture matrix setting exists on this segment.

◆ ShowTransformMask()

bool HPS::SegmentKey::ShowTransformMask ( TransformMaskKit out_kit) const

Shows the transform mask settings on this segment.

Returns
False if no bounding settings exist on this segment.

◆ ShowTransparency()

bool HPS::SegmentKey::ShowTransparency ( TransparencyKit out_kit) const

Shows the transparency attribute settings on this segment.

Returns
False if no transparency attribute settings exist on this segment.

◆ ShowUserData() [1/2]

bool HPS::SegmentKey::ShowUserData ( IntPtrTArray out_indices,
ByteArrayArray out_data 
) const

Shows all user data for this key.

Parameters
out_indicesAn array of all user data indices set on this key.
out_dataAn array of all user data set on this key.
Returns
true if there is user data on this key, false otherwise.

◆ ShowUserData() [2/2]

bool HPS::SegmentKey::ShowUserData ( intptr_t  in_index,
ByteArray out_data 
) const

Shows the user data at a given index for this key.

Parameters
in_indexThe index of the user data to show.
out_dataThe user data at the given index.
Returns
true if there is user data at the given index, false otherwise.

◆ ShowUserDataCount()

size_t HPS::SegmentKey::ShowUserDataCount ( ) const

Get the number of user data indices set on this key.

◆ ShowUserDataIndices()

bool HPS::SegmentKey::ShowUserDataIndices ( IntPtrTArray out_indices) const

Shows the indices of all user data set on this key.

Parameters
out_indicesThe user data indices set on this key.
Returns
The number of user data indices set on this key.

◆ ShowVisibility()

bool HPS::SegmentKey::ShowVisibility ( VisibilityKit out_kit) const

Shows the visibility attribute settings on this segment.

Returns
False if no visibility is set on this segment.

◆ ShowVisualEffects()

bool HPS::SegmentKey::ShowVisualEffects ( VisualEffectsKit out_kit) const

Shows the visual effects attribute settings on this segment.

Returns
False if no visual effects attribute settings exist on this segment.

◆ Subsegment()

SegmentKey HPS::SegmentKey::Subsegment ( char const *  in_segment_name = "",
bool  in_create_if_not_present = true 
) const

Returns the segment contained by this key with name of in_segment_name. The segment will be created automatically if it does not exist. To prevent automatic segment creation, pass a value of false for in_create_not_present.

◆ UnsetAllUserData()

SegmentKey& HPS::SegmentKey::UnsetAllUserData ( )

Removes all user data from this key.

Returns
A reference to this key.

◆ UnsetAttributeLock()

SegmentKey& HPS::SegmentKey::UnsetAttributeLock ( )

Removes all attribute locks settings from this segment.

◆ UnsetBounding()

SegmentKey& HPS::SegmentKey::UnsetBounding ( )

Removes all bounding settings from this segment.

◆ UnsetCamera()

SegmentKey& HPS::SegmentKey::UnsetCamera ( )

Removes any camera set on this segment.

◆ UnsetColorInterpolation()

SegmentKey& HPS::SegmentKey::UnsetColorInterpolation ( )

Removes any color interpolation attributes set on this segment.

◆ UnsetConditions()

SegmentKey& HPS::SegmentKey::UnsetConditions ( )

Unsets all conditions on this segment.

◆ UnsetContourLine()

SegmentKey& HPS::SegmentKey::UnsetContourLine ( )

Removes any contour line attributes set on this segment.

◆ UnsetCulling()

SegmentKey& HPS::SegmentKey::UnsetCulling ( )

Removes all culling attribute settings from this segment.

◆ UnsetCurveAttribute()

SegmentKey& HPS::SegmentKey::UnsetCurveAttribute ( )

Removes all curve attribute settings from this segment.

◆ UnsetCuttingSectionAttribute()

SegmentKey& HPS::SegmentKey::UnsetCuttingSectionAttribute ( )

Removes all cutting section attribute settings from this segment.

◆ UnsetCylinderAttribute()

SegmentKey& HPS::SegmentKey::UnsetCylinderAttribute ( )

Removes all cylinder attribute settings from this segment.

◆ UnsetDrawingAttribute()

SegmentKey& HPS::SegmentKey::UnsetDrawingAttribute ( )

Removes all drawing settings from this segment.

◆ UnsetEdgeAttribute()

SegmentKey& HPS::SegmentKey::UnsetEdgeAttribute ( )

Removes all edge attribute settings from this segment.

◆ UnsetHiddenLineAttribute()

SegmentKey& HPS::SegmentKey::UnsetHiddenLineAttribute ( )

Removes all hidden line settings from this segment.

◆ UnsetLightingAttribute()

SegmentKey& HPS::SegmentKey::UnsetLightingAttribute ( )

Removes all lighting attribute settings from this segment.

◆ UnsetLineAttribute()

SegmentKey& HPS::SegmentKey::UnsetLineAttribute ( )

Removes all line attribute settings from this segment.

◆ UnsetMarkerAttribute()

SegmentKey& HPS::SegmentKey::UnsetMarkerAttribute ( )

Removes all marker attribute settings from this segment.

◆ UnsetMaterialMapping()

SegmentKey& HPS::SegmentKey::UnsetMaterialMapping ( )

Removes all material mapping settings from this segment.

◆ UnsetMaterialPalette()

SegmentKey& HPS::SegmentKey::UnsetMaterialPalette ( )

Removes the existing material palette, if any, that is active on this segment.

◆ UnsetModellingMatrix()

SegmentKey& HPS::SegmentKey::UnsetModellingMatrix ( )

Removes any modelling matrix settings from this segment.

◆ UnsetNURBSSurfaceAttribute()

SegmentKey& HPS::SegmentKey::UnsetNURBSSurfaceAttribute ( )

Removes all NURBS surface attribute settings from this segment.

◆ UnsetPBRMaterial()

SegmentKey& HPS::SegmentKey::UnsetPBRMaterial ( )

Removes all PBR material settings from this segment.

◆ UnsetPerformance()

SegmentKey& HPS::SegmentKey::UnsetPerformance ( )

Removes all performance settings from this segment.

◆ UnsetPriority()

SegmentKey& HPS::SegmentKey::UnsetPriority ( )

Removes the drawing priority setting.

Returns
A reference to this object.

◆ UnsetSelectability()

SegmentKey& HPS::SegmentKey::UnsetSelectability ( )

Removes all selectability settings from this segment.

◆ UnsetSphereAttribute()

SegmentKey& HPS::SegmentKey::UnsetSphereAttribute ( )

Removes all sphere attribute settings from this segment.

◆ UnsetSubwindow()

SegmentKey& HPS::SegmentKey::UnsetSubwindow ( )

Removes all subwindow attribute settings from this segment.

◆ UnsetTextAttribute()

SegmentKey& HPS::SegmentKey::UnsetTextAttribute ( )

Removes all text attribute settings from this segment.

◆ UnsetTextureMatrix()

SegmentKey& HPS::SegmentKey::UnsetTextureMatrix ( )

Removes any texture matrix settings from this segment.

◆ UnsetTransformMask()

SegmentKey& HPS::SegmentKey::UnsetTransformMask ( )

Removes all transform mask settings from this segment.

◆ UnsetTransparency()

SegmentKey& HPS::SegmentKey::UnsetTransparency ( )

Removes all transparency attribute settings from this segment.

◆ UnsetUserData() [1/3]

SegmentKey& HPS::SegmentKey::UnsetUserData ( intptr_t  in_index)

Removes the user data at the given index from this key.

Parameters
in_indexThe index of the user data to remove.
Returns
A reference to this key.

◆ UnsetUserData() [2/3]

SegmentKey& HPS::SegmentKey::UnsetUserData ( size_t  in_count,
intptr_t const  in_indices[] 
)

Removes the user data at the given indices from this key.

Parameters
in_countThe size of the following array.
in_indicesThe indices of the user data to remove.
Returns
A reference to this key.

◆ UnsetUserData() [3/3]

SegmentKey& HPS::SegmentKey::UnsetUserData ( HPS::IntPtrTArray const &  in_indices)

Removes the user data at the given indices from this key.

Parameters
in_indicesThe indices of the user data to remove.
Returns
A reference to this key.

◆ UnsetVisibility()

SegmentKey& HPS::SegmentKey::UnsetVisibility ( )

Removes all visibility settings from this segment.

◆ UnsetVisualEffects()

SegmentKey& HPS::SegmentKey::UnsetVisualEffects ( )

Removes all visual effects attribute settings from this segment.


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