The Canvas class is one of the four core display classes used in a Visualize application. More...
#include <sprk.h>
Public Member Functions | |
Canvas () | |
Canvas (Canvas const &that) | |
~Canvas () | |
HPS::Type | ObjectType () const |
void | Delete () |
Deletes this Canvas, and the Window that backs it. More... | |
Canvas & | operator= (Canvas const &in_that) |
void | Assign (Canvas const &in_that) |
bool | Equals (Canvas const &in_that) const |
bool | operator!= (Canvas const &in_that) const |
bool | operator== (Canvas const &in_that) const |
UTF8 | GetName () const |
Get the name used when creating this Canvas. More... | |
void | AttachLayout (Layout const &in_layout) |
Attaches a layout to this HPS::Canvas. More... | |
void | AttachViewAsLayout (View const &in_view) |
Attaches a View to this HPS::Canvas using an implicit Layout that convers the whole window. More... | |
void | DetachLayout () |
Detaches the Layout from this Canvas. More... | |
Layout | GetAttachedLayout () const |
Returns the Layout that is currently attached to this Canvas. More... | |
IncludeKey | GetAttachedLayoutIncludeLink () const |
Returns the IncludeKey that attaches the current layout to this Canvas. More... | |
View | GetFrontView () const |
Views can overlap. More... | |
WindowKey const | GetWindowKey () const |
WindowKey | GetWindowKey () |
Each of the four display hierarchy objects (HPS::Canvas, HPS::Layout, HPS::View, HPS::Model) are backed by a HPS::SegmentKey. More... | |
PortfolioKey const | GetPortfolioKey () const |
PortfolioKey | GetPortfolioKey () |
Returns the HPS::PortfolioKey associated with this Canvas' SegmentKey. More... | |
void | Update () const |
Redraws the entire Canvas, including all of its child components using the default options. More... | |
UpdateNotifier | UpdateWithNotifier () const |
Redraws the entire Canvas, including all of its child components using the default options, and also returns a notifier to facilitate tracking the update progress. More... | |
void | Update (HPS::Window::UpdateType in_type, HPS::Time in_time_limit=-1.0) const |
Redraws the entire Canvas, including all of its child components using the specified parameters. More... | |
UpdateNotifier | UpdateWithNotifier (HPS::Window::UpdateType in_type, HPS::Time in_time_limit=-1.0) const |
Redraws the entire Canvas, including all of its child components using the specified parameters, and also returns an. More... | |
void | SetFrameRate (float in_frame_rate=20) |
Sets the minimum frame rate for this HPS::Canvas in number of frames per second. More... | |
float | GetFrameRate () const |
Returns true if frame rate is active for this HPS::Canvas. More... | |
virtual HPS::Type | Type () const |
This function returns the true type of the underlying object. More... | |
virtual bool | Empty () const |
Indicates whether this object has any values set on it. More... | |
virtual void | Reset () |
Resets this object to its initial, uninitialized state. More... | |
bool | HasType (HPS::Type in_mask) const |
This function indicates whether this Object has the given Type mask. More... | |
intptr_t | GetClassID () const |
Returns a unique identifier that is shared by all objects of the same class. More... | |
intptr_t | GetInstanceID () const |
Returns an identifier that can be used to identify which instance of a class an object is. More... | |
Static Public Member Functions | |
template<typename T > | |
static intptr_t | ClassID () |
Unique identifier for this class. More... | |
Static Public Attributes | |
static const HPS::Type | staticType = HPS::Type::Canvas |
The Canvas class is one of the four core display classes used in a Visualize application.
It is meant to be used as part of a display hierarchy along with the Layout, View, and Model objects. The Canvas is the top-level object of the hierarchy and roughly correlates to a window. The Canvas is backed by an HPS::WindowKey.
HPS::Canvas::Canvas | ( | ) |
HPS::Canvas::Canvas | ( | Canvas const & | that | ) |
HPS::Canvas::~Canvas | ( | ) |
void HPS::Canvas::Assign | ( | Canvas const & | in_that | ) |
void HPS::Canvas::AttachLayout | ( | Layout const & | in_layout | ) |
Attaches a layout to this HPS::Canvas.
There can only be one layout per HPS::Canvas. If a Layout is already attached to this Canvas, the new Layout will replace the old one.
in_layout | the Layout to attach to this HPS::Canvas. |
void HPS::Canvas::AttachViewAsLayout | ( | View const & | in_view | ) |
Attaches a View to this HPS::Canvas using an implicit Layout that convers the whole window.
If a Layout is already attached to this Canvas, the new Layout will replace the old one.
in_view | the View to attach to this HPS::Canvas. |
|
inlinestaticinherited |
Unique identifier for this class.
Note: this method uses construction of static objects. If used in a constructor, it should be used in the body not the initializer list.
void HPS::Canvas::Delete | ( | ) |
|
inlinevirtualinherited |
Indicates whether this object has any values set on it.
Reimplemented in HPS::STL::ImportResultsKit, HPS::STL::ImportOptionsKit, HPS::OBJ::ImportResultsKit, HPS::OBJ::ImportOptionsKit, HPS::Hardcopy::File::ExportOptionsKit, HPS::Stream::ExportOptionsKit, HPS::Stream::ImportResultsKit, HPS::Stream::ImportOptionsKit, HPS::PointCloud::ImportOptionsKit, HPS::PointCloud::ImportResultsKit, HPS::UpdateOptionsKit, HPS::HighlightSearchOptionsKit, HPS::HighlightOptionsKit, HPS::SelectionOptionsKit, HPS::SearchOptionsKit, HPS::CutGeometryGatheringOptionsKit, HPS::ShapeKit, HPS::ShaderKit, HPS::Shader::ImportOptionsKit, HPS::ImageKit, HPS::Image::ImportOptionsKit, HPS::Image::ExportOptionsKit, HPS::TextureOptionsKit, HPS::LinePatternKit, HPS::LinePatternParallelKit, HPS::LinePatternOptionsKit, HPS::GlyphKit, HPS::ApplicationWindowOptionsKit, HPS::OffScreenWindowOptionsKit, HPS::StandAloneWindowOptionsKit, HPS::GridKit, HPS::PolygonKit, HPS::MeshKit, HPS::ShellKit, HPS::ShellRelationResultsKit, HPS::ShellRelationOptionsKit, HPS::ShellOptimizationOptionsKit, HPS::TextKit, HPS::EllipticalArcKit, HPS::EllipseKit, HPS::TrimKit, HPS::NURBSSurfaceKit, HPS::NURBSCurveKit, HPS::SpotlightKit, HPS::InfiniteLineKit, HPS::CuttingSectionKit, HPS::CircularWedgeKit, HPS::CircularArcKit, HPS::CircleKit, HPS::SphereKit, HPS::CylinderKit, HPS::DistantLightKit, HPS::MarkerKit, HPS::LineKit, HPS::AttributeLockKit, HPS::FontInfoState, HPS::WindowInfoKit, HPS::DebuggingKit, HPS::SubwindowKit, HPS::ContourLineKit, HPS::VisualEffectsKit, HPS::TransformMaskKit, HPS::PostProcessEffectsKit, HPS::DrawingAttributeKit, HPS::HiddenLineAttributeKit, HPS::PerformanceKit, HPS::NURBSSurfaceAttributeKit, HPS::MaterialKit, HPS::MaterialMappingKit, HPS::MatrixKit, HPS::CurveAttributeKit, HPS::EdgeAttributeKit, HPS::LineAttributeKit, HPS::TextAttributeKit, HPS::CuttingSectionAttributeKit, HPS::CylinderAttributeKit, HPS::LightingAttributeKit, HPS::SphereAttributeKit, HPS::MarkerAttributeKit, HPS::CullingKit, HPS::ColorInterpolationKit, HPS::TransparencyKit, HPS::SelectabilityKit, HPS::CameraKit, HPS::VisibilityKit, HPS::BoundingKit, HPS::SegmentOptimizationOptionsKit, HPS::Publish::ExportOptionsKit, HPS::Publish::TextFieldKit, HPS::Publish::SignatureFieldKit, HPS::Publish::DropDownListKit, HPS::Exchange::TessellationOptionsKit, HPS::Publish::ListBoxKit, HPS::Exchange::ExportSTEPOptionsKit, HPS::Exchange::ExportParasolidOptionsKit, HPS::Publish::RadioButtonKit, HPS::Exchange::ExportIGESOptionsKit, HPS::Exchange::ExportXMLOptionsKit, HPS::Publish::CheckBoxKit, HPS::Exchange::ExportU3DOptionsKit, HPS::Exchange::ExportSTLOptionsKit, HPS::Publish::ButtonKit, HPS::Exchange::ExportPRCOptionsKit, HPS::Publish::LinkKit, HPS::Exchange::ExportJTOptionsKit, HPS::Publish::SlideTableKit, HPS::Exchange::ExportACISOptionsKit, HPS::Publish::TableKit, HPS::Exchange::Export3MFOptionsKit, HPS::Publish::ImageKit, HPS::Publish::TextKit, HPS::Exchange::ModelFileImportOptionsKit, HPS::Publish::ViewKit, HPS::Exchange::TranslationOptionsKit, HPS::Publish::ArtworkKit, HPS::Publish::AnnotationKit, HPS::ComponentPath, HPS::Exchange::ImportOptionsKit, HPS::Parasolid::ExportOptionsKit, HPS::Exchange::NURBSConversionOptionsKit, HPS::Parasolid::LineTessellationKit, HPS::Exchange::Configuration, HPS::Publish::PageKit, HPS::Parasolid::FacetTessellationKit, HPS::Publish::DocumentKit, HPS::Parasolid::ImportOptionsKit, HPS::DWG::ImportOptionsKit, HPS::OOC::ImportOptionsKit, HPS::Sketchup::ImportOptionsKit, and HPS::Sketchup::ImportResultsKit.
bool HPS::Canvas::Equals | ( | Canvas const & | in_that | ) | const |
Layout HPS::Canvas::GetAttachedLayout | ( | ) | const |
IncludeKey HPS::Canvas::GetAttachedLayoutIncludeLink | ( | ) | const |
Returns the IncludeKey that attaches the current layout to this Canvas.
|
inherited |
Returns a unique identifier that is shared by all objects of the same class.
float HPS::Canvas::GetFrameRate | ( | ) | const |
Returns true if frame rate is active for this HPS::Canvas.
View HPS::Canvas::GetFrontView | ( | ) | const |
Views can overlap.
This function returns a reference to the frontmost View.
|
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.
PortfolioKey const HPS::Canvas::GetPortfolioKey | ( | ) | const |
PortfolioKey HPS::Canvas::GetPortfolioKey | ( | ) |
Returns the HPS::PortfolioKey associated with this Canvas' SegmentKey.
WindowKey const HPS::Canvas::GetWindowKey | ( | ) | const |
WindowKey HPS::Canvas::GetWindowKey | ( | ) |
Each of the four display hierarchy objects (HPS::Canvas, HPS::Layout, HPS::View, HPS::Model) are backed by a HPS::SegmentKey.
This function returns the HPS::SegmentKey that is associated with this Canvas.
|
inherited |
|
inlinevirtual |
bool HPS::Canvas::operator!= | ( | Canvas const & | in_that | ) | const |
bool HPS::Canvas::operator== | ( | Canvas const & | in_that | ) | const |
|
virtualinherited |
Resets this object to its initial, uninitialized state.
Reimplemented in HPS::EventHandler, HPS::EventDispatcher, HPS::World, HPS::HighlightSearchResults, HPS::HighlightSearchResultsIterator, HPS::SelectionResults, HPS::SelectionResultsIterator, HPS::FontSearchResults, HPS::FontSearchResultsIterator, HPS::SearchResults, and HPS::SearchResultsIterator.
void HPS::Canvas::SetFrameRate | ( | float | in_frame_rate = 20 | ) |
Sets the minimum frame rate for this HPS::Canvas in number of frames per second.
in_frame_rate | Frame rate in number of frames per second. Pass 0 to disable frame rate. |
|
virtualinherited |
This function returns the true type of the underlying object.
This function is useful for finding the type of smart pointer objects that have been cast to more generic types.
Reimplemented in HPS::UpdateOptionsControl, HPS::HighlightControl, HPS::SelectionOptionsControl, HPS::OffScreenWindowOptionsControl, HPS::ApplicationWindowOptionsControl, HPS::StandAloneWindowOptionsControl, HPS::AttributeLockControl, HPS::WindowInfoControl, HPS::DebuggingControl, HPS::SubwindowControl, HPS::ContourLineControl, HPS::VisualEffectsControl, HPS::TransformMaskControl, HPS::PostProcessEffectsControl, HPS::DrawingAttributeControl, HPS::HiddenLineAttributeControl, HPS::PerformanceControl, HPS::NURBSSurfaceAttributeControl, HPS::ConditionControl, HPS::StyleControl, HPS::PortfolioControl, HPS::MaterialMappingControl, HPS::TextureMatrixControl, HPS::ModellingMatrixControl, HPS::CurveAttributeControl, HPS::EdgeAttributeControl, HPS::LineAttributeControl, HPS::TextAttributeControl, HPS::CuttingSectionAttributeControl, HPS::CylinderAttributeControl, HPS::LightingAttributeControl, HPS::SphereAttributeControl, HPS::MarkerAttributeControl, HPS::CullingControl, HPS::ColorInterpolationControl, HPS::TransparencyControl, HPS::SelectabilityControl, HPS::CameraControl, HPS::VisibilityControl, HPS::BoundingControl, HPS::Kit, and HPS::Control.
void HPS::Canvas::Update | ( | ) | const |
Redraws the entire Canvas, including all of its child components using the default options.
void HPS::Canvas::Update | ( | HPS::Window::UpdateType | in_type, |
HPS::Time | in_time_limit = -1.0 |
||
) | const |
Redraws the entire Canvas, including all of its child components using the specified parameters.
in_type | one of the enum values specified by HPS::Window::UpdateType |
in_time_limit | the maximum amount of time, in seconds, to spend updating this HPS::Canvas |
UpdateNotifier HPS::Canvas::UpdateWithNotifier | ( | ) | const |
Redraws the entire Canvas, including all of its child components using the default options, and also returns a notifier to facilitate tracking the update progress.
UpdateNotifier HPS::Canvas::UpdateWithNotifier | ( | HPS::Window::UpdateType | in_type, |
HPS::Time | in_time_limit = -1.0 |
||
) | const |
Redraws the entire Canvas, including all of its child components using the specified parameters, and also returns an.
in_type | one of the enum values specified by HPS::Window::UpdateType |
in_time_limit | the maximum amount of time, in seconds, to spend updating this HPS::Canvas |
|
static |