#include <geometry_primitives.h>
Public Member Functions | |
Segment2D | find_containing_edge (const Point2D &p) const |
Intersections | find_intersections (const Segment2D &s) const |
Intersections | find_intersections (const Ray &ray) const |
bool | has_on_edge_line (const Segment2D &s) const |
Rectangle & | operator= (const Rectangle &rhs)=default |
Rectangle & | operator= (Rectangle &&rhs)=default |
Rectangle () | |
Rectangle (double b, double t, double l, double r) | |
Rectangle (const Rectangle &)=default | |
Rectangle (Rectangle &&)=default | |
Public Member Functions inherited from LightWeightRectangle | |
double | area () const |
double | bot () const |
Point2D | center () const |
bool | contains (const Point2D &p) const |
bool | contains (double x, double y) const |
auto | corners () const |
double | hside_len () const |
auto | intersect (const LightWeightRectangle &that) const |
bool | is_line () const |
bool | is_point () const |
bool | is_square () const |
double | left () const |
LightWeightRectangle () | |
LightWeightRectangle (double b, double t, double l, double r) | |
LightWeightRectangle (const Point2D &p) | |
LVRect | move_center (const Point2D &new_center) const |
bool | operator== (const LightWeightRectangle &rhs) const |
auto | overlap (const LightWeightRectangle &that) const |
double | right () const |
auto | shrink (double factor) const |
double | side () const |
auto | split4_evenly () const |
auto | split_horz () const |
auto | split_vert () const |
double | top () const |
double | vside_len () const |
Private Member Functions | |
const Segment2D & | bot_edge () const |
const std::vector< Segment2D > & | edges () const |
const Segment2D & | left_edge () const |
const Segment2D & | right_edge () const |
const Segment2D & | top_edge () const |
Private Attributes | |
const std::vector< Segment2D > | _edges |
Static Private Attributes | |
static constexpr std::size_t | BOT_EDGE_IDX = 0 |
static constexpr std::size_t | LFT_EDGE_IDX = 2 |
static constexpr std::size_t | RHT_EDGE_IDX = 3 |
static constexpr std::size_t | TOP_EDGE_IDX = 1 |
Definition at line 322 of file geometry_primitives.h.
|
inline |
Definition at line 330 of file geometry_primitives.h.
|
inline |
Definition at line 331 of file geometry_primitives.h.
|
default |
|
default |
|
inlineprivate |
Definition at line 397 of file geometry_primitives.h.
|
inlineprivate |
Definition at line 402 of file geometry_primitives.h.
Definition at line 358 of file geometry_primitives.h.
|
inline |
Definition at line 368 of file geometry_primitives.h.
|
inline |
Definition at line 376 of file geometry_primitives.h.
|
inline |
Definition at line 348 of file geometry_primitives.h.
|
inlineprivate |
Definition at line 399 of file geometry_primitives.h.
|
inlineprivate |
Definition at line 400 of file geometry_primitives.h.
|
inlineprivate |
Definition at line 398 of file geometry_primitives.h.
|
private |
Definition at line 406 of file geometry_primitives.h.
|
staticprivate |
Definition at line 324 of file geometry_primitives.h.
|
staticprivate |
Definition at line 326 of file geometry_primitives.h.
|
staticprivate |
Definition at line 327 of file geometry_primitives.h.
|
staticprivate |
Definition at line 325 of file geometry_primitives.h.