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.

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.

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.