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::CuttingSection Class Reference

The CuttingSection class is a concept class for cutting-section-related enum classes. More...

#include <hps.h>

Public Types

enum  Mode : uint32_t {
  Mode::None,
  Mode::Round,
  Mode::Square,
  Mode::Plane
}
 Enumerates the modes for cutting sections. More...
 
enum  CappingLevel : uint32_t {
  CappingLevel::Entity,
  CappingLevel::Segment,
  CappingLevel::SegmentTree
}
 Enumerates the level at which capping geometry should be generated for cutting sections. More...
 
enum  ToleranceUnits : uint32_t {
  ToleranceUnits::Percent,
  ToleranceUnits::WorldSpace
}
 Enumerates the how tolerance should be interpreted. More...
 
enum  CuttingLevel : uint32_t {
  CuttingLevel::Global,
  CuttingLevel::Local
}
 Enumerates the level at which cutting planes should operate. More...
 
enum  MaterialPreference : uint32_t {
  MaterialPreference::Explicit,
  MaterialPreference::Implicit
}
 Enumerates which material settings should be used for cut geometry generated for cutting sections. More...
 
enum  GatheringLevel : uint32_t {
  GatheringLevel::Segment,
  GatheringLevel::SegmentTree
}
 Enumerates the level at which capping geometry should be gathered. More...
 

Private Member Functions

 CuttingSection ()
 

Detailed Description

The CuttingSection class is a concept class for cutting-section-related enum classes.

Member Enumeration Documentation

◆ CappingLevel

enum HPS::CuttingSection::CappingLevel : uint32_t
strong

Enumerates the level at which capping geometry should be generated for cutting sections.

Enumerator
Entity 

Each piece of geometry should be treated as if it encloses a volume.

Segment 

All geometry in a segment (but not subsegments) should be treated as if it encloses a single volume.

SegmentTree 

All geometry in a segment tree should be treated as if it encloses a single volume.

◆ CuttingLevel

enum HPS::CuttingSection::CuttingLevel : uint32_t
strong

Enumerates the level at which cutting planes should operate.

Enumerator
Global 

Cutting sections will cut all geometry in the scene graph.

Local 

Cutting sections will only cut geometry contained in the segment and subsegments where the cutting section is inserted.

◆ GatheringLevel

enum HPS::CuttingSection::GatheringLevel : uint32_t
strong

Enumerates the level at which capping geometry should be gathered.

Enumerator
Segment 

Capping geometry will be gathered only from a single segment.

SegmentTree 

Capping geometry will be gathered from the segment and all its subsegments and includes.

◆ MaterialPreference

Enumerates which material settings should be used for cut geometry generated for cutting sections.

Enumerator
Explicit 

Use the effective materials set for cut faces and cut edges in the segment tree.



For example, the following function applies color settings that would be respected when MaterialPreference is set to Explicit: mySegmentKey.GetMaterialMappingControl().SetCutFaceColor(myRGBAColor).SetCutEdgeColor(myRGBAColor)

Implicit 

Use the effective materials set for (regular) faces and (regular) edges in the segment tree.

For Segment or SegmentTree CappingLevel, the implicit capping geometry face color will be the weighted average of the geometry face colors where the cut is applied.

For example, the following function applies color settings that would be respected when MaterialPreference is set to Implicit: mySegmentKey.GetMaterialMappingControl().SetFaceColor(myRGBAColor).SetEdgeColor(myRGBAColor)

◆ Mode

enum HPS::CuttingSection::Mode : uint32_t
strong

Enumerates the modes for cutting sections.

These are the shapes (if any) of the visualization geometry that will be drawn to represent cutting planes within cutting sections.

Enumerator
None 

No visualization geometry will be drawn for cutting planes in a cutting sections.

Round 

A circular plane will be drawn for cutting planes in a cutting section.

The size of the planes will be based on the size of the geometry being cut and the visualization scale.

Square 

A square plane will be drawn for cutting planes in a cutting section.

The size of the planes will be based on the size of the geometry being cut and the visualization scale.

Plane 

An infinitely large plane will be drawn for cutting planes in a cutting section.

◆ ToleranceUnits

enum HPS::CuttingSection::ToleranceUnits : uint32_t
strong

Enumerates the how tolerance should be interpreted.

Enumerator
Percent 

Tolerance specified is interpreted as a percentage of current view (camera field).

WorldSpace 

Tolerance specified is interpreted in world space.

Constructor & Destructor Documentation

◆ CuttingSection()

HPS::CuttingSection::CuttingSection ( )
inlineprivate

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