Hoops Visualize HPS  version 2018-SP2
Hoops Visualize HPS 3D Rendering Engine
Looking for a senior C++ dev?
I'm looking for work. Hire me!
HPS::DrawingAttributeControl Class Reference

#include <hps.h>

Inheritance diagram for HPS::DrawingAttributeControl:
Collaboration diagram for HPS::DrawingAttributeControl:

Public Member Functions

 DrawingAttributeControl (SegmentKey &in_seg)
 Initializes a control tied to the segment in_seg. More...
 
 DrawingAttributeControl (DrawingAttributeControl const &in_that)
 Initializes a control tied to the same object as in_that. More...
 
 DrawingAttributeControl (DrawingAttributeControl &&in_that)
 The move constructor creates a DrawingAttributeControl by transferring the underlying impl of the rvalue reference to this DrawingAttributeControl thereby avoiding a copy and allocation. More...
 
DrawingAttributeControloperator= (DrawingAttributeControl &&in_that)
 The move assignment operator transfers the underlying impl of the rvalue reference to this DrawingAttributeControl thereby avoiding a copy. More...
 
 ~DrawingAttributeControl ()
 Releases a reference to the database object this control is tied to. More...
 
virtual HPS::Type Type () const
 This function returns the true type of the underlying object. More...
 
HPS::Type ObjectType () const
 
DrawingAttributeControloperator= (DrawingAttributeControl const &in_that)
 Share the underlying smart-pointer of the DrawingAttributeControl source. More...
 
DrawingAttributeControlSetPolygonHandedness (Drawing::Handedness in_handedness)
 In order to do a back face culling, there must be some definition of a polygon's "front" and "back". More...
 
DrawingAttributeControlSetWorldHandedness (Drawing::Handedness in_handedness)
 The world handedness determines the orientation of the Z-axis in the Cartesian coordinate system. More...
 
DrawingAttributeControlSetDepthRange (float in_near, float in_far)
 Compresses effective Z values into a subset of what they would otherwise have been. More...
 
DrawingAttributeControlSetFaceDisplacement (bool in_state, int in_buckets=0)
 Specifies a number of Z-buffer units that rendered faces should be pushed away from the camera. More...
 
DrawingAttributeControlSetFaceDisplacement (int in_buckets)
 Specifies a number of Z-buffer units that rendered faces should be pushed away from the camera. More...
 
DrawingAttributeControlSetGeneralDisplacement (bool in_state, int in_buckets=0)
 Specifies a number of Z-buffer units that all geometry should be pushed away from the camera. More...
 
DrawingAttributeControlSetGeneralDisplacement (int in_buckets)
 Specifies a number of Z-buffer units that all geometry should be pushed away from the camera. More...
 
DrawingAttributeControlSetVertexDisplacement (bool in_state, int in_buckets=0)
 Specifies a number of Z-buffer units that vertices should be pushed away from the camera. More...
 
DrawingAttributeControlSetVertexDisplacement (int in_buckets)
 Specifies a number of Z-buffer units that vertices should be pushed away from the camera. More...
 
DrawingAttributeControlSetVertexDecimation (float in_zero_to_one)
 Specifies an amount of vertices to draw 1 draws them all. More...
 
DrawingAttributeControlSetVertexRandomization (bool in_state)
 Specifies vertices should be drawn in a random order. More...
 
DrawingAttributeControlSetOverlay (Drawing::Overlay in_overlay)
 Allows moving, editing, or deleting to take place in a segment without triggering a full-screen redraw. More...
 
DrawingAttributeControlSetClipRegion (PointArray const &in_points, Drawing::ClipSpace in_space=Drawing::ClipSpace::World, Drawing::ClipOperation in_operation=Drawing::ClipOperation::Keep)
 Specifies a clip region. More...
 
DrawingAttributeControlSetClipRegion (size_t in_point_count, Point const in_points [], Drawing::ClipSpace in_space=Drawing::ClipSpace::World, Drawing::ClipOperation in_operation=Drawing::ClipOperation::Keep)
 Specifies a clip region. More...
 
DrawingAttributeControlSetClipRegion (PointArrayArray const &in_loops, Drawing::ClipSpace in_space=Drawing::ClipSpace::World, Drawing::ClipOperation in_operation=Drawing::ClipOperation::Keep)
 Sets a complex polygonal clip region defined by the XOR of a series of loops. More...
 
DrawingAttributeControlSetDeferral (int in_deferral)
 Specifies a drawing order for a segment during timed updates. More...
 
DrawingAttributeControlUnsetPolygonHandedness ()
 Removes a polygon handedness setting. More...
 
DrawingAttributeControlUnsetWorldHandedness ()
 Removes a world handedness setting. More...
 
DrawingAttributeControlUnsetDepthRange ()
 Removes a depth range setting. More...
 
DrawingAttributeControlUnsetFaceDisplacement ()
 Removes a face displacement setting. More...
 
DrawingAttributeControlUnsetGeneralDisplacement ()
 Removes a general displacement setting. More...
 
DrawingAttributeControlUnsetVertexDisplacement ()
 Removes a vertex displacement setting. More...
 
DrawingAttributeControlUnsetVertexDecimation ()
 Removes a vertex decimation setting. More...
 
DrawingAttributeControlUnsetVertexRandomization ()
 Removes a vertex randomization setting. More...
 
DrawingAttributeControlUnsetOverlay ()
 Removes an overlay setting. More...
 
DrawingAttributeControlUnsetDeferral ()
 Removes a deferral setting. More...
 
DrawingAttributeControlUnsetClipRegion ()
 Removes a clip region setting. More...
 
DrawingAttributeControlUnsetEverything ()
 Removes all settings from this object. More...
 
bool ShowPolygonHandedness (Drawing::Handedness &out_handedness) const
 Shows the polygon handedness. More...
 
bool ShowWorldHandedness (Drawing::Handedness &out_handedness) const
 Shows the world handedness. More...
 
bool ShowDepthRange (float &out_x, float &out_y) const
 Shows the depth range setting. More...
 
bool ShowFaceDisplacement (bool &out_state, int &out_buckets) const
 Shows the face displacement setting. More...
 
bool ShowGeneralDisplacement (bool &out_state, int &out_buckets) const
 Shows the general displacement setting. More...
 
bool ShowVertexDisplacement (bool &out_state, int &out_buckets) const
 Shows the vertex displacement setting. More...
 
bool ShowVertexDecimation (float &out_zero_to_one) const
 Shows the vertex decimation setting. More...
 
bool ShowVertexRandomization (bool &out_state) const
 Shows the vertex randomization setting. More...
 
bool ShowOverlay (Drawing::Overlay &out_overlay) const
 Shows the overlay setting. More...
 
bool ShowDeferral (int &out_defer_batch) const
 Shows the deferral setting. More...
 
bool ShowClipRegion (PointArrayArray &out_loops, Drawing::ClipSpace &out_space, Drawing::ClipOperation &out_operation) const
 Shows the clip region setting. More...
 
virtual bool Empty () const
 Indicates whether this object has any values set on it. More...
 
virtual void Reset ()
 Resets this object to its initial, uninitialized state. More...
 
bool HasType (HPS::Type in_mask) const
 This function indicates whether this Object has the given Type mask. More...
 
intptr_t GetClassID () const
 Returns a unique identifier that is shared by all objects of the same class. More...
 
intptr_t GetInstanceID () const
 Returns an identifier that can be used to identify which instance of a class an object is. More...
 

Static Public Member Functions

template<typename T >
static intptr_t ClassID ()
 Unique identifier for this class. More...
 

Static Public Attributes

static const HPS::Type staticType = HPS::Type::DrawingAttributeControl
 

Private Member Functions

 DrawingAttributeControl ()
 Private default constructor to prevent instantiation without a segment. More...
 

Detailed Description

The HPS::DrawingAttributeControl class is a smart pointer that is tied to a database object. This object is used to manipulate various high-level settings, such as depth range, priority, and displacement. Note that some of the attributes available through this control should only be set for an entire window, while others can be set at multiple places.

Global attributes:
World handedness, polygon handedness, priority, depth range

Segment-level attributes:
overlay, deferral, face displacement, general displacement, clip regions

This table lists default values for the various segment attributes accessible from HPS::DrawingAttributeControl.

Constructor & Destructor Documentation

◆ DrawingAttributeControl() [1/4]

HPS::DrawingAttributeControl::DrawingAttributeControl ( SegmentKey in_seg)
explicit

Initializes a control tied to the segment in_seg.

◆ DrawingAttributeControl() [2/4]

HPS::DrawingAttributeControl::DrawingAttributeControl ( DrawingAttributeControl const &  in_that)

Initializes a control tied to the same object as in_that.

◆ DrawingAttributeControl() [3/4]

HPS::DrawingAttributeControl::DrawingAttributeControl ( DrawingAttributeControl &&  in_that)

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

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

◆ ~DrawingAttributeControl()

HPS::DrawingAttributeControl::~DrawingAttributeControl ( )

Releases a reference to the database object this control is tied to.

◆ DrawingAttributeControl() [4/4]

HPS::DrawingAttributeControl::DrawingAttributeControl ( )
private

Private default constructor to prevent instantiation without a segment.

Member Function Documentation

◆ ClassID()

template<typename T >
static intptr_t HPS::Object::ClassID ( )
inlinestaticinherited

Unique identifier for this class.

Note: this method uses construction of static objects. If used in a constructor, it should be used in the body not the initializer list.

◆ Empty()

virtual bool HPS::Object::Empty ( ) const
inlinevirtualinherited

Indicates whether this object has any values set on it.

Returns
true if no values are set on this object, false otherwise.

Reimplemented in HPS::STL::ImportResultsKit, HPS::STL::ImportOptionsKit, HPS::OBJ::ImportResultsKit, HPS::OBJ::ImportOptionsKit, HPS::Hardcopy::File::ExportOptionsKit, HPS::Stream::ExportOptionsKit, HPS::Stream::ImportResultsKit, HPS::Stream::ImportOptionsKit, HPS::PointCloud::ImportOptionsKit, HPS::PointCloud::ImportResultsKit, HPS::UpdateOptionsKit, HPS::HighlightSearchOptionsKit, HPS::HighlightOptionsKit, HPS::SelectionOptionsKit, HPS::SearchOptionsKit, HPS::CutGeometryGatheringOptionsKit, HPS::ShapeKit, HPS::ShaderKit, HPS::Shader::ImportOptionsKit, HPS::ImageKit, HPS::Image::ImportOptionsKit, HPS::Image::ExportOptionsKit, HPS::TextureOptionsKit, HPS::LinePatternKit, HPS::LinePatternParallelKit, HPS::LinePatternOptionsKit, HPS::GlyphKit, HPS::ApplicationWindowOptionsKit, HPS::OffScreenWindowOptionsKit, HPS::StandAloneWindowOptionsKit, HPS::GridKit, HPS::PolygonKit, HPS::MeshKit, HPS::ShellKit, HPS::ShellRelationResultsKit, HPS::ShellRelationOptionsKit, HPS::ShellOptimizationOptionsKit, HPS::TextKit, HPS::EllipticalArcKit, HPS::EllipseKit, HPS::TrimKit, HPS::NURBSSurfaceKit, HPS::NURBSCurveKit, HPS::SpotlightKit, HPS::InfiniteLineKit, HPS::CuttingSectionKit, HPS::CircularWedgeKit, HPS::CircularArcKit, HPS::CircleKit, HPS::SphereKit, HPS::CylinderKit, HPS::DistantLightKit, HPS::MarkerKit, HPS::LineKit, HPS::AttributeLockKit, HPS::FontInfoState, HPS::WindowInfoKit, HPS::DebuggingKit, HPS::SubwindowKit, HPS::ContourLineKit, HPS::VisualEffectsKit, HPS::TransformMaskKit, HPS::PostProcessEffectsKit, HPS::DrawingAttributeKit, HPS::HiddenLineAttributeKit, HPS::PerformanceKit, HPS::NURBSSurfaceAttributeKit, HPS::MaterialKit, HPS::MaterialMappingKit, HPS::MatrixKit, HPS::CurveAttributeKit, HPS::EdgeAttributeKit, HPS::LineAttributeKit, HPS::TextAttributeKit, HPS::CuttingSectionAttributeKit, HPS::CylinderAttributeKit, HPS::LightingAttributeKit, HPS::SphereAttributeKit, HPS::MarkerAttributeKit, HPS::CullingKit, HPS::ColorInterpolationKit, HPS::TransparencyKit, HPS::SelectabilityKit, HPS::CameraKit, HPS::VisibilityKit, HPS::BoundingKit, HPS::SegmentOptimizationOptionsKit, HPS::Publish::ExportOptionsKit, HPS::Publish::TextFieldKit, HPS::Publish::SignatureFieldKit, HPS::Publish::DropDownListKit, HPS::Exchange::TessellationOptionsKit, HPS::Publish::ListBoxKit, HPS::Exchange::ExportSTEPOptionsKit, HPS::Exchange::ExportParasolidOptionsKit, HPS::Publish::RadioButtonKit, HPS::Exchange::ExportIGESOptionsKit, HPS::Exchange::ExportXMLOptionsKit, HPS::Publish::CheckBoxKit, HPS::Exchange::ExportU3DOptionsKit, HPS::Exchange::ExportSTLOptionsKit, HPS::Publish::ButtonKit, HPS::Exchange::ExportPRCOptionsKit, HPS::Publish::LinkKit, HPS::Exchange::ExportJTOptionsKit, HPS::Publish::SlideTableKit, HPS::Exchange::ExportACISOptionsKit, HPS::Publish::TableKit, HPS::Exchange::Export3MFOptionsKit, HPS::Publish::ImageKit, HPS::Publish::TextKit, HPS::Exchange::ModelFileImportOptionsKit, HPS::Publish::ViewKit, HPS::Exchange::TranslationOptionsKit, HPS::Publish::ArtworkKit, HPS::Publish::AnnotationKit, HPS::ComponentPath, HPS::Exchange::ImportOptionsKit, HPS::Parasolid::ExportOptionsKit, HPS::Exchange::NURBSConversionOptionsKit, HPS::Parasolid::LineTessellationKit, HPS::Exchange::Configuration, HPS::Publish::PageKit, HPS::Parasolid::FacetTessellationKit, HPS::Publish::DocumentKit, HPS::Parasolid::ImportOptionsKit, HPS::DWG::ImportOptionsKit, HPS::OOC::ImportOptionsKit, HPS::Sketchup::ImportOptionsKit, and HPS::Sketchup::ImportResultsKit.

◆ GetClassID()

intptr_t HPS::Object::GetClassID ( ) const
inherited

Returns a unique identifier that is shared by all objects of the same class.

Returns
A unique value shared by all objects of the same class.

◆ GetInstanceID()

intptr_t HPS::Object::GetInstanceID ( ) const
inherited

Returns an identifier that can be used to identify which instance of a class an object is.

Different keys and controls will return the same value if they are backed by the same database resource.

Returns
A value unique to an instance of an object and all objects that are backed by the same database resource.

◆ HasType()

bool HPS::Object::HasType ( HPS::Type  in_mask) const
inherited

This function indicates whether this Object has the given Type mask.

Parameters
in_maskThe Type mask to check against this Object.
Returns
true if this Object has the given Type mask, false otherwise.

◆ ObjectType()

HPS::Type HPS::DrawingAttributeControl::ObjectType ( ) const
inlinevirtual

Reimplemented from HPS::Control.

◆ operator=() [1/2]

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

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

Parameters
in_thatAn rvalue reference to an DrawingAttributeControl to take the impl from.
Returns
A reference to this DrawingAttributeControl.

◆ operator=() [2/2]

DrawingAttributeControl& HPS::DrawingAttributeControl::operator= ( DrawingAttributeControl const &  in_that)

Share the underlying smart-pointer of the DrawingAttributeControl source.

Parameters
in_thatThe DrawingAttributeControl source of the assignment.
Returns
A reference to this DrawingAttributeControl.

◆ Reset()

◆ SetClipRegion() [1/3]

DrawingAttributeControl& HPS::DrawingAttributeControl::SetClipRegion ( PointArray const &  in_points,
Drawing::ClipSpace  in_space = Drawing::ClipSpace::World,
Drawing::ClipOperation  in_operation = Drawing::ClipOperation::Keep 
)

Specifies a clip region.

Parameters
in_pointsAn array of points specifying the shape of the clip region.
in_spaceThe space coordinated in which the points are specified.
in_operationThe operation performed by this clip region.
Returns
A reference to this object.

◆ SetClipRegion() [2/3]

DrawingAttributeControl& HPS::DrawingAttributeControl::SetClipRegion ( size_t  in_point_count,
Point const  in_points[],
Drawing::ClipSpace  in_space = Drawing::ClipSpace::World,
Drawing::ClipOperation  in_operation = Drawing::ClipOperation::Keep 
)

Specifies a clip region.

Parameters
in_point_countThe number of elements in in_points
in_pointsAn array of points specifying the shape of the clip region.
in_spaceThe space coordinated in which the points are specified.
in_operationThe operation performed by this clip region.
Returns
A reference to this object.

◆ SetClipRegion() [3/3]

DrawingAttributeControl& HPS::DrawingAttributeControl::SetClipRegion ( PointArrayArray const &  in_loops,
Drawing::ClipSpace  in_space = Drawing::ClipSpace::World,
Drawing::ClipOperation  in_operation = Drawing::ClipOperation::Keep 
)

Sets a complex polygonal clip region defined by the XOR of a series of loops.

Parameters
in_loopsAn array of loops describing clip regions.
in_spaceThe coordinate space in which in_loops are specified.
in_operationThe operation performed by the clip region.
Returns
A reference to this object.

◆ SetDeferral()

DrawingAttributeControl& HPS::DrawingAttributeControl::SetDeferral ( int  in_deferral)

Specifies a drawing order for a segment during timed updates.

Segments with a lower deferral value will be drawn before segments with a higher value. This attribute does not inherit like most attributes. Segments have a default value of 0.

Parameters
in_deferralA drawing priority, with larger values drawing later than usual. Should be non-negative.
Returns
A reference to this object.

◆ SetDepthRange()

DrawingAttributeControl& HPS::DrawingAttributeControl::SetDepthRange ( float  in_near,
float  in_far 
)

Compresses effective Z values into a subset of what they would otherwise have been.

This allows certain pieces of the scene to be drawn on top at all times without additional sub-windows. Values of (0,0) will force all geometry into the frontmost bucket, but will have the drawback that it will cause z-fighting amongst the geometry that shares that setting. To get such pieces of geometry to resolve reasonably well against each other, a range of (0,0.1) should perform reasonably well.

Depth range settings are not cumulative, and have no effect when the rendering algorithm is Priority, or is not set.

The default is (0,1)

Parameters
in_nearThe portion of the depth range closest to the camera. Valid range is [0,1] with in_near <= in_far.
in_farThe portion of the depth range furthest to the camera. Valid range is [0,1] with in_near <= in_far.
Returns
A reference to this object.

◆ SetFaceDisplacement() [1/2]

DrawingAttributeControl& HPS::DrawingAttributeControl::SetFaceDisplacement ( bool  in_state,
int  in_buckets = 0 
)

Specifies a number of Z-buffer units that rendered faces should be pushed away from the camera.

This can be used to reduce edge stitching by ensuring that coincident edges lay on top of the faces. Negative face displacements will push faces toward the camera.

Parameters
in_stateWhether face displacement should be used.
in_bucketsThe number of units to move faces in the Z-Buffer. The units are 1/2^24 in the normalized depth range [0,1]. Negative values will move faces toward the camera, positive values away from the camera.
Returns
A reference to this object.

◆ SetFaceDisplacement() [2/2]

DrawingAttributeControl& HPS::DrawingAttributeControl::SetFaceDisplacement ( int  in_buckets)

Specifies a number of Z-buffer units that rendered faces should be pushed away from the camera.

The state is implicitly on.

Parameters
in_bucketsThe number of units to move faces in the Z-Buffer. The units are 1/2^24 in the normalized depth range [0,1]. Negative values will move faces toward the camera, positive values away from the camera.
Returns
A reference to this object.
See also
SetFaceDisplacement(bool in_state, int in_buckets)

◆ SetGeneralDisplacement() [1/2]

DrawingAttributeControl& HPS::DrawingAttributeControl::SetGeneralDisplacement ( bool  in_state,
int  in_buckets = 0 
)

Specifies a number of Z-buffer units that all geometry should be pushed away from the camera.

This can be used to ensure that certain geometry is drawn on top of or behind the rest of the scene. Negative general displacements will push geometry toward the camera.

Parameters
in_stateWhether general displacement should be used.
in_bucketsThe number of units to move rendered geometry in the Z-Buffer. The units are 1/2^24 in the normalized depth range [0,1]. Negative values will move geometry toward the camera, positive values away from the camera.
Returns
A reference to this object.

◆ SetGeneralDisplacement() [2/2]

DrawingAttributeControl& HPS::DrawingAttributeControl::SetGeneralDisplacement ( int  in_buckets)

Specifies a number of Z-buffer units that all geometry should be pushed away from the camera.

The state is implicitly on.

Parameters
in_bucketsThe number of units to move rendered geometry in the Z-Buffer. The units are 1/2^24 in the normalized depth range [0,1]. Negative values will move geometry toward the camera, positive values away from the camera.
Returns
A reference to this object.
See also
SetGeneralDisplacement(bool in_state, int in_buckets)

◆ SetOverlay()

DrawingAttributeControl& HPS::DrawingAttributeControl::SetOverlay ( Drawing::Overlay  in_overlay)

Allows moving, editing, or deleting to take place in a segment without triggering a full-screen redraw.

Parameters
in_overlayThe type of overlay, if any, to be used.
Returns
A reference to this object.

◆ SetPolygonHandedness()

DrawingAttributeControl& HPS::DrawingAttributeControl::SetPolygonHandedness ( Drawing::Handedness  in_handedness)

In order to do a back face culling, there must be some definition of a polygon's "front" and "back".

This orientation is determined by the order in which the polygon's vertices were originally defined and the polygon handedness setting (not the world handedness). If you wrap the fingers of the chosen hand along the vertices of the polygon, with your wrist at the first vertex and your fingertips at the last, then extend your thumb perpendicular to your fingers, your thumb is extending out of the front face of the polygon.

Parameters
in_handednessThe handedness to be used for geometry.
Returns
A reference to this object.
See also
SetWorldHandedness()
CullingKit::SetBackFace()

◆ SetVertexDecimation()

DrawingAttributeControl& HPS::DrawingAttributeControl::SetVertexDecimation ( float  in_zero_to_one)

Specifies an amount of vertices to draw 1 draws them all.

Parameters
in_zero_to_oneAn amount, between [0,1], of vertices to draw.
Returns
A reference to this object.

◆ SetVertexDisplacement() [1/2]

DrawingAttributeControl& HPS::DrawingAttributeControl::SetVertexDisplacement ( bool  in_state,
int  in_buckets = 0 
)

Specifies a number of Z-buffer units that vertices should be pushed away from the camera.

This can be used to ensure that vertices are drawn on top of or behind other geometry. Negative general displacements will push vertices toward the camera.

Parameters
in_stateWhether vertex displacement should be used.
in_bucketsThe number of units to move vertices in the Z-Buffer. The units are 1/2^24 in the normalized depth range [0,1]. Negative values will move vertices toward the camera, positive values away from the camera.
Returns
A reference to this object.

◆ SetVertexDisplacement() [2/2]

DrawingAttributeControl& HPS::DrawingAttributeControl::SetVertexDisplacement ( int  in_buckets)

Specifies a number of Z-buffer units that vertices should be pushed away from the camera.

The state is implicitly on.

Parameters
in_bucketsThe number of units to move vertices in the Z-Buffer. The units are 1/2^24 in the normalized depth range [0,1]. Negative values will move vertices toward the camera, positive values away from the camera.
Returns
A reference to this object.

◆ SetVertexRandomization()

DrawingAttributeControl& HPS::DrawingAttributeControl::SetVertexRandomization ( bool  in_state)

Specifies vertices should be drawn in a random order.

Parameters
in_stateIf true the vertices for a point cloud will be randomized.
Returns
A reference to this object.

◆ SetWorldHandedness()

DrawingAttributeControl& HPS::DrawingAttributeControl::SetWorldHandedness ( Drawing::Handedness  in_handedness)

The world handedness determines the orientation of the Z-axis in the Cartesian coordinate system.

If you curl the fingers of your appropriate hand from the X-axis towards the Y-axis, your thumb will point in the direction of the Z-axis.

Parameters
in_handednessThe handedness of the underlying coordinate system.
Returns
A reference to this object.
See also
SetPolygonHandedness()

◆ ShowClipRegion()

bool HPS::DrawingAttributeControl::ShowClipRegion ( PointArrayArray out_loops,
Drawing::ClipSpace out_space,
Drawing::ClipOperation out_operation 
) const

Shows the clip region setting.

Parameters
out_loopsAn array of loops specifying the shape of the clip region.
out_spaceThe coordinate space the points are specified in.
out_operationThe operation performed by this clip region.
Returns
true if the setting is valid, false otherwise.

◆ ShowDeferral()

bool HPS::DrawingAttributeControl::ShowDeferral ( int &  out_defer_batch) const

Shows the deferral setting.

Parameters
out_defer_batchA drawing priority, with negative values drawing earlier than usual and positive values drawing later than usual.
Returns
true if the setting is valid, false otherwise.

◆ ShowDepthRange()

bool HPS::DrawingAttributeControl::ShowDepthRange ( float &  out_x,
float &  out_y 
) const

Shows the depth range setting.

Parameters
out_nearThe portion of the depth range closest to the camera. Valid range is [0,1] with out_near <= out_far.
out_farThe portion of the depth range furthest to the camera. Valid range is [0,1] with out_near <= out_far.
Returns
true if the setting is valid, false otherwise.

◆ ShowFaceDisplacement()

bool HPS::DrawingAttributeControl::ShowFaceDisplacement ( bool &  out_state,
int &  out_buckets 
) const

Shows the face displacement setting.

Parameters
out_stateWhether face displacement will be used.
out_bucketsThe distance to move rendered faces away from the camera.
Returns
true if the setting is valid, false otherwise.

◆ ShowGeneralDisplacement()

bool HPS::DrawingAttributeControl::ShowGeneralDisplacement ( bool &  out_state,
int &  out_buckets 
) const

Shows the general displacement setting.

Parameters
out_stateWhether general displacement will be used.
out_bucketsThe distance to move rendered geometry away from the camera.
Returns
true if the setting is valid, false otherwise.

◆ ShowOverlay()

bool HPS::DrawingAttributeControl::ShowOverlay ( Drawing::Overlay out_overlay) const

Shows the overlay setting.

Parameters
out_overlayThe type of overlay, if any, used.
Returns
true if the setting is valid, false otherwise.

◆ ShowPolygonHandedness()

bool HPS::DrawingAttributeControl::ShowPolygonHandedness ( Drawing::Handedness out_handedness) const

Shows the polygon handedness.

Parameters
out_handednessThe handedness used for geometry.
Returns
true if the setting is valid, false otherwise.

◆ ShowVertexDecimation()

bool HPS::DrawingAttributeControl::ShowVertexDecimation ( float &  out_zero_to_one) const

Shows the vertex decimation setting.

Parameters
out_zero_to_oneThe value set for vertex decimation.
Returns
true if the setting is valid, false otherwise.

◆ ShowVertexDisplacement()

bool HPS::DrawingAttributeControl::ShowVertexDisplacement ( bool &  out_state,
int &  out_buckets 
) const

Shows the vertex displacement setting.

Parameters
out_stateWhether vertex displacement will be used.
out_bucketsThe distance to move vertices away from the camera.
Returns
true if the setting is valid, false otherwise.

◆ ShowVertexRandomization()

bool HPS::DrawingAttributeControl::ShowVertexRandomization ( bool &  out_state) const

Shows the vertex randomization setting.

Parameters
out_stateWhether vertex randomization will be used.
Returns
true if the setting is valid, false otherwise.

◆ ShowWorldHandedness()

bool HPS::DrawingAttributeControl::ShowWorldHandedness ( Drawing::Handedness out_handedness) const

Shows the world handedness.

Parameters
out_handednessThe handedness of the underlying coordinate system.
Returns
true if the setting is valid, false otherwise.

◆ Type()

virtual HPS::Type HPS::DrawingAttributeControl::Type ( ) const
inlinevirtual

This function returns the true type of the underlying object.

This function is useful for finding the type of smart pointer objects that have been cast to more generic types.

Returns
The true type of the object in question.

Reimplemented from HPS::Control.

◆ UnsetClipRegion()

DrawingAttributeControl& HPS::DrawingAttributeControl::UnsetClipRegion ( )

Removes a clip region setting.

If the control is attached to a WindowKey this function restores the default value of this setting as specified by DrawingAttributeKit::GetDefault().

Returns
A reference to this object.

◆ UnsetDeferral()

DrawingAttributeControl& HPS::DrawingAttributeControl::UnsetDeferral ( )

Removes a deferral setting.

If the control is attached to a WindowKey this function restores the default value of this setting as specified by DrawingAttributeKit::GetDefault().

Returns
A reference to this object.

◆ UnsetDepthRange()

DrawingAttributeControl& HPS::DrawingAttributeControl::UnsetDepthRange ( )

Removes a depth range setting.

If the control is attached to a WindowKey this function restores the default value of this setting as specified by DrawingAttributeKit::GetDefault().

Returns
A reference to this object.

◆ UnsetEverything()

DrawingAttributeControl& HPS::DrawingAttributeControl::UnsetEverything ( )

Removes all settings from this object.

If the control is attached to a WindowKey this function restores the default settings of this control as specified by DrawingAttributeKit::GetDefault().

Returns
A reference to this object.

◆ UnsetFaceDisplacement()

DrawingAttributeControl& HPS::DrawingAttributeControl::UnsetFaceDisplacement ( )

Removes a face displacement setting.

If the control is attached to a WindowKey this function restores the default value of this setting as specified by DrawingAttributeKit::GetDefault().

Returns
A reference to this object.

◆ UnsetGeneralDisplacement()

DrawingAttributeControl& HPS::DrawingAttributeControl::UnsetGeneralDisplacement ( )

Removes a general displacement setting.

If the control is attached to a WindowKey this function restores the default value of this setting as specified by DrawingAttributeKit::GetDefault().

Returns
A reference to this object.

◆ UnsetOverlay()

DrawingAttributeControl& HPS::DrawingAttributeControl::UnsetOverlay ( )

Removes an overlay setting.

If the control is attached to a WindowKey this function restores the default value of this setting as specified by DrawingAttributeKit::GetDefault().

Returns
A reference to this object.

◆ UnsetPolygonHandedness()

DrawingAttributeControl& HPS::DrawingAttributeControl::UnsetPolygonHandedness ( )

Removes a polygon handedness setting.

If the control is attached to a WindowKey this function restores the default value of this setting as specified by DrawingAttributeKit::GetDefault().

Returns
A reference to this object.

◆ UnsetVertexDecimation()

DrawingAttributeControl& HPS::DrawingAttributeControl::UnsetVertexDecimation ( )

Removes a vertex decimation setting.

If the control is attached to a WindowKey this function restores the default value of this setting as specified by DrawingAttributeKit::GetDefault().

Returns
A reference to this object.

◆ UnsetVertexDisplacement()

DrawingAttributeControl& HPS::DrawingAttributeControl::UnsetVertexDisplacement ( )

Removes a vertex displacement setting.

If the control is attached to a WindowKey this function restores the default value of this setting as specified by DrawingAttributeKit::GetDefault().

Returns
A reference to this object.

◆ UnsetVertexRandomization()

DrawingAttributeControl& HPS::DrawingAttributeControl::UnsetVertexRandomization ( )

Removes a vertex randomization setting.

If the control is attached to a WindowKey this function restores the default value of this setting as specified by DrawingAttributeKit::GetDefault().

Returns
A reference to this object.

◆ UnsetWorldHandedness()

DrawingAttributeControl& HPS::DrawingAttributeControl::UnsetWorldHandedness ( )

Removes a world handedness setting.

If the control is attached to a WindowKey this function restores the default value of this setting as specified by DrawingAttributeKit::GetDefault().

Returns
A reference to this object.

Member Data Documentation

◆ staticType

const HPS::Type HPS::DrawingAttributeControl::staticType = HPS::Type::DrawingAttributeControl
static

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