KiCad PCB EDA Suite
VECTOR2< T > Class Template Reference

Define a general 2D-vector/point. More...

#include <vector2d.h>

Public Types

typedef VECTOR2_TRAITS< T >::extended_type extended_type
 
typedef T coord_type
 

Public Member Functions

 VECTOR2 ()
 Construct a 2D-vector with x, y = 0. More...
 
 VECTOR2 (T x, T y)
 Construct a vector with given components x, y. More...
 
template<typename CastingType >
 VECTOR2 (const VECTOR2< CastingType > &aVec)
 Initializes a vector from another specialization. Beware of rounding issues. More...
 
 VECTOR2 (const VECTOR2< T > &aVec)
 Copy a vector. More...
 
template<typename CastedType >
VECTOR2< CastedType > operator() () const
 Cast a vector to another specialized subclass. Beware of rounding issues. More...
 
 operator wxPoint () const
 Implement the cast to wxPoint. More...
 
EuclideanNorm () const
 Compute the Euclidean norm of the vector, which is defined as sqrt(x ** 2 + y ** 2). More...
 
extended_type SquaredEuclideanNorm () const
 Compute the squared euclidean norm of the vector, which is defined as (x ** 2 + y ** 2). More...
 
VECTOR2< T > Perpendicular () const
 Compute the perpendicular vector. More...
 
VECTOR2< T > Resize (T aNewLength) const
 Return a vector of the same direction, but length specified in aNewLength. More...
 
double Angle () const
 Compute the angle of the vector. More...
 
VECTOR2< T > Rotate (double aAngle) const
 Rotate the vector by a given angle. More...
 
const std::string Format () const
 Return the vector formatted as a string. More...
 
extended_type Cross (const VECTOR2< T > &aVector) const
 Compute cross product of self with aVector. More...
 
extended_type Dot (const VECTOR2< T > &aVector) const
 Compute dot product of self with aVector. More...
 
VECTOR2< T > & operator= (const VECTOR2< T > &aVector)
 Assignment operator. More...
 
VECTOR2< T > operator+ (const VECTOR2< T > &aVector) const
 Vector addition operator. More...
 
VECTOR2< T > operator+ (const T &aScalar) const
 Scalar addition operator. More...
 
VECTOR2< T > & operator+= (const VECTOR2< T > &aVector)
 Compound assignment operator. More...
 
VECTOR2< T > & operator+= (const T &aScalar)
 Compound assignment operator. More...
 
VECTOR2< T > operator- (const VECTOR2< T > &aVector) const
 Vector subtraction operator. More...
 
VECTOR2< T > operator- (const T &aScalar) const
 Scalar subtraction operator. More...
 
VECTOR2< T > & operator-= (const VECTOR2< T > &aVector)
 Compound assignment operator. More...
 
VECTOR2< T > & operator-= (const T &aScalar)
 Compound assignment operator. More...
 
VECTOR2< T > operator- ()
 Negate Vector operator. More...
 
extended_type operator * (const VECTOR2< T > &aVector) const
 Scalar product operator. More...
 
VECTOR2< T > operator * (const T &aFactor) const
 Multiplication with a factor. More...
 
VECTOR2< T > operator/ (const T &aFactor) const
 Division with a factor. More...
 
bool operator== (const VECTOR2< T > &aVector) const
 Equality operator. More...
 
bool operator!= (const VECTOR2< T > &aVector) const
 Not equality operator. More...
 
bool operator< (const VECTOR2< T > &aVector) const
 Smaller than operator. More...
 
bool operator<= (const VECTOR2< T > &aVector) const
 
bool operator> (const VECTOR2< T > &aVector) const
 Greater than operator. More...
 
bool operator>= (const VECTOR2< T > &aVector) const
 

Public Attributes

x
 
y
 

Static Public Attributes

static constexpr extended_type ECOORD_MAX = std::numeric_limits<extended_type>::max()
 
static constexpr extended_type ECOORD_MIN = std::numeric_limits<extended_type>::min()
 

Detailed Description

template<class T = int>
class VECTOR2< T >

Define a general 2D-vector/point.

This class uses templates to be universal. Several operators are provided to help easy implementing of linear algebra equations.

Definition at line 61 of file vector2d.h.

Member Typedef Documentation

◆ coord_type

template<class T = int>
typedef T VECTOR2< T >::coord_type

Definition at line 77 of file vector2d.h.

◆ extended_type

template<class T = int>
typedef VECTOR2_TRAITS<T>::extended_type VECTOR2< T >::extended_type

Definition at line 76 of file vector2d.h.

Constructor & Destructor Documentation

◆ VECTOR2() [1/4]

template<class T >
VECTOR2< T >::VECTOR2 ( )

Construct a 2D-vector with x, y = 0.

Definition at line 261 of file vector2d.h.

262 {
263  x = y = 0.0;
264 }

◆ VECTOR2() [2/4]

template<class T>
VECTOR2< T >::VECTOR2 ( x,
y 
)

Construct a vector with given components x, y.

Definition at line 285 of file vector2d.h.

286 {
287  x = aX;
288  y = aY;
289 }

◆ VECTOR2() [3/4]

template<class T = int>
template<typename CastingType >
VECTOR2< T >::VECTOR2 ( const VECTOR2< CastingType > &  aVec)
inline

Initializes a vector from another specialization. Beware of rounding issues.

Definition at line 100 of file vector2d.h.

101  {
102  x = (T) aVec.x;
103  y = (T) aVec.y;
104  }

◆ VECTOR2() [4/4]

template<class T = int>
VECTOR2< T >::VECTOR2 ( const VECTOR2< T > &  aVec)
inline

Copy a vector.

Definition at line 107 of file vector2d.h.

108  {
109  x = aVec.x;
110  y = aVec.y;
111  }

Member Function Documentation

◆ Angle()

◆ Cross()

template<class T>
VECTOR2< T >::extended_type VECTOR2< T >::Cross ( const VECTOR2< T > &  aVector) const

Compute cross product of self with aVector.

Definition at line 513 of file vector2d.h.

514 {
515  return (extended_type) x * (extended_type) aVector.y -
516  (extended_type) y * (extended_type) aVector.x;
517 }
VECTOR2_TRAITS< T >::extended_type extended_type
Definition: vector2d.h:76

Referenced by RN_NET::TRIANGULATOR_STATE::areNodesColinear(), PNS::TOPOLOGY::AssembleDiffPair(), SEG::intersects(), and PCB_DIM_ALIGNED::UpdateHeight().

◆ Dot()

template<class T>
VECTOR2< T >::extended_type VECTOR2< T >::Dot ( const VECTOR2< T > &  aVector) const

Compute dot product of self with aVector.

Definition at line 521 of file vector2d.h.

522 {
523  return (extended_type) x * (extended_type) aVector.x +
524  (extended_type) y * (extended_type) aVector.y;
525 }
VECTOR2_TRAITS< T >::extended_type extended_type
Definition: vector2d.h:76

Referenced by SHAPE_ARC::Collide(), PNS::DP_PRIMITIVE_PAIR::CursorOrientation(), SEG::LineProject(), SEG::NearestPoint(), SEG::ReflectPoint(), and SEG::TCoef().

◆ EuclideanNorm()

◆ Format()

template<class T >
const std::string VECTOR2< T >::Format ( ) const

Return the vector formatted as a string.

Returns
the formatted string

Definition at line 434 of file vector2d.h.

435 {
436  std::stringstream ss;
437 
438  ss << "( xy " << x << " " << y << " )";
439 
440  return ss.str();
441 }

Referenced by PNS::JOINT::Dump().

◆ operator *() [1/2]

template<class T>
VECTOR2< T >::extended_type VECTOR2< T >::operator * ( const VECTOR2< T > &  aVector) const

Scalar product operator.

Definition at line 480 of file vector2d.h.

481 {
482  return (extended_type)aVector.x * x + (extended_type)aVector.y * y;
483 }
VECTOR2_TRAITS< T >::extended_type extended_type
Definition: vector2d.h:76

◆ operator *() [2/2]

template<class T>
VECTOR2< T > VECTOR2< T >::operator * ( const T &  aFactor) const

Multiplication with a factor.

Definition at line 487 of file vector2d.h.

488 {
489  VECTOR2<T> vector( x * aFactor, y * aFactor );
490  return vector;
491 }
Define a general 2D-vector/point.
Definition: vector2d.h:61

◆ operator wxPoint()

template<class T = int>
VECTOR2< T >::operator wxPoint ( ) const
inlineexplicit

Implement the cast to wxPoint.

Returns
the vector cast to wxPoint.

Definition at line 125 of file vector2d.h.

126  {
127  return wxPoint( x, y );
128  }

◆ operator!=()

template<class T>
bool VECTOR2< T >::operator!= ( const VECTOR2< T > &  aVector) const

Not equality operator.

Definition at line 564 of file vector2d.h.

565 {
566  return ( aVector.x != x ) || ( aVector.y != y );
567 }

◆ operator()()

template<class T = int>
template<typename CastedType >
VECTOR2<CastedType> VECTOR2< T >::operator() ( ) const
inline

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

Definition at line 115 of file vector2d.h.

116  {
117  return VECTOR2<CastedType>( (CastedType) x, (CastedType) y );
118  }
Define a general 2D-vector/point.
Definition: vector2d.h:61

◆ operator+() [1/2]

template<class T>
VECTOR2< T > VECTOR2< T >::operator+ ( const VECTOR2< T > &  aVector) const

Vector addition operator.

Definition at line 445 of file vector2d.h.

446 {
447  return VECTOR2<T> ( x + aVector.x, y + aVector.y );
448 }
Define a general 2D-vector/point.
Definition: vector2d.h:61

◆ operator+() [2/2]

template<class T>
VECTOR2< T > VECTOR2< T >::operator+ ( const T &  aScalar) const

Scalar addition operator.

Definition at line 452 of file vector2d.h.

453 {
454  return VECTOR2<T> ( x + aScalar, y + aScalar );
455 }
Define a general 2D-vector/point.
Definition: vector2d.h:61

◆ operator+=() [1/2]

template<class T>
VECTOR2< T > & VECTOR2< T >::operator+= ( const VECTOR2< T > &  aVector)

Compound assignment operator.

Definition at line 331 of file vector2d.h.

332 {
333  x += aVector.x;
334  y += aVector.y;
335  return *this;
336 }

◆ operator+=() [2/2]

template<class T>
VECTOR2< T > & VECTOR2< T >::operator+= ( const T &  aScalar)

Compound assignment operator.

Definition at line 340 of file vector2d.h.

341 {
342  x += aScalar;
343  y += aScalar;
344  return *this;
345 }

◆ operator-() [1/3]

template<class T>
VECTOR2< T > VECTOR2< T >::operator- ( const VECTOR2< T > &  aVector) const

Vector subtraction operator.

Definition at line 459 of file vector2d.h.

460 {
461  return VECTOR2<T> ( x - aVector.x, y - aVector.y );
462 }
Define a general 2D-vector/point.
Definition: vector2d.h:61

◆ operator-() [2/3]

template<class T>
VECTOR2< T > VECTOR2< T >::operator- ( const T &  aScalar) const

Scalar subtraction operator.

Definition at line 466 of file vector2d.h.

467 {
468  return VECTOR2<T> ( x - aScalar, y - aScalar );
469 }
Define a general 2D-vector/point.
Definition: vector2d.h:61

◆ operator-() [3/3]

template<class T>
VECTOR2< T > VECTOR2< T >::operator- ( )

Negate Vector operator.

Definition at line 473 of file vector2d.h.

474 {
475  return VECTOR2<T> ( -x, -y );
476 }
Define a general 2D-vector/point.
Definition: vector2d.h:61

◆ operator-=() [1/2]

template<class T>
VECTOR2< T > & VECTOR2< T >::operator-= ( const VECTOR2< T > &  aVector)

Compound assignment operator.

Definition at line 349 of file vector2d.h.

350 {
351  x -= aVector.x;
352  y -= aVector.y;
353  return *this;
354 }

◆ operator-=() [2/2]

template<class T>
VECTOR2< T > & VECTOR2< T >::operator-= ( const T &  aScalar)

Compound assignment operator.

Definition at line 358 of file vector2d.h.

359 {
360  x -= aScalar;
361  y -= aScalar;
362  return *this;
363 }

◆ operator/()

template<class T>
VECTOR2< T > VECTOR2< T >::operator/ ( const T &  aFactor) const

Division with a factor.

Definition at line 495 of file vector2d.h.

496 {
497  if( std::is_integral<T>::value )
498  return VECTOR2<T>( KiROUND( x / aFactor ), KiROUND( y / aFactor ) );
499  else
500  return VECTOR2<T>( x / aFactor, y / aFactor );
501 }
Define a general 2D-vector/point.
Definition: vector2d.h:61
constexpr ret_type KiROUND(fp_type v)
Round a floating point number to an integer using "round halfway cases away from zero".
Definition: util.h:73

◆ operator<()

template<class T>
bool VECTOR2< T >::operator< ( const VECTOR2< T > &  aVector) const

Smaller than operator.

Definition at line 529 of file vector2d.h.

530 {
531  return ( *this * *this ) < ( aVector * aVector );
532 }

◆ operator<=()

template<class T>
bool VECTOR2< T >::operator<= ( const VECTOR2< T > &  aVector) const

Definition at line 536 of file vector2d.h.

537 {
538  return ( *this * *this ) <= ( aVector * aVector );
539 }

◆ operator=()

template<class T>
VECTOR2< T > & VECTOR2< T >::operator= ( const VECTOR2< T > &  aVector)

Assignment operator.

Definition at line 322 of file vector2d.h.

323 {
324  x = aVector.x;
325  y = aVector.y;
326  return *this;
327 }

◆ operator==()

template<class T>
bool VECTOR2< T >::operator== ( const VECTOR2< T > &  aVector) const

Equality operator.

Definition at line 557 of file vector2d.h.

558 {
559  return ( aVector.x == x ) && ( aVector.y == y );
560 }

◆ operator>()

template<class T>
bool VECTOR2< T >::operator> ( const VECTOR2< T > &  aVector) const

Greater than operator.

Definition at line 543 of file vector2d.h.

544 {
545  return ( *this * *this ) > ( aVector * aVector );
546 }

◆ operator>=()

template<class T>
bool VECTOR2< T >::operator>= ( const VECTOR2< T > &  aVector) const

Definition at line 550 of file vector2d.h.

551 {
552  return ( *this * *this ) >= ( aVector * aVector );
553 }

◆ Perpendicular()

template<class T >
VECTOR2< T > VECTOR2< T >::Perpendicular ( ) const

Compute the perpendicular vector.

Returns
Perpendicular vector

Definition at line 314 of file vector2d.h.

315 {
316  VECTOR2<T> perpendicular( -y, x );
317  return perpendicular;
318 }
Define a general 2D-vector/point.
Definition: vector2d.h:61

Referenced by EC_LINE::Apply(), EC_PERPLINE::Apply(), PNS::ArcHull(), PNS::DP_GATEWAYS::BuildGeneric(), CornerListToPolygon(), distanceFromPointToLine(), PNS::MEANDER_SHAPE::makeMiterShape(), SEG::PerpendicularSeg(), and PNS::SegmentHull().

◆ Resize()

template<class T>
VECTOR2< T > VECTOR2< T >::Resize ( aNewLength) const

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

Parameters
aNewLengthis the length of the rescaled vector.
Returns
the rescaled vector.

Definition at line 404 of file vector2d.h.

405 {
406  if( x == 0 && y == 0 )
407  return VECTOR2<T> ( 0, 0 );
408 
409  extended_type l_sq_current = (extended_type) x * x + (extended_type) y * y;
410  extended_type l_sq_new = (extended_type) aNewLength * aNewLength;
411 
412  if( std::is_integral<T>::value )
413  {
414  return VECTOR2<T> (
415  ( x < 0 ? -1 : 1 ) *
416  KiROUND( std::sqrt( rescale( l_sq_new, (extended_type) x * x, l_sq_current ) ) ),
417  ( y < 0 ? -1 : 1 ) *
418  KiROUND( std::sqrt( rescale( l_sq_new, (extended_type) y * y, l_sq_current ) ) ) )
419  * sign( aNewLength );
420  }
421  else
422  {
423  return VECTOR2<T> (
424  ( x < 0 ? -1 : 1 ) *
425  std::sqrt( rescale( l_sq_new, (extended_type) x * x, l_sq_current ) ),
426  ( y < 0 ? -1 : 1 ) *
427  std::sqrt( rescale( l_sq_new, (extended_type) y * y, l_sq_current ) ) )
428  * sign( aNewLength );
429  }
430 }
VECTOR2_TRAITS< T >::extended_type extended_type
Definition: vector2d.h:76
int sign(T val)
Definition: util.h:104
Define a general 2D-vector/point.
Definition: vector2d.h:61
T rescale(T aNumerator, T aValue, T aDenominator)
Scale a number (value) by rational (numerator/denominator).
Definition: util.h:98
constexpr ret_type KiROUND(fp_type v)
Round a floating point number to an integer using "round halfway cases away from zero".
Definition: util.h:73

Referenced by SCH_EAGLE_PLUGIN::adjustNetLabels(), CADSTAR_PCB_ARCHIVE_LOADER::applyRouteOffset(), PNS::ArcHull(), DIRECTION_45::BuildInitialTrace(), Collide(), CornerListToPolygon(), PNS::DP_PRIMITIVE_PAIR::CursorOrientation(), distanceFromPointToLine(), drawBacksideTicks(), drawTicksAlongLine(), PCB_POINT_EDITOR::editArcMidKeepEndpoints(), PNS::MEANDER_SHAPE::forward(), PNS::MEANDER_SHAPE::genMeanderShape(), GetArcCenter(), PNS::makeGapVector(), PNS::MEANDER_SHAPE::makeMiterShape(), PNS::MEANDERED_LINE::MeanderSegment(), PNS::MEANDER_SHAPE::miter(), PNS::MoveDiagonal(), CIRCLE::NearestPoint(), ALTIUM_PCB::Parse(), SHAPE_LINE_CHAIN::PointAlong(), PNS::SHOVE::pushOrShoveVia(), PNS::VIA::PushoutForce(), PNS::SegmentHull(), PNS::tightenSegment(), TransformArcToPolygon(), PCB_DIM_ALIGNED::updateGeometry(), PCB_DIM_ORTHOGONAL::updateGeometry(), PCB_DIM_LEADER::updateGeometry(), PCB_POINT_EDITOR::updatePoints(), PCB_DIM_ALIGNED::updateText(), and KIGFX::PREVIEW::RULER_ITEM::ViewDraw().

◆ Rotate()

template<class T >
VECTOR2< T > VECTOR2< T >::Rotate ( double  aAngle) const

Rotate the vector by a given angle.

Rotate a VECTOR2 by aAngle.

Parameters
aAnglerotation angle in radians
Returns
rotated vector
Parameters
aAngle= rotation angle in radians

Definition at line 371 of file vector2d.h.

372 {
373  // Avoid common radian rotations that may allow for angular error
374  if( aAngle == 0.0 || aAngle == 2 * M_PI )
375  return VECTOR2<T> ( T( x ), T( y ) );
376 
377  if( aAngle == M_PI_2 )
378  return VECTOR2<T>( -T( y ), T( x ) );
379 
380  if( aAngle == M_PI )
381  return VECTOR2<T>( -T(x), -T( y ) );
382 
383  if( aAngle == 3 * M_PI_2 )
384  return VECTOR2<T>( T( y ), -T( x ) );
385 
386  double sa = sin( aAngle );
387  double ca = cos( aAngle );
388 
389  if( std::is_integral<T>::value )
390  {
391  return VECTOR2<T> ( KiROUND( (double) x * ca - (double) y * sa ),
392  KiROUND( (double) x * sa + (double) y * ca ) );
393 
394  }
395  else
396  {
397  return VECTOR2<T> ( T( (double) x * ca - (double) y * sa ),
398  T( (double) x * sa + (double) y * ca ) );
399  }
400 }
#define M_PI_2
Definition: transline.cpp:40
Define a general 2D-vector/point.
Definition: vector2d.h:61
constexpr ret_type KiROUND(fp_type v)
Round a floating point number to an integer using "round halfway cases away from zero".
Definition: util.h:73

Referenced by DXF_IMPORT_PLUGIN::addArc(), EC_CIRCLE::Apply(), DIRECTION_45::BuildInitialTrace(), PNS::OPTIMIZER::circleBreakouts(), PCB_GRID_HELPER::computeAnchors(), computeCenter(), KIGFX::DS_PAINTER::draw(), KIGFX::CAIRO_GAL_BASE::DrawArcSegment(), drawBacksideTicks(), drawTicksAlongLine(), GetArcCenter(), KIGFX::PREVIEW::ARC_GEOM_MANAGER::GetEndRadiusEnd(), getRectangleAlongCentreLine(), KIGFX::PREVIEW::ARC_GEOM_MANAGER::GetStartRadiusEnd(), ROUTER_TOOL::InlineDrag(), CIRCLE::Intersect(), PNS::MEANDER_SHAPE::miter(), SHAPE_ARC::Rotate(), SHAPE_LINE_CHAIN::Rotate(), BASIC_GAL::transform(), PNS::MEANDER_SHAPE::turn(), PCB_DIM_ALIGNED::updateGeometry(), PCB_DIM_ORTHOGONAL::updateGeometry(), PCB_DIM_LEADER::updateGeometry(), PCB_DIM_CENTER::updateGeometry(), and PCB_DIM_ALIGNED::updateText().

◆ SquaredEuclideanNorm()

template<class T >
VECTOR2< T >::extended_type VECTOR2< T >::SquaredEuclideanNorm ( ) const

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 300 of file vector2d.h.

301 {
302  return (extended_type) x * x + (extended_type) y * y;
303 }
VECTOR2_TRAITS< T >::extended_type extended_type
Definition: vector2d.h:76

Referenced by DIRECTION_45::BuildInitialTrace(), Collide(), SHAPE_ARC::Collide(), collideShapes(), and PAD::HitTest().

Member Data Documentation

◆ ECOORD_MAX

◆ ECOORD_MIN

template<class T = int>
constexpr extended_type VECTOR2< T >::ECOORD_MIN = std::numeric_limits<extended_type>::min()
static

Definition at line 80 of file vector2d.h.

◆ x

template<class T = int>
T VECTOR2< T >::x

Definition at line 82 of file vector2d.h.

Referenced by DXF_IMPORT_PLUGIN::addArc(), PNS_PCBNEW_DEBUG_DECORATOR::AddBox(), GRAPHICS_IMPORTER_PCBNEW::AddCircle(), ZONE_FILLER::addHatchFillTypeOnZone(), PNS_KICAD_IFACE::AddItem(), DXF_IMPORT_PLUGIN::addMText(), PNS_TEST_DEBUG_DECORATOR::AddPoint(), BOARD_ADAPTER::addShapeWithClearance(), BOARD_ADAPTER::addSolidAreasShapes(), DXF_IMPORT_PLUGIN::addText(), TRIANGLE_DISPLAY_LIST::AddToMiddleContourns(), RENDER_3D_LEGACY::addTopAndBottomTriangles(), DXF_IMPORT_PLUGIN::addVertex(), GRID_HELPER::Align(), GRID_HELPER::AlignGrid(), PCB_GRID_HELPER::AlignToArc(), KIGFX::CAIRO_GAL::allocateBitmaps(), SHAPE_POLY_SET::Append(), EC_VERTICAL::Apply(), CADSTAR_PCB_ARCHIVE_LOADER::applyRouteOffset(), SEG::ApproxCollinear(), SEG::ApproxParallel(), DXF_PLOTTER::Arc(), HPGL_PLOTTER::Arc(), PS_PLOTTER::Arc(), PDF_PLOTTER::Arc(), SVG_PLOTTER::Arc(), SHAPE_RECT::BBox(), KIGFX::OPENGL_GAL::beginDrawing(), EE_GRID_HELPER::BestSnapAnchor(), PCB_GRID_HELPER::BestSnapAnchor(), SVG_PLOTTER::BezierCurve(), KIGFX::OPENGL_GAL::BitmapText(), KIGFX::CAIRO_GAL_BASE::blitCursor(), KIGFX::OPENGL_GAL::blitCursor(), BOOST_AUTO_TEST_CASE(), LABEL_MANAGER::boxMtv(), BuildConvexHull(), PAD::BuildEffectiveShapes(), PNS::DP_GATEWAYS::BuildForCursor(), KI_TEST::BuildHSeg(), DIRECTION_45::BuildInitialTrace(), BOARD_ADAPTER::buildPadOutlineAsSegments(), KI_TEST::BuildRectChain(), KI_TEST::BuildVSeg(), LIB_ARC::CalcMidPoint(), calculateBezierSegmentationThreshold(), SHAPE_ARC::ccw(), SEG::ccw(), SHAPE_SIMPLE::CDPoint(), KIGFX::WX_VIEW_CONTROLS::CenterOnCursor(), SHAPE_POLY_SET::chamferFilletPolygon(), POLY_GRID_PARTITION::checkClearance(), PNS::DP_GATEWAYS::checkDiagonalAlignment(), DXF_PLOTTER::Circle(), PS_PLOTTER::Circle(), PDF_PLOTTER::Circle(), SVG_PLOTTER::Circle(), KIGFX::CAIRO_GAL_BASE::ClearScreen(), Collide(), SHAPE_RECT::Collide(), SHAPE_ARC::Collide(), SEG::Collinear(), PNS_KICAD_IFACE::Commit(), commonParallelProjection(), PNS::commonParallelProjection(), CompareVector2I(), EE_GRID_HELPER::computeAnchors(), PCB_GRID_HELPER::computeAnchors(), KIGFX::OPENGL_GAL::computeBitmapTextSize(), computeCenter(), AR_AUTOPLACER::computePlacementRatsnestCost(), KIGFX::STROKE_FONT::ComputeStringBoundaryLimits(), PSLIKE_PLOTTER::computeTextParameters(), KIGFX::CAIRO_PRINT_GAL::ComputeWorldScreenMatrix(), KIGFX::OPENGL_GAL::ComputeWorldScreenMatrix(), KIGFX::GAL::ComputeWorldScreenMatrix(), DIRECTION_45::construct_(), POLY_GRID_PARTITION::containsPoint(), ConvertArcToPolyline(), ConvertOutlineToPolygon(), ConvertPolygonToBlocks(), ConvertPolygonToTriangles(), SHAPE_LINE_CHAIN::convertToClipper(), SHAPE_ARC::ConvertToPolyline(), PROPERTIES_FRAME::CopyPrmsFromGeneralToPanel(), PROPERTIES_FRAME::CopyPrmsFromItemToPanel(), PROPERTIES_FRAME::CopyPrmsFromPanelToGeneral(), PROPERTIES_FRAME::CopyPrmsFromPanelToItem(), CornerListToPolygon(), KIGFX::OPENGL_COMPOSITOR::CreateBuffer(), MICROWAVE_TOOL::createInductorBetween(), PolygonTriangulation::createList(), CreatePadsShapesSection(), BOARD_ADAPTER::createPadWithClearance(), BOARD_ADAPTER::createPadWithDrill(), VECTOR2< unsigned int >::Cross(), COMMON_TOOLS::CursorControl(), DIALOG_BOARD_REANNOTATE::DIALOG_BOARD_REANNOTATE(), DIALOG_IMPORT_GFX::DIALOG_IMPORT_GFX(), EDIT_TOOL::doMoveSelection(), VECTOR2< unsigned int >::Dot(), COMMON_TOOLS::doZoomFit(), dpoint_dist(), KIGFX::DS_PAINTER::draw(), KIGFX::SCH_PAINTER::draw(), KIGFX::PCB_PAINTER::draw(), KIGFX::OPENGL_GAL::DrawArc(), KIGFX::CAIRO_GAL_BASE::DrawArcSegment(), KIGFX::OPENGL_GAL::DrawArcSegment(), KIGFX::CAIRO_GAL_BASE::drawAxes(), KIGFX::CAIRO_GAL_BASE::DrawCircle(), KIGFX::OPENGL_GAL::DrawCircle(), drawCursorStrings(), KIGFX::CAIRO_GAL_BASE::DrawCurve(), KIGFX::OPENGL_GAL::drawFilledSemiCircle(), D_CODE::DrawFlashedPolygon(), KIGFX::OPENGL_GAL::DrawGrid(), KIGFX::CAIRO_GAL_BASE::DrawGrid(), KIGFX::CAIRO_GAL_BASE::drawGridCross(), KIGFX::CAIRO_GAL_BASE::drawGridLine(), KIGFX::CAIRO_GAL_BASE::drawGridPoint(), KIGFX::CAIRO_GAL_BASE::DrawLine(), BASIC_GAL::DrawLine(), KIGFX::OPENGL_GAL::drawLineQuad(), KIGFX::CAIRO_GAL_BASE::drawPoly(), KIGFX::OPENGL_GAL::DrawPolygon(), KI_TEST::DrawRect(), KIGFX::CAIRO_GAL_BASE::DrawRectangle(), KIGFX::OPENGL_GAL::DrawRectangle(), KIGFX::CAIRO_GAL_BASE::DrawSegment(), SYMBOL_EDITOR_DRAWING_TOOLS::DrawShape(), KIGFX::STROKE_FONT::drawSingleLineText(), KIGFX::OPENGL_GAL::drawStrokedSemiCircle(), KIGFX::PREVIEW::DrawTextNextToCursor(), KIGFX::OPENGL_GAL::drawTriangulatedPolyset(), PNS::DP_PRIMITIVE_PAIR::dump(), SHAPE_LINE_CHAIN_BASE::EdgeContainingPoint(), PCB_POINT_EDITOR::editArcEndpointKeepCenter(), PCB_POINT_EDITOR::editArcEndpointKeepTangent(), PCB_POINT_EDITOR::editArcMidKeepCenter(), GERBER_PLOTTER::emitDcode(), KIGFX::CAIRO_GAL::endDrawing(), HPGL_PLOTTER::EndPlot(), PAD_TOOL::EnumeratePads(), PCB_EDIT_FRAME::ExecuteRemoteCommand(), EXPORTER_PCB_VRML::ExportVrmlBoard(), EXPORTER_PCB_VRML::ExportVrmlPolygonSet(), DSN::SPECCTRA_DB::fillBOUNDARY(), EDIT_TOOL::FilletTracks(), AR_AUTOPLACER::fillMatrix(), findEndSegments(), SCH_EDITOR_CONTROL::FindSymbolAndItem(), SYMBOL_PREVIEW_WIDGET::fitOnDrawArea(), GERBER_PLOTTER::FlashPadChamferRoundRect(), HPGL_PLOTTER::FlashPadCircle(), PSLIKE_PLOTTER::FlashPadCustom(), GERBER_PLOTTER::FlashPadCustom(), HPGL_PLOTTER::FlashPadCustom(), DXF_PLOTTER::FlashPadCustom(), PSLIKE_PLOTTER::FlashPadRoundRect(), GERBER_PLOTTER::FlashPadRoundRect(), HPGL_PLOTTER::FlashPadRoundRect(), DXF_PLOTTER::FlashPadRoundRect(), BOARD_ITEM::Flip(), DS_DATA_MODEL_IO::Format(), DS_DATA_MODEL_IO::format(), SHAPE_SEGMENT::Format(), SHAPE_RECT::Format(), DS_DATA_MODEL_IO::formatCoordinate(), FormatInternalUnits(), DS_DATA_MODEL_IO::formatRepeatParameters(), SHAPE_POLY_SET::fractureSingle(), GENERAL_COLLECTORS_GUIDE::GENERAL_COLLECTORS_GUIDE(), GERBER_DRAW_ITEM::GetABPosition(), CN_ITEM::GetAnchor(), GetArcAngle(), GetArcCenter(), GetArcMid(), PAD::GetBestAnchorPosition(), PCB_DIMENSION_BASE::GetBoundingBox(), PCB_DIM_CENTER::GetBoundingBox(), SHAPE_ARC::GetCentralAngle(), DS_DATA_ITEM_POLYGONS::GetCornerPosition(), DS_DATA_ITEM_POLYGONS::GetCornerPositionUi(), SHAPE_ARC::GetEndAngle(), DS_DATA_ITEM::GetEndPos(), KIGFX::ORIGIN_VIEWITEM::GetEndPosition(), DS_DATA_ITEM::GetEndPosUi(), PCB_SHAPE::GetFocusPosition(), GRID_HELPER::GetGrid(), KIGFX::GAL::GetGridPoint(), ARRAY_GRID_OPTIONS::GetItemNumber(), KIGFX::GAL::GetMinDepth(), PL_EDITOR_LAYOUT::GetMsgPanelInfo(), DS_DRAW_ITEM_BASE::GetMsgPanelInfo(), EDA_DRAW_FRAME::GetNearestGridPosition(), EDA_DRAW_FRAME::GetNearestHalfGridPosition(), KIGFX::ORIGIN_VIEWITEM::GetPosition(), getRectangleAlongCentreLine(), KIGFX::OPENGL_GAL::getScreenPixelSize(), KIGFX::SCH_PAINTER::getShadowWidth(), SHAPE_ARC::GetStartAngle(), DS_DATA_ITEM::GetStartPos(), DS_DATA_ITEM::GetStartPosUi(), ARRAY_GRID_OPTIONS::GetTransform(), MATRIX3x3< double >::GetTranslation(), GetVectorSnapped45(), KIGFX::GAL::GetVisibleWorldExtents(), KIGFX::OPENGL_GAL::getWorldPixelSize(), EDIT_POINT::GetX(), GraphicTextWidth(), POLY_GRID_PARTITION::grid2poly(), POLY_GRID_PARTITION::grid2polyX(), PCB_SELECTION_TOOL::GuessSelectionCandidates(), KIGFX::WX_VIEW_CONTROLS::handleAutoPanning(), ZONE::HatchBorder(), DS_DRAW_ITEM_POLYPOLYGONS::HitTest(), KIGFX::OPENGL_COMPOSITOR::Initialize(), DXF_IMPORT_PLUGIN::insertArc(), DXF_IMPORT_PLUGIN::insertLine(), PolygonTriangulation::insertVertex(), DRAWING_TOOL::InteractivePlaceWithPreview(), CIRCLE::Intersect(), SEG::intersects(), PNS::LINE::Is45Degree(), GEOM_TEST::IsInQuadrant(), DS_DATA_ITEM::IsInsidePage(), DS_DATA_ITEM_POLYGONS::IsInsidePage(), KIGFX::CAIRO_PRINT_GAL::isLandscape(), EDA_TEXT::LenSize(), LexicographicalCompare(), LexicographicalMax(), LexicographicalMin(), SEG::LineDistance(), SEG::LineProject(), PNS_LOG_FILE::Load(), CADSTAR_PCB_ARCHIVE_LOADER::loadDimensions(), KIGFX::STROKE_FONT::LoadNewStrokeFont(), EAGLE_PLUGIN::loadPolygon(), EDIT_POINTS_FACTORY::Make(), DSN::SPECCTRA_DB::makeIMAGE(), GEOM_TEST::MakeSquarePolyLine(), GRAPHICS_IMPORTER_PCBNEW::MapCoordinate(), mapCoords(), MARKER_BASE::MARKER_BASE(), SHAPE_ARC::Mirror(), ZONE::Mirror(), SHAPE_LINE_CHAIN::Mirror(), STATUS_POPUP::Move(), BOARD_ITEM::Move(), DS_DATA_ITEM::MoveEndPointTo(), DS_DATA_ITEM::MoveEndPointToUi(), EDIT_TOOL::MoveExact(), DS_DATA_ITEM::MoveStartPointTo(), DS_DATA_ITEM::MoveToUi(), CIRCLE::NearestPoint(), SEG::NearestPoint(), ROUTER_TOOL::NeighboringSegmentFilter(), PNS::OctagonalHull(), ACTION_MENU::OnIdle(), KIGFX::WX_VIEW_CONTROLS::onScroll(), PCB_POINT_EDITOR::OnSelectionChange(), KIGFX::WX_VIEW_CONTROLS::onTimer(), KIGFX::WX_VIEW_CONTROLS::onWheel(), operator *(), VECTOR2< unsigned int >::operator *(), VECTOR2< unsigned int >::operator wxPoint(), VECTOR2< unsigned int >::operator!=(), PNS::JOINT::JOINT_TAG_HASH::operator()(), POLY_GRID_PARTITION::segHash::operator()(), VECTOR2< unsigned int >::operator()(), VECTOR2< unsigned int >::operator+(), VECTOR2< unsigned int >::operator+=(), VECTOR2< unsigned int >::operator-(), VECTOR2< unsigned int >::operator-=(), operator<<(), VECTOR2< unsigned int >::operator=(), VECTOR2< unsigned int >::operator==(), SHAPE_RECT::Outline(), BITMAPCONV_INFO::outputOnePolygon(), EAGLE_PLUGIN::packagePolygon(), COMMON_TOOLS::PanControl(), SHAPE_LINE_CHAIN::Parse(), SHAPE_POLY_SET::Parse(), SCH_SEXPR_PARSER::parseArc(), DRAWING_SHEET_READER_PARSER::parseBitmap(), DRAWING_SHEET_READER_PARSER::parseCoordinate(), DRAWING_SHEET_READER_PARSER::parseGraphic(), PCB_PARSER::parseOutlinePoints(), DRAWING_SHEET_READER_PARSER::parsePolygon(), DRAWING_SHEET_READER_PARSER::parsePolyOutline(), DRAWING_SHEET_READER_PARSER::parseSetup(), DRAWING_SHEET_READER_PARSER::parseText(), partitionPolyIntoRegularCellGrid(), DXF_PLOTTER::PenTo(), HPGL_PLOTTER::PenTo(), PS_PLOTTER::PenTo(), PDF_PLOTTER::PenTo(), SVG_PLOTTER::PenTo(), pinEditedCorner(), SYMBOL_EDITOR_DRAWING_TOOLS::PlaceAnchor(), BOARD_EDITOR_CONTROL::PlaceFootprint(), BOARD_EDITOR_CONTROL::PlaceTarget(), GERBER_PLOTTER::plotArc(), PlotDrawingSheet(), PS_PLOTTER::PlotImage(), PDF_PLOTTER::PlotImage(), DXF_PLOTTER::PlotPoly(), PS_PLOTTER::PlotPoly(), PDF_PLOTTER::PlotPoly(), SVG_PLOTTER::PlotPoly(), SHAPE_LINE_CHAIN_BASE::PointInside(), PNS::pointInside2(), POLY_GRID_PARTITION::poly2grid(), POLY_GRID_PARTITION::poly2gridX(), polygon_Convert(), GERBER_DRAW_ITEM::PrintGerberPoly(), DS_DRAW_ITEM_POLYPOLYGONS::PrintWsItem(), processEdge(), SHAPE_LINE_CHAIN::POINT_INSIDE_TRACKER::processVertex(), PNS::SHOVE::pushOrShoveVia(), LABEL_MANAGER::recalculate(), HPGL_PLOTTER::Rect(), PS_PLOTTER::Rect(), PDF_PLOTTER::Rect(), SVG_PLOTTER::Rect(), PNS::OPTIMIZER::rectBreakouts(), DIALOG_PAD_PROPERTIES::redraw(), SEG::ReflectPoint(), RENDER_3D_RAYTRACE::Reload(), FOOTPRINT_PREVIEW_PANEL::renderFootprint(), BOARD_ITEM::Rotate(), RotatePoint(), KIGFX::CAIRO_GAL_BASE::roundp(), CLIPBOARD_IO::SaveSelection(), IMPORTED_LINE::Scale(), IMPORTED_CIRCLE::Scale(), IMPORTED_ARC::Scale(), KIGFX::CAIRO_GAL_BASE::Scale(), KIGFX::OPENGL_GAL::Scale(), IMPORTED_TEXT::Scale(), IMPORTED_SPLINE::Scale(), POLY_GRID_PARTITION::scanCell(), PL_SELECTION_TOOL::selectionContains(), EE_SELECTION_TOOL::selectionContains(), PL_SELECTION_TOOL::selectMultiple(), EE_SELECTION_TOOL::selectMultiple(), PCB_SELECTION_TOOL::selectMultiple(), GERBVIEW_SELECTION_TOOL::selectPoint(), ZOOM_TOOL::selectRegion(), DS_DATA_ITEM_POLYGONS::SetBoundingBox(), KIGFX::VIEW::SetCenter(), KIGFX::CAIRO_GAL::setCompositor(), KIGFX::PREVIEW::SetConstantGlyphHeight(), DS_DATA_ITEM_TEXT::SetConstrainedTextSize(), ZONE::SetCornerPosition(), DS_DATA_ITEM::SetEnd(), KIGFX::GAL::SetGridOrigin(), KIGFX::GAL::SetGridSize(), KIGFX::GAL::SetLayerDepth(), KIGFX::SHADER::SetParameter(), EDIT_POINT::SetPosition(), MATRIX3x3< double >::SetScale(), KIGFX::CAIRO_PRINT_GAL::SetSheetSize(), DS_DATA_ITEM::SetStart(), MATRIX3x3< double >::SetTranslation(), DS_DATA_MODEL::SetupDrawEnvironment(), KIGFX::VIEW::SetViewport(), SHAPE_ARC::SHAPE_ARC(), PNS::shovedArea(), DIALOG_IMPORT_GFX::showPcbImportOffsets(), SCH_DRAWING_TOOLS::sizeSheet(), sortEndsByDescendingX(), EDA_DRAW_PANEL_GAL::SwitchBackend(), DS_DATA_ITEM_TEXT::SyncDrawItems(), PNS_KICAD_IFACE_BASE::syncPad(), DRC_TEST_PROVIDER_COPPER_CLEARANCE::testZones(), DXF_PLOTTER::Text(), PS_PLOTTER::Text(), SVG_PLOTTER::Text(), KIGFX::VIEW::ToScreen(), KIGFX::VIEW::ToWorld(), KIGFX::CAIRO_GAL_BASE::Translate(), KIGFX::OPENGL_GAL::Translate(), SHAPE_POLY_SET::unfractureSingle(), PCB_DIM_ALIGNED::updateGeometry(), DXF_IMPORT_PLUGIN::updateImageLimits(), PCB_POINT_EDITOR::updateItem(), PNS_KICAD_IFACE::UpdateItem(), POLYGON_GEOM_MANAGER::updateLeaderPoints(), EE_POINT_EDITOR::updateParentItem(), DIALOG_IMPORT_GFX::updatePcbImportOffsets_mm(), EE_POINT_EDITOR::updatePoints(), PL_POINT_EDITOR::updatePoints(), KIGFX::WX_VIEW_CONTROLS::UpdateScrollbars(), GERBVIEW_FRAME::UpdateStatusBar(), PL_EDITOR_FRAME::UpdateStatusBar(), SCH_BASE_FRAME::UpdateStatusBar(), PCB_BASE_FRAME::UpdateStatusBar(), PCB_DIM_ALIGNED::updateText(), PCB_DIM_ORTHOGONAL::updateText(), VECTOR2< unsigned int >::VECTOR2(), KIGFX::VERTEX_MANAGER::Vertex(), PAD::ViewBBox(), KIGFX::ORIGIN_VIEWITEM::ViewDraw(), KIGFX::PREVIEW::TWO_POINT_ASSISTANT::ViewDraw(), KIGFX::PREVIEW::SELECTION_AREA::ViewDraw(), KIGFX::WX_VIEW_CONTROLS::WarpCursor(), EDIT_POINT::WithinPoint(), GERBER_PLOTTER::writeApertureList(), HYPERLYNX_EXPORTER::writeNetObjects(), GBR_TO_PCB_EXPORTER::writePcbFilledCircle(), GBR_TO_PCB_EXPORTER::writePcbPolygon(), GBR_TO_PCB_EXPORTER::writePcbZoneItem(), KIGFX::CAIRO_GAL_BASE::xform(), PANEL_PCBNEW_COLOR_SETTINGS::zoomFitPreview(), PANEL_EESCHEMA_COLOR_SETTINGS::zoomFitPreview(), PCB_SELECTION_TOOL::zoomFitSelection(), and DIALOG_IMPORT_GFX::~DIALOG_IMPORT_GFX().

◆ y

template<class T = int>
T VECTOR2< T >::y

Definition at line 82 of file vector2d.h.

Referenced by DXF_IMPORT_PLUGIN::addArc(), PNS_PCBNEW_DEBUG_DECORATOR::AddBox(), GRAPHICS_IMPORTER_PCBNEW::AddCircle(), ZONE_FILLER::addHatchFillTypeOnZone(), PNS_KICAD_IFACE::AddItem(), DXF_IMPORT_PLUGIN::addMText(), PNS_TEST_DEBUG_DECORATOR::AddPoint(), BOARD_ADAPTER::addShapeWithClearance(), BOARD_ADAPTER::addSolidAreasShapes(), DXF_IMPORT_PLUGIN::addText(), TRIANGLE_DISPLAY_LIST::AddToMiddleContourns(), RENDER_3D_LEGACY::addTopAndBottomTriangles(), DXF_IMPORT_PLUGIN::addVertex(), GRID_HELPER::Align(), GRID_HELPER::AlignGrid(), PCB_GRID_HELPER::AlignToArc(), KIGFX::CAIRO_GAL::allocateBitmaps(), SHAPE_POLY_SET::Append(), EC_HORIZONTAL::Apply(), CADSTAR_PCB_ARCHIVE_LOADER::applyRouteOffset(), SEG::ApproxCollinear(), SEG::ApproxParallel(), DXF_PLOTTER::Arc(), HPGL_PLOTTER::Arc(), PS_PLOTTER::Arc(), PDF_PLOTTER::Arc(), SVG_PLOTTER::Arc(), SHAPE_RECT::BBox(), KIGFX::OPENGL_GAL::beginDrawing(), EE_GRID_HELPER::BestSnapAnchor(), PCB_GRID_HELPER::BestSnapAnchor(), SVG_PLOTTER::BezierCurve(), KIGFX::OPENGL_GAL::BitmapText(), KIGFX::CAIRO_GAL_BASE::blitCursor(), KIGFX::OPENGL_GAL::blitCursor(), BOOST_AUTO_TEST_CASE(), LABEL_MANAGER::boxMtv(), BuildConvexHull(), PAD::BuildEffectiveShapes(), PNS::DP_GATEWAYS::BuildForCursor(), KI_TEST::BuildHSeg(), DIRECTION_45::BuildInitialTrace(), BOARD_ADAPTER::buildPadOutlineAsSegments(), KI_TEST::BuildRectChain(), KI_TEST::BuildVSeg(), LIB_ARC::CalcMidPoint(), calculateBezierSegmentationThreshold(), SHAPE_ARC::ccw(), SEG::ccw(), SHAPE_SIMPLE::CDPoint(), KIGFX::WX_VIEW_CONTROLS::CenterOnCursor(), POLY_GRID_PARTITION::checkClearance(), PNS::DP_GATEWAYS::checkDiagonalAlignment(), DXF_PLOTTER::Circle(), PS_PLOTTER::Circle(), PDF_PLOTTER::Circle(), SVG_PLOTTER::Circle(), KIGFX::CAIRO_GAL_BASE::ClearScreen(), Collide(), SHAPE_RECT::Collide(), SHAPE_ARC::Collide(), SEG::Collinear(), PNS_KICAD_IFACE::Commit(), commonParallelProjection(), PNS::commonParallelProjection(), CompareVector2I(), EE_GRID_HELPER::computeAnchors(), PCB_GRID_HELPER::computeAnchors(), KIGFX::OPENGL_GAL::computeBitmapTextSize(), KIGFX::STROKE_FONT::computeBoundingBox(), computeCenter(), KIGFX::STROKE_FONT::computeOverbarVerticalPosition(), AR_AUTOPLACER::computePlacementRatsnestCost(), KIGFX::STROKE_FONT::ComputeStringBoundaryLimits(), PSLIKE_PLOTTER::computeTextParameters(), KIGFX::STROKE_FONT::computeUnderlineVerticalPosition(), KIGFX::CAIRO_PRINT_GAL::ComputeWorldScreenMatrix(), KIGFX::OPENGL_GAL::ComputeWorldScreenMatrix(), KIGFX::GAL::ComputeWorldScreenMatrix(), DIRECTION_45::construct_(), POLY_GRID_PARTITION::containsPoint(), ConvertArcToPolyline(), ConvertOutlineToPolygon(), ConvertPolygonToBlocks(), ConvertPolygonToTriangles(), SHAPE_LINE_CHAIN::convertToClipper(), SHAPE_ARC::ConvertToPolyline(), PROPERTIES_FRAME::CopyPrmsFromGeneralToPanel(), PROPERTIES_FRAME::CopyPrmsFromItemToPanel(), PROPERTIES_FRAME::CopyPrmsFromPanelToGeneral(), PROPERTIES_FRAME::CopyPrmsFromPanelToItem(), CornerListToPolygon(), KIGFX::OPENGL_COMPOSITOR::CreateBuffer(), MICROWAVE_TOOL::createInductorBetween(), PolygonTriangulation::createList(), CreatePadsShapesSection(), BOARD_ADAPTER::createPadWithClearance(), BOARD_ADAPTER::createPadWithDrill(), VECTOR2< unsigned int >::Cross(), COMMON_TOOLS::CursorControl(), DIALOG_BOARD_REANNOTATE::DIALOG_BOARD_REANNOTATE(), DIALOG_IMPORT_GFX::DIALOG_IMPORT_GFX(), DIRECTION_45::DIRECTION_45(), EDIT_TOOL::doMoveSelection(), VECTOR2< unsigned int >::Dot(), COMMON_TOOLS::doZoomFit(), dpoint_dist(), KIGFX::STROKE_FONT::Draw(), KIGFX::DS_PAINTER::draw(), KIGFX::SCH_PAINTER::draw(), KIGFX::PCB_PAINTER::draw(), KIGFX::OPENGL_GAL::DrawArc(), KIGFX::CAIRO_GAL_BASE::DrawArcSegment(), KIGFX::OPENGL_GAL::DrawArcSegment(), KIGFX::CAIRO_GAL_BASE::drawAxes(), KIGFX::CAIRO_GAL_BASE::DrawCircle(), KIGFX::OPENGL_GAL::DrawCircle(), drawCursorStrings(), KIGFX::CAIRO_GAL_BASE::DrawCurve(), KIGFX::OPENGL_GAL::drawFilledSemiCircle(), D_CODE::DrawFlashedPolygon(), KIGFX::OPENGL_GAL::DrawGrid(), KIGFX::CAIRO_GAL_BASE::DrawGrid(), KIGFX::CAIRO_GAL_BASE::drawGridCross(), KIGFX::CAIRO_GAL_BASE::drawGridLine(), KIGFX::CAIRO_GAL_BASE::drawGridPoint(), KIGFX::CAIRO_GAL_BASE::DrawLine(), BASIC_GAL::DrawLine(), KIGFX::OPENGL_GAL::drawLineQuad(), KIGFX::CAIRO_GAL_BASE::drawPoly(), KIGFX::OPENGL_GAL::DrawPolygon(), KI_TEST::DrawRect(), KIGFX::CAIRO_GAL_BASE::DrawRectangle(), KIGFX::OPENGL_GAL::DrawRectangle(), KIGFX::CAIRO_GAL_BASE::DrawSegment(), SYMBOL_EDITOR_DRAWING_TOOLS::DrawShape(), KIGFX::STROKE_FONT::drawSingleLineText(), KIGFX::OPENGL_GAL::drawStrokedSemiCircle(), KIGFX::PREVIEW::DrawTextNextToCursor(), KIGFX::OPENGL_GAL::drawTriangulatedPolyset(), PNS::DP_PRIMITIVE_PAIR::dump(), SHAPE_LINE_CHAIN_BASE::EdgeContainingPoint(), PCB_POINT_EDITOR::editArcEndpointKeepCenter(), PCB_POINT_EDITOR::editArcEndpointKeepTangent(), PCB_POINT_EDITOR::editArcMidKeepCenter(), GERBER_PLOTTER::emitDcode(), KIGFX::CAIRO_GAL::endDrawing(), HPGL_PLOTTER::EndPlot(), PAD_TOOL::EnumeratePads(), EXPORTER_PCB_VRML::ExportVrmlBoard(), EXPORTER_PCB_VRML::ExportVrmlPolygonSet(), DSN::SPECCTRA_DB::fillBOUNDARY(), AR_AUTOPLACER::fillMatrix(), findEndSegments(), SCH_EDITOR_CONTROL::FindSymbolAndItem(), SYMBOL_PREVIEW_WIDGET::fitOnDrawArea(), GERBER_PLOTTER::FlashPadChamferRoundRect(), HPGL_PLOTTER::FlashPadCircle(), PSLIKE_PLOTTER::FlashPadCustom(), GERBER_PLOTTER::FlashPadCustom(), HPGL_PLOTTER::FlashPadCustom(), DXF_PLOTTER::FlashPadCustom(), PSLIKE_PLOTTER::FlashPadRoundRect(), GERBER_PLOTTER::FlashPadRoundRect(), HPGL_PLOTTER::FlashPadRoundRect(), DXF_PLOTTER::FlashPadRoundRect(), BOARD_ITEM::Flip(), DS_DATA_MODEL_IO::Format(), DS_DATA_MODEL_IO::format(), SHAPE_SEGMENT::Format(), SHAPE_RECT::Format(), DS_DATA_MODEL_IO::formatCoordinate(), FormatInternalUnits(), DS_DATA_MODEL_IO::formatRepeatParameters(), GERBER_DRAW_ITEM::GetABPosition(), CN_ITEM::GetAnchor(), GetArcAngle(), GetArcCenter(), GetArcMid(), PAD::GetBestAnchorPosition(), PCB_DIMENSION_BASE::GetBoundingBox(), SHAPE_ARC::GetCentralAngle(), DS_DATA_ITEM_POLYGONS::GetCornerPosition(), DS_DATA_ITEM_POLYGONS::GetCornerPositionUi(), SHAPE_ARC::GetEndAngle(), DS_DATA_ITEM::GetEndPos(), KIGFX::ORIGIN_VIEWITEM::GetEndPosition(), DS_DATA_ITEM::GetEndPosUi(), PCB_SHAPE::GetFocusPosition(), GRID_HELPER::GetGrid(), KIGFX::GAL::GetGridPoint(), ARRAY_GRID_OPTIONS::GetItemNumber(), KIGFX::GAL::GetMaxDepth(), PL_EDITOR_LAYOUT::GetMsgPanelInfo(), DS_DRAW_ITEM_BASE::GetMsgPanelInfo(), EDA_DRAW_FRAME::GetNearestGridPosition(), EDA_DRAW_FRAME::GetNearestHalfGridPosition(), KIGFX::ORIGIN_VIEWITEM::GetPosition(), getRectangleAlongCentreLine(), KIGFX::OPENGL_GAL::getScreenPixelSize(), SHAPE_ARC::GetStartAngle(), DS_DATA_ITEM::GetStartPos(), DS_DATA_ITEM::GetStartPosUi(), EDA_TEXT::GetTextBox(), ARRAY_GRID_OPTIONS::GetTransform(), MATRIX3x3< double >::GetTranslation(), GetVectorSnapped45(), KIGFX::GAL::GetVisibleWorldExtents(), KIGFX::OPENGL_GAL::getWorldPixelSize(), EDIT_POINT::GetY(), POLY_GRID_PARTITION::grid2poly(), POLY_GRID_PARTITION::grid2polyY(), PCB_SELECTION_TOOL::GuessSelectionCandidates(), KIGFX::WX_VIEW_CONTROLS::handleAutoPanning(), ZONE::HatchBorder(), DS_DRAW_ITEM_POLYPOLYGONS::HitTest(), KIGFX::OPENGL_COMPOSITOR::Initialize(), KIGFX::CAIRO_GAL::initSurface(), DXF_IMPORT_PLUGIN::insertArc(), DXF_IMPORT_PLUGIN::insertLine(), PolygonTriangulation::insertVertex(), DRAWING_TOOL::InteractivePlaceWithPreview(), CIRCLE::Intersect(), SEG::intersects(), PNS::LINE::Is45Degree(), GEOM_TEST::IsInQuadrant(), DS_DATA_ITEM::IsInsidePage(), DS_DATA_ITEM_POLYGONS::IsInsidePage(), KIGFX::CAIRO_PRINT_GAL::isLandscape(), LexicographicalCompare(), LexicographicalMax(), LexicographicalMin(), SEG::LineDistance(), SEG::LineProject(), PNS_LOG_FILE::Load(), CADSTAR_PCB_ARCHIVE_LOADER::loadDimensions(), KIGFX::STROKE_FONT::LoadNewStrokeFont(), EAGLE_PLUGIN::loadPolygon(), EDIT_POINTS_FACTORY::Make(), DSN::SPECCTRA_DB::makeIMAGE(), GEOM_TEST::MakeSquarePolyLine(), GRAPHICS_IMPORTER_PCBNEW::MapCoordinate(), mapCoords(), MARKER_BASE::MARKER_BASE(), SHAPE_ARC::Mirror(), ZONE::Mirror(), SHAPE_LINE_CHAIN::Mirror(), STATUS_POPUP::Move(), BOARD_ITEM::Move(), DS_DATA_ITEM::MoveEndPointTo(), DS_DATA_ITEM::MoveEndPointToUi(), EDIT_TOOL::MoveExact(), DS_DATA_ITEM::MoveStartPointTo(), DS_DATA_ITEM::MoveToUi(), CIRCLE::NearestPoint(), SEG::NearestPoint(), ROUTER_TOOL::NeighboringSegmentFilter(), PNS::OctagonalHull(), ACTION_MENU::OnIdle(), KIGFX::WX_VIEW_CONTROLS::onMotion(), KIGFX::WX_VIEW_CONTROLS::onScroll(), PCB_POINT_EDITOR::OnSelectionChange(), KIGFX::WX_VIEW_CONTROLS::onTimer(), KIGFX::WX_VIEW_CONTROLS::onWheel(), operator *(), VECTOR2< unsigned int >::operator *(), VECTOR2< unsigned int >::operator wxPoint(), VECTOR2< unsigned int >::operator!=(), PNS::JOINT::JOINT_TAG_HASH::operator()(), POLY_GRID_PARTITION::segHash::operator()(), VECTOR2< unsigned int >::operator()(), VECTOR2< unsigned int >::operator+(), VECTOR2< unsigned int >::operator+=(), VECTOR2< unsigned int >::operator-(), VECTOR2< unsigned int >::operator-=(), operator<<(), VECTOR2< unsigned int >::operator=(), VECTOR2< unsigned int >::operator==(), SHAPE_RECT::Outline(), BITMAPCONV_INFO::outputOnePolygon(), EAGLE_PLUGIN::packagePolygon(), COMMON_TOOLS::PanControl(), SHAPE_LINE_CHAIN::Parse(), SHAPE_POLY_SET::Parse(), SCH_SEXPR_PARSER::parseArc(), DRAWING_SHEET_READER_PARSER::parseBitmap(), DRAWING_SHEET_READER_PARSER::parseCoordinate(), DRAWING_SHEET_READER_PARSER::parseGraphic(), PCB_PARSER::parseOutlinePoints(), DRAWING_SHEET_READER_PARSER::parsePolygon(), DRAWING_SHEET_READER_PARSER::parsePolyOutline(), DRAWING_SHEET_READER_PARSER::parseSetup(), DRAWING_SHEET_READER_PARSER::parseText(), partitionPolyIntoRegularCellGrid(), DXF_PLOTTER::PenTo(), HPGL_PLOTTER::PenTo(), PS_PLOTTER::PenTo(), PDF_PLOTTER::PenTo(), SVG_PLOTTER::PenTo(), pinEditedCorner(), SYMBOL_EDITOR_DRAWING_TOOLS::PlaceAnchor(), BOARD_EDITOR_CONTROL::PlaceFootprint(), BOARD_EDITOR_CONTROL::PlaceTarget(), GERBER_PLOTTER::plotArc(), PlotDrawingSheet(), PS_PLOTTER::PlotImage(), PDF_PLOTTER::PlotImage(), DXF_PLOTTER::PlotPoly(), PS_PLOTTER::PlotPoly(), PDF_PLOTTER::PlotPoly(), SVG_PLOTTER::PlotPoly(), SHAPE_LINE_CHAIN_BASE::PointInside(), PNS::pointInside2(), POLY_GRID_PARTITION::poly2grid(), POLY_GRID_PARTITION::poly2gridY(), polygon_Convert(), GERBER_DRAW_ITEM::PrintGerberPoly(), DS_DRAW_ITEM_POLYPOLYGONS::PrintWsItem(), processEdge(), SHAPE_LINE_CHAIN::POINT_INSIDE_TRACKER::processVertex(), PNS::SHOVE::pushOrShoveVia(), LABEL_MANAGER::recalculate(), HPGL_PLOTTER::Rect(), PS_PLOTTER::Rect(), PDF_PLOTTER::Rect(), SVG_PLOTTER::Rect(), PNS::OPTIMIZER::rectBreakouts(), DIALOG_PAD_PROPERTIES::redraw(), SEG::ReflectPoint(), RENDER_3D_RAYTRACE::Reload(), FOOTPRINT_PREVIEW_PANEL::renderFootprint(), BOARD_ITEM::Rotate(), RotatePoint(), KIGFX::CAIRO_GAL_BASE::roundp(), CLIPBOARD_IO::SaveSelection(), IMPORTED_LINE::Scale(), IMPORTED_CIRCLE::Scale(), IMPORTED_ARC::Scale(), KIGFX::CAIRO_GAL_BASE::Scale(), KIGFX::OPENGL_GAL::Scale(), IMPORTED_TEXT::Scale(), IMPORTED_SPLINE::Scale(), POLY_GRID_PARTITION::scanCell(), PL_SELECTION_TOOL::selectionContains(), EE_SELECTION_TOOL::selectionContains(), PL_SELECTION_TOOL::selectMultiple(), EE_SELECTION_TOOL::selectMultiple(), PCB_SELECTION_TOOL::selectMultiple(), GERBVIEW_SELECTION_TOOL::selectPoint(), ZOOM_TOOL::selectRegion(), DS_DATA_ITEM_POLYGONS::SetBoundingBox(), KIGFX::VIEW::SetCenter(), KIGFX::CAIRO_GAL::setCompositor(), KIGFX::PREVIEW::SetConstantGlyphHeight(), DS_DATA_ITEM_TEXT::SetConstrainedTextSize(), ZONE::SetCornerPosition(), DS_DATA_ITEM::SetEnd(), KIGFX::GAL::SetGridOrigin(), KIGFX::GAL::SetGridSize(), KIGFX::GAL::SetLayerDepth(), KIGFX::SHADER::SetParameter(), EDIT_POINT::SetPosition(), MATRIX3x3< double >::SetScale(), KIGFX::CAIRO_PRINT_GAL::SetSheetSize(), DS_DATA_ITEM::SetStart(), MATRIX3x3< double >::SetTranslation(), DS_DATA_MODEL::SetupDrawEnvironment(), KIGFX::VIEW::SetViewport(), SHAPE_ARC::SHAPE_ARC(), PNS::shovedArea(), DIALOG_IMPORT_GFX::showPcbImportOffsets(), EDA_DRAW_PANEL_GAL::SwitchBackend(), DS_DATA_ITEM_TEXT::SyncDrawItems(), PNS_KICAD_IFACE_BASE::syncPad(), DRC_TEST_PROVIDER_COPPER_CLEARANCE::testZones(), DXF_PLOTTER::Text(), PS_PLOTTER::Text(), SVG_PLOTTER::Text(), KIGFX::VIEW::ToScreen(), KIGFX::VIEW::ToWorld(), KIGFX::CAIRO_GAL_BASE::Translate(), KIGFX::OPENGL_GAL::Translate(), SHAPE_POLY_SET::unfractureSingle(), PCB_DIM_ALIGNED::updateGeometry(), DXF_IMPORT_PLUGIN::updateImageLimits(), PCB_POINT_EDITOR::updateItem(), PNS_KICAD_IFACE::UpdateItem(), POLYGON_GEOM_MANAGER::updateLeaderPoints(), EE_POINT_EDITOR::updateParentItem(), DIALOG_IMPORT_GFX::updatePcbImportOffsets_mm(), EE_POINT_EDITOR::updatePoints(), PL_POINT_EDITOR::updatePoints(), KIGFX::WX_VIEW_CONTROLS::UpdateScrollbars(), GERBVIEW_FRAME::UpdateStatusBar(), PL_EDITOR_FRAME::UpdateStatusBar(), SCH_BASE_FRAME::UpdateStatusBar(), PCB_BASE_FRAME::UpdateStatusBar(), PCB_DIM_ALIGNED::updateText(), PCB_DIM_ORTHOGONAL::updateText(), VECTOR2< unsigned int >::VECTOR2(), KIGFX::VERTEX_MANAGER::Vertex(), PAD::ViewBBox(), KIGFX::ORIGIN_VIEWITEM::ViewDraw(), KIGFX::PREVIEW::TWO_POINT_ASSISTANT::ViewDraw(), KIGFX::WX_VIEW_CONTROLS::WarpCursor(), EDIT_POINT::WithinPoint(), GERBER_PLOTTER::writeApertureList(), HYPERLYNX_EXPORTER::writeNetObjects(), GBR_TO_PCB_EXPORTER::writePcbFilledCircle(), GBR_TO_PCB_EXPORTER::writePcbPolygon(), GBR_TO_PCB_EXPORTER::writePcbZoneItem(), KIGFX::CAIRO_GAL_BASE::xform(), PANEL_PCBNEW_COLOR_SETTINGS::zoomFitPreview(), PANEL_EESCHEMA_COLOR_SETTINGS::zoomFitPreview(), PCB_SELECTION_TOOL::zoomFitSelection(), and DIALOG_IMPORT_GFX::~DIALOG_IMPORT_GFX().


The documentation for this class was generated from the following file: