ARB
Classes | Enumerations | Functions | Variables
AW Namespace Reference

Classes

class  Angle
 
struct  FillStyle
 
class  LineVector
 
class  Position
 
class  Rectangle
 
class  Vector
 

Enumerations

enum  AW_screen_area_conversion_mode { INCLUSIVE_OUTLINE, UPPER_LEFT_OUTLINE }
 
enum  RoughDirection {
  D_NORTH = 1, D_SOUTH = 2, D_WEST = 4, D_EAST = 8,
  D_NORTH_WEST = D_NORTH | D_WEST, D_NORTH_EAST = D_NORTH | D_EAST, D_SOUTH_EAST = D_SOUTH | D_EAST, D_SOUTH_WEST = D_SOUTH | D_WEST,
  D_VERTICAL = D_NORTH | D_SOUTH, D_HORIZONTAL = D_EAST | D_WEST
}
 

Functions

Position crosspoint (const LineVector &l1, const LineVector &l2, double &factor_l1, double &factor_l2)
 
Position nearest_linepoint (const Position &pos, const LineVector &line, double &factor)
 
bool nearlyEqual (const double &val1, const double &val2)
 
bool nearlyZero (const double &val)
 
double centroid (const double &val1, const double &val2)
 
bool is_between (const double &coord1, const double &between, const double &coord2)
 
bool nearlyEqual (const Position &p1, const Position &p2)
 
bool nearlyEqual (const Vector &v1, const Vector &v2)
 
Vector operator- (const Position &to, const Position &from)
 
Position operator+ (const Position &p, const Vector &v)
 
Position operator+ (const Vector &v, const Position &p)
 
Position operator- (const Position &p, const Vector &v)
 
Vector operator+ (const Vector &v1, const Vector &v2)
 
Vector operator- (const Vector &v1, const Vector &v2)
 
Vector operator* (const Vector &v, const double &f)
 
Vector operator* (const double &f, const Vector &v)
 
Vector operator/ (const Vector &v, const double &d)
 
Position centroid (const Position &p1, const Position &p2)
 
double Distance (const Position &from, const Position &to)
 
double scalarProduct (const Vector &v1, const Vector &v2)
 
bool are_distinct (const Position &p1, const Position &p2)
 
bool is_vertical (const Vector &v)
 
bool is_horizontal (const Vector &v)
 
Vector orthogonal_projection (const Vector &projectee, const Vector &target)
 
Vector normalized (const Vector &v)
 
bool are_parallel (const Vector &v1, const Vector &v2)
 
bool are_antiparallel (const Vector &v1, const Vector &v2)
 returns true, if two vectors have opposite orientations More...
 
Position nearest_linepoint (const Position &pos, const LineVector &line)
 
double Distance (const Position &pos, const LineVector &line)
 
bool is_vertical (const LineVector &line)
 
bool is_horizontal (const LineVector &line)
 
bool nearlyEqual (const LineVector &L1, const LineVector &L2)
 
Rectangle bounding_box (const Rectangle &r1, const Rectangle &r2)
 
Rectangle bounding_box (const Rectangle &rect, const LineVector &line)
 
Rectangle bounding_box (const LineVector &line, const Rectangle &rect)
 
Rectangle bounding_box (const LineVector &l1, const LineVector &l2)
 
Rectangle bounding_box (const Rectangle &rect, const Position &pos)
 
Rectangle bounding_box (const Position &pos, const Rectangle &rect)
 
Rectangle bounding_box (const LineVector &line, const Position &pos)
 
Rectangle bounding_box (const Position &pos, const LineVector &line)
 
Rectangle bounding_box (const Position &p1, const Position &p2)
 
CONSTEXPR_INLINE bool definesQuadrant (const RoughDirection rd)
 
Angle operator+ (const Angle &a1, const Angle &a2)
 
Angle operator- (const Angle &a1, const Angle &a2)
 
Angle operator* (const Angle &a, const double &fact)
 
Angle operator/ (const Angle &a, const double &divi)
 
double hypotenuse (double cath1, double cath2)
 
double cathetus (double hypotenuse, double cathetus)
 
bool isOrigin (const Position &p)
 
AW_pos x_alignment (AW_pos x_pos, AW_pos x_size, AW_pos alignment)
 

Variables

const double EPSILON = 0.001
 
const Position Origin
 
const Vector ZeroVector
 
const Angle Northwards
 
const Angle Westwards
 
const Angle Southwards
 
const Angle Eastwards
 

Enumeration Type Documentation

Enumerator
INCLUSIVE_OUTLINE 
UPPER_LEFT_OUTLINE 

Definition at line 273 of file aw_position.hxx.

Enumerator
D_NORTH 
D_SOUTH 
D_WEST 
D_EAST 
D_NORTH_WEST 
D_NORTH_EAST 
D_SOUTH_EAST 
D_SOUTH_WEST 
D_VERTICAL 
D_HORIZONTAL 

Definition at line 432 of file aw_position.hxx.

Function Documentation

Position AW::crosspoint ( const LineVector l1,
const LineVector l2,
double &  factor_l1,
double &  factor_l2 
)
Position AW::nearest_linepoint ( const Position pos,
const LineVector line,
double &  factor 
)
bool AW::nearlyEqual ( const double &  val1,
const double &  val2 
)
inline
bool AW::nearlyZero ( const double &  val)
inline

Definition at line 76 of file aw_position.hxx.

References nearlyEqual().

Referenced by BootstrapConfig::display_remark(), is_horizontal(), and is_vertical().

double AW::centroid ( const double &  val1,
const double &  val2 
)
inline

Definition at line 77 of file aw_position.hxx.

Referenced by centroid(), and SEC_root::paint().

bool AW::is_between ( const double &  coord1,
const double &  between,
const double &  coord2 
)
inline

Definition at line 99 of file aw_position.hxx.

Referenced by AW::Position::is_between(), and KreuzProdTest().

bool AW::nearlyEqual ( const Position &  p1,
const Position &  p2 
)
inline

Definition at line 137 of file aw_position.hxx.

References nearlyEqual(), AW::Position::xpos(), and AW::Position::ypos().

bool AW::nearlyEqual ( const Vector &  v1,
const Vector &  v2 
)
inline

Definition at line 215 of file aw_position.hxx.

References AW::Vector::endpoint(), and nearlyEqual().

Vector AW::operator- ( const Position &  to,
const Position &  from 
)
inline

Definition at line 227 of file aw_position.hxx.

Position AW::operator+ ( const Position &  p,
const Vector &  v 
)
inline

Definition at line 230 of file aw_position.hxx.

Position AW::operator+ ( const Vector &  v,
const Position &  p 
)
inline

Definition at line 231 of file aw_position.hxx.

Position AW::operator- ( const Position &  p,
const Vector &  v 
)
inline

Definition at line 232 of file aw_position.hxx.

Vector AW::operator+ ( const Vector &  v1,
const Vector &  v2 
)
inline

Definition at line 235 of file aw_position.hxx.

Vector AW::operator- ( const Vector &  v1,
const Vector &  v2 
)
inline

Definition at line 236 of file aw_position.hxx.

Vector AW::operator* ( const Vector &  v,
const double &  f 
)
inline

Definition at line 239 of file aw_position.hxx.

Vector AW::operator* ( const double &  f,
const Vector &  v 
)
inline

Definition at line 240 of file aw_position.hxx.

Vector AW::operator/ ( const Vector &  v,
const double &  d 
)
inline

Definition at line 241 of file aw_position.hxx.

Position AW::centroid ( const Position &  p1,
const Position &  p2 
)
inline

Definition at line 243 of file aw_position.hxx.

References centroid(), AW::Position::xpos(), and AW::Position::ypos().

double AW::Distance ( const Position &  from,
const Position &  to 
)
inline

Definition at line 245 of file aw_position.hxx.

References AW::Vector::length().

Referenced by Distance().

double AW::scalarProduct ( const Vector &  v1,
const Vector &  v2 
)
inline

Definition at line 246 of file aw_position.hxx.

References AW::Vector::x(), and AW::Vector::y().

Referenced by orthogonal_projection().

bool AW::are_distinct ( const Position &  p1,
const Position &  p2 
)
inline

Definition at line 248 of file aw_position.hxx.

References AW::Vector::has_length().

Referenced by NT_jump_cb(), and PaintedNode::was_displayed().

bool AW::is_vertical ( const Vector &  v)
inline

Definition at line 250 of file aw_position.hxx.

References nearlyZero(), AW::Vector::x(), and AW::Vector::y().

Referenced by is_vertical().

bool AW::is_horizontal ( const Vector &  v)
inline

Definition at line 251 of file aw_position.hxx.

References nearlyZero(), AW::Vector::x(), and AW::Vector::y().

Referenced by is_horizontal().

Vector AW::orthogonal_projection ( const Vector &  projectee,
const Vector &  target 
)
inline

returns the orthogonal projection of 'projectee' onto 'target'

Definition at line 253 of file aw_position.hxx.

References AW::Vector::length(), and scalarProduct().

Vector AW::normalized ( const Vector &  v)
inline

returns the normalized Vector of 'v', i.e. a Vector with same orientation, but length 1

Definition at line 258 of file aw_position.hxx.

References AW::Vector::normalize().

Referenced by are_parallel().

bool AW::are_parallel ( const Vector &  v1,
const Vector &  v2 
)
inline

returns true, if two vectors have the same orientation

Definition at line 262 of file aw_position.hxx.

References diff(), AW::Vector::has_length(), and normalized().

Referenced by are_antiparallel().

bool AW::are_antiparallel ( const Vector &  v1,
const Vector &  v2 
)
inline

returns true, if two vectors have opposite orientations

Definition at line 268 of file aw_position.hxx.

References are_parallel().

Position AW::nearest_linepoint ( const Position &  pos,
const LineVector &  line 
)
inline

Definition at line 323 of file aw_position.hxx.

References nearest_linepoint().

double AW::Distance ( const Position &  pos,
const LineVector &  line 
)
inline

Definition at line 324 of file aw_position.hxx.

References Distance(), and nearest_linepoint().

bool AW::is_vertical ( const LineVector &  line)
inline

Definition at line 326 of file aw_position.hxx.

References is_vertical(), and AW::LineVector::line_vector().

bool AW::is_horizontal ( const LineVector &  line)
inline

Definition at line 327 of file aw_position.hxx.

References is_horizontal(), and AW::LineVector::line_vector().

bool AW::nearlyEqual ( const LineVector &  L1,
const LineVector &  L2 
)
inline
Rectangle AW::bounding_box ( const Rectangle &  r1,
const Rectangle &  r2 
)
inline

Definition at line 416 of file aw_position.hxx.

References AW::Rectangle::bounding_box().

Rectangle AW::bounding_box ( const Rectangle &  rect,
const LineVector &  line 
)
inline

Definition at line 418 of file aw_position.hxx.

References AW::Rectangle::bounding_box().

Rectangle AW::bounding_box ( const LineVector &  line,
const Rectangle &  rect 
)
inline

Definition at line 419 of file aw_position.hxx.

References AW::Rectangle::bounding_box().

Rectangle AW::bounding_box ( const LineVector &  l1,
const LineVector &  l2 
)
inline

Definition at line 421 of file aw_position.hxx.

References AW::Rectangle::bounding_box().

Rectangle AW::bounding_box ( const Rectangle &  rect,
const Position &  pos 
)
inline

Definition at line 423 of file aw_position.hxx.

References AW::Rectangle::bounding_box().

Rectangle AW::bounding_box ( const Position &  pos,
const Rectangle &  rect 
)
inline

Definition at line 424 of file aw_position.hxx.

References AW::Rectangle::bounding_box().

Rectangle AW::bounding_box ( const LineVector &  line,
const Position &  pos 
)
inline

Definition at line 426 of file aw_position.hxx.

References AW::Rectangle::bounding_box().

Rectangle AW::bounding_box ( const Position &  pos,
const LineVector &  line 
)
inline

Definition at line 427 of file aw_position.hxx.

References AW::Rectangle::bounding_box().

Rectangle AW::bounding_box ( const Position &  p1,
const Position &  p2 
)
inline

Definition at line 429 of file aw_position.hxx.

CONSTEXPR_INLINE bool AW::definesQuadrant ( const RoughDirection  rd)

Definition at line 447 of file aw_position.hxx.

References D_HORIZONTAL, and D_VERTICAL.

Angle AW::operator+ ( const Angle &  a1,
const Angle &  a2 
)
inline

Definition at line 536 of file aw_position.hxx.

Angle AW::operator- ( const Angle &  a1,
const Angle &  a2 
)
inline

Definition at line 537 of file aw_position.hxx.

Angle AW::operator* ( const Angle &  a,
const double &  fact 
)
inline

Definition at line 539 of file aw_position.hxx.

Angle AW::operator/ ( const Angle &  a,
const double &  divi 
)
inline

Definition at line 540 of file aw_position.hxx.

double AW::hypotenuse ( double  cath1,
double  cath2 
)
inline

Definition at line 549 of file aw_position.hxx.

Referenced by SEC_root::paint().

double AW::cathetus ( double  hypotenuse,
double  cathetus 
)
inline

Definition at line 550 of file aw_position.hxx.

References aw_assert.

bool AW::isOrigin ( const Position &  p)
inline

Definition at line 570 of file aw_position.hxx.

References AW::Position::xpos(), and AW::Position::ypos().

AW_pos AW::x_alignment ( AW_pos  x_pos,
AW_pos  x_size,
AW_pos  alignment 
)
inline

Definition at line 608 of file aw_position.hxx.

Variable Documentation

const double AW::EPSILON = 0.001

Definition at line 73 of file aw_position.hxx.

Referenced by nearlyEqual().

const Position AW::Origin
const Vector AW::ZeroVector
const Angle AW::Northwards
const Angle AW::Westwards
const Angle AW::Southwards
const Angle AW::Eastwards

Referenced by AWT_graphic_tree::show().