HPS::OOC::AreaHighlightTracker

class HPS::OOC::AreaHighlightTracker

Override this class to customize Area Highlighting.

Public Functions

void AddArea(HPS::Rectangle const &in_rect, HPS::MatrixKit const &in_world_to_window, bool in_clear)

Adds an Area to track.

Parameters
  • in_rect – The quadrilateral area to being tracking.

  • in_world_to_window – The MatrixKit associated with this Area.

  • in_clear – Indicates if all preexisting Areas should be removed before adding this new Area.

void AddPoint(HPS::WorldPoint const &in_point, bool in_clear)

Adds a world space point to track.

Parameters
  • in_point – The world space point being tracking.

  • in_clear – Indicates if all preexisting point should be removed before adding this new point.

AreaHighlightTracker(HPS::Canvas const &in_canvas, HPS::SegmentKey const &in_area_cameras)
void Clear()

Removes all Areas from this object.

bool Empty() const

Returns true if this object is not tracking any Areas.

HPS::SegmentKey const &GetAreaCameraSegment() const

Returns the Camera SegmentKey associated with this object.

HPS::OOC::AreaArray const &GetAreas() const

Returns an array of all of the tracked Areas.

HPS::Canvas const &GetCanvas() const

Returns the Canvas associated with this object.

bool GetInspecting() const
HPS::WindowKey const &GetWindowKey() const

Returns the WindowKey associated with this object.

bool Intersects(HPS::Point const &world_space_point) const

Determines if a point intersects any of the tracked Areas.

Parameters

world_space_point – The point to test

Returns

true if the point intersects one of the tracked Areas, false otherwise.

bool Intersects(HPS::SimpleCuboid const &world_space_bounding) const

Determines if a cuboid intersects any of the tracked Areas.

Parameters

world_space_bounding – The cuboid to test

Returns

true if the cuboid intersects one of the tracked Areas, false otherwise.

inline virtual void Process(HPS::KeyArray const &shell_keys)
virtual ~AreaHighlightTracker()