Searching...
No Matches

Represents a point in x,y coordinates. More...

`#include <cadstar_archive_parser.h>`

## Public Types

typedef VECTOR2_TRAITS< int32_t >::extended_type extended_type

typedef int32_t coord_type

## Public Member Functions

POINT ()

POINT (int aX, int aY)

void Parse (XNODE *aNode, PARSER_CONTEXT *aContext) override

VECTOR2< U > operator() () const
Cast a vector to another specialized subclass. Beware of rounding issues.

int32_t EuclideanNorm () const
Compute the Euclidean norm of the vector, which is defined as sqrt(x ** 2 + y ** 2).

extended_type SquaredEuclideanNorm () const
Compute the squared euclidean norm of the vector, which is defined as (x ** 2 + y ** 2).

VECTOR2< int32_t > Perpendicular () const
Compute the perpendicular vector.

VECTOR2< int32_t > Resize (int32_t aNewLength) const
Return a vector of the same direction, but length specified in aNewLength.

const std::string Format () const
Return the vector formatted as a string.

extended_type Cross (const VECTOR2< int32_t > &aVector) const
Compute cross product of self with aVector.

extended_type Dot (const VECTOR2< int32_t > &aVector) const
Compute dot product of self with aVector.

double Distance (const VECTOR2< extended_type > &aVector) const
Compute the distance between two vectors.

VECTOR2< int32_t > & operator+= (const VECTOR2< int32_t > &aVector)
Compound assignment operator.

VECTOR2< int32_t > & operator+= (const int32_t &aScalar)
Compound assignment operator.

VECTOR2< int32_t > & operator*= (const VECTOR2< int32_t > &aVector)
Compound assignment operator.

VECTOR2< int32_t > & operator*= (const int32_t &aScalar)

VECTOR2< int32_t > & operator-= (const VECTOR2< int32_t > &aVector)
Compound assignment operator.

VECTOR2< int32_t > & operator-= (const int32_t &aScalar)
Compound assignment operator.

VECTOR2< int32_t > operator- ()
Negate Vector operator.

VECTOR2< int32_t > operator/ (double aFactor) const
Division with a factor.

bool operator== (const VECTOR2< int32_t > &aVector) const
Equality operator.

bool operator!= (const VECTOR2< int32_t > &aVector) const
Not equality operator.

bool operator< (const VECTOR2< int32_t > &aVector) const
Smaller than operator.

bool operator<= (const VECTOR2< int32_t > &aVector) const

bool operator> (const VECTOR2< int32_t > &aVector) const
Greater than operator.

bool operator>= (const VECTOR2< int32_t > &aVector) const

int32_t x

int32_t y

## Static Public Attributes

static constexpr extended_type ECOORD_MAX

static constexpr extended_type ECOORD_MIN

## Detailed Description

Represents a point in x,y coordinates.

Definition at line 405 of file cadstar_archive_parser.h.

## ◆ coord_type

 typedef int32_t VECTOR2< int32_t >::coord_type
inherited

Definition at line 74 of file vector2d.h.

## ◆ extended_type

 typedef VECTOR2_TRAITS::extended_type VECTOR2< int32_t >::extended_type
inherited

Definition at line 73 of file vector2d.h.

## ◆ POINT() [1/2]

inline

Definition at line 407 of file cadstar_archive_parser.h.

## ◆ POINT() [2/2]

 CADSTAR_ARCHIVE_PARSER::POINT::POINT ( int aX, int aY )
inline

Definition at line 408 of file cadstar_archive_parser.h.

## ◆ Cross()

 VECTOR2< int32_t >::extended_type VECTOR2< int32_t >::Cross ( const VECTOR2< int32_t > & aVector ) const
inherited

Compute cross product of self with aVector.

Definition at line 204 of file vector2d.h.

## ◆ Distance()

 double VECTOR2< int32_t >::Distance ( const VECTOR2< extended_type > & aVector ) const
inherited

Compute the distance between two vectors.

This is a double precision value because the distance is frequently non-integer.

Definition at line 215 of file vector2d.h.

## ◆ Dot()

 VECTOR2< int32_t >::extended_type VECTOR2< int32_t >::Dot ( const VECTOR2< int32_t > & aVector ) const
inherited

Compute dot product of self with aVector.

Definition at line 209 of file vector2d.h.

## ◆ EuclideanNorm()

 int32_t VECTOR2< int32_t >::EuclideanNorm
inherited

Compute the Euclidean norm of the vector, which is defined as sqrt(x ** 2 + y ** 2).

It is used to calculate the length of the vector.

Returns
Scalar, the euclidean norm

Definition at line 167 of file vector2d.h.

## ◆ Format()

 const std::string VECTOR2< int32_t >::Format
inherited

Return the vector formatted as a string.

Returns
the formatted string

Definition at line 199 of file vector2d.h.

## ◆ operator!=()

 bool VECTOR2< int32_t >::operator!= ( const VECTOR2< int32_t > & aVector ) const
inherited

Not equality operator.

Definition at line 250 of file vector2d.h.

## ◆ operator()()

 VECTOR2< U > VECTOR2< int32_t >::operator() ( ) const
inlineinherited

Cast a vector to another specialized subclass. Beware of rounding issues.

Definition at line 128 of file vector2d.h.

## ◆ operator*=() [1/2]

 VECTOR2< int32_t > & VECTOR2< int32_t >::operator*= ( const int32_t & aScalar )
inherited

Definition at line 229 of file vector2d.h.

## ◆ operator*=() [2/2]

 VECTOR2< int32_t > & VECTOR2< int32_t >::operator*= ( const VECTOR2< int32_t > & aVector )
inherited

Compound assignment operator.

Definition at line 227 of file vector2d.h.

## ◆ operator+=() [1/2]

 VECTOR2< int32_t > & VECTOR2< int32_t >::operator+= ( const int32_t & aScalar )
inherited

Compound assignment operator.

Definition at line 232 of file vector2d.h.

## ◆ operator+=() [2/2]

 VECTOR2< int32_t > & VECTOR2< int32_t >::operator+= ( const VECTOR2< int32_t > & aVector )
inherited

Compound assignment operator.

Definition at line 224 of file vector2d.h.

## ◆ operator-()

 VECTOR2< int32_t > VECTOR2< int32_t >::operator-
inherited

Negate Vector operator.

Definition at line 241 of file vector2d.h.

## ◆ operator-=() [1/2]

 VECTOR2< int32_t > & VECTOR2< int32_t >::operator-= ( const int32_t & aScalar )
inherited

Compound assignment operator.

Definition at line 238 of file vector2d.h.

## ◆ operator-=() [2/2]

 VECTOR2< int32_t > & VECTOR2< int32_t >::operator-= ( const VECTOR2< int32_t > & aVector )
inherited

Compound assignment operator.

Definition at line 235 of file vector2d.h.

## ◆ operator/()

 VECTOR2< int32_t > VECTOR2< int32_t >::operator/ ( double aFactor ) const
inherited

Division with a factor.

Definition at line 244 of file vector2d.h.

## ◆ operator<()

 bool VECTOR2< int32_t >::operator< ( const VECTOR2< int32_t > & aVector ) const
inherited

Smaller than operator.

Definition at line 253 of file vector2d.h.

## ◆ operator<=()

 bool VECTOR2< int32_t >::operator<= ( const VECTOR2< int32_t > & aVector ) const
inherited

Definition at line 254 of file vector2d.h.

## ◆ operator==()

 bool VECTOR2< int32_t >::operator== ( const VECTOR2< int32_t > & aVector ) const
inherited

Equality operator.

Definition at line 247 of file vector2d.h.

## ◆ operator>()

 bool VECTOR2< int32_t >::operator> ( const VECTOR2< int32_t > & aVector ) const
inherited

Greater than operator.

Definition at line 257 of file vector2d.h.

## ◆ operator>=()

 bool VECTOR2< int32_t >::operator>= ( const VECTOR2< int32_t > & aVector ) const
inherited

Definition at line 258 of file vector2d.h.

## ◆ Parse()

 void CADSTAR_ARCHIVE_PARSER::POINT::Parse ( XNODE * aNode, PARSER_CONTEXT * aContext )
overridevirtual

## ◆ Perpendicular()

 VECTOR2< int32_t > VECTOR2< int32_t >::Perpendicular
inherited

Compute the perpendicular vector.

Returns
Perpendicular vector

Definition at line 184 of file vector2d.h.

## ◆ Resize()

 VECTOR2< int32_t > VECTOR2< int32_t >::Resize ( int32_t aNewLength ) const
inherited

Return a vector of the same direction, but length specified in aNewLength.

Parameters
 aNewLength is the length of the rescaled vector.
Returns
the rescaled vector.

Definition at line 192 of file vector2d.h.

## ◆ SquaredEuclideanNorm()

 VECTOR2< int32_t >::extended_type VECTOR2< int32_t >::SquaredEuclideanNorm
inherited

Compute the squared euclidean norm of the vector, which is defined as (x ** 2 + y ** 2).

It is used to calculate the length of the vector.

Returns
Scalar, the euclidean norm

Definition at line 176 of file vector2d.h.

## ◆ ECOORD_MAX

 constexpr extended_type VECTOR2< int32_t >::ECOORD_MAX
staticconstexprinherited

Definition at line 76 of file vector2d.h.

## ◆ ECOORD_MIN

 constexpr extended_type VECTOR2< int32_t >::ECOORD_MIN
staticconstexprinherited

Definition at line 77 of file vector2d.h.

## ◆ x

 int32_t VECTOR2< int32_t >::x
inherited

Definition at line 79 of file vector2d.h.

## ◆ y

 int32_t VECTOR2< int32_t >::y
inherited

Definition at line 79 of file vector2d.h.

The documentation for this struct was generated from the following files: