RDGeom::Point2D Class Reference

`#include <point.h>`

Inheritance diagram for RDGeom::Point2D:

## Public Member Functions

| Point2D ()
| Point2D (double xv, double yv)
| ~Point2D () override=default
| Point2D (const Point2D &other)
| Point2D (const Point3D &p3d)
| construct from a Point3D (ignoring the z coordinate) More...
Point * | copy () const override
unsigned int | dimension () const override
double | operator[] (unsigned int i) const override
double & | operator[] (unsigned int i) override
Point2D & | operator= (const Point2D &other)
Point2D & | operator+= (const Point2D &other)
Point2D & | operator-= (const Point2D &other)
Point2D & | operator*= (double scale)
Point2D & | operator/= (double scale)
Point2D | operator- () const
void | normalize () override
void | rotate90 ()
double | length () const override
double | lengthSq () const override
double | dotProduct (const Point2D &other) const
double | angleTo (const Point2D &other) const
double | signedAngleTo (const Point2D &other) const
Point2D | directionVector (const Point2D &other) const
Public Member Functions inherited from RDGeom::Point
virtual | ~Point ()

## Public Attributes

double | x {0.0}
double | y {0.0}

## Detailed Description

Definition at line 272 of file point.h.

## Constructor & Destructor Documentation

## Point2D() [1/4]

RDGeom::Point2D::Point2D | ( |  | ) |

inline

Definition at line 277 of file point.h.

## Point2D() [2/4]

RDGeom::Point2D::Point2D | ( | double | xv,
|  | double | yv
| ) |  |

inline

Definition at line 278 of file point.h.

## ~Point2D()

RDGeom::Point2D::~Point2D | ( |  | ) |

override default

## Point2D() [3/4]

RDGeom::Point2D::Point2D | ( | const Point2D & | other | ) |

inline

Definition at line 281 of file point.h.

## Point2D() [4/4]

RDGeom::Point2D::Point2D | ( | const Point3D & | p3d | ) |

inline

construct from a Point3D (ignoring the z coordinate)

Definition at line 283 of file point.h.

## Member Function Documentation

## angleTo()

double RDGeom::Point2D::angleTo | ( | const Point2D & | other | ) | const

inline

Definition at line 372 of file point.h.

References dotProduct(), and normalize().

Referenced by RDDepict::computeAngle().

## copy()

Point* RDGeom::Point2D::copy | ( |  | ) | const

inline override virtual

Implements RDGeom::Point.

Definition at line 285 of file point.h.

## dimension()

unsigned int RDGeom::Point2D::dimension | ( |  | ) | const

inline override virtual

Implements RDGeom::Point.

Definition at line 287 of file point.h.

## directionVector()

Point2D RDGeom::Point2D::directionVector | ( | const Point2D & | other | ) | const

inline

Definition at line 393 of file point.h.

References normalize(), x, and y.

## dotProduct()

double RDGeom::Point2D::dotProduct | ( | const Point2D & | other | ) | const

inline

Definition at line 367 of file point.h.

References x, and y.

Referenced by angleTo().

## length()

double RDGeom::Point2D::length | ( |  | ) | const

inline override virtual

Implements RDGeom::Point.

Definition at line 356 of file point.h.

## lengthSq()

double RDGeom::Point2D::lengthSq | ( |  | ) | const

inline override virtual

Implements RDGeom::Point.

Definition at line 362 of file point.h.

## normalize()

void RDGeom::Point2D::normalize | ( |  | ) |

inline override virtual

Implements RDGeom::Point.

Definition at line 344 of file point.h.

Referenced by angleTo(), RDDepict::computeNormal(), and directionVector().

## operator*=()

Point2D& RDGeom::Point2D::operator*= | ( | double | scale | ) |

inline

Definition at line 325 of file point.h.

## operator+=()

Point2D& RDGeom::Point2D::operator+= | ( | const Point2D & | other | ) |

inline

Definition at line 313 of file point.h.

References x, and y.

## operator-()

Point2D RDGeom::Point2D::operator- | ( |  | ) | const

inline

Definition at line 337 of file point.h.

References x, and y.

## operator-=()

Point2D& RDGeom::Point2D::operator-= | ( | const Point2D & | other | ) |

inline

Definition at line 319 of file point.h.

References x, and y.

## operator/=()

Point2D& RDGeom::Point2D::operator/= | ( | double | scale | ) |

inline

Definition at line 331 of file point.h.

## operator=()

Point2D& RDGeom::Point2D::operator= | ( | const Point2D & | other | ) |

inline

Definition at line 307 of file point.h.

References x, and y.

## operator[]() [1/2]

double RDGeom::Point2D::operator[] | ( | unsigned int | i | ) | const

inline override virtual

Implements RDGeom::Point.

Definition at line 289 of file point.h.

References PRECONDITION.

## operator[]() [2/2]

double& RDGeom::Point2D::operator[] | ( | unsigned int | i | ) |

inline override virtual

Implements RDGeom::Point.

Definition at line 298 of file point.h.

References PRECONDITION.

## rotate90()

void RDGeom::Point2D::rotate90 | ( |  | ) |

inline

Definition at line 350 of file point.h.

## signedAngleTo()

double RDGeom::Point2D::signedAngleTo | ( | const Point2D & | other | ) | const

inline

Definition at line 387 of file point.h.

References M_PI, x, and y.

## Member Data Documentation

## x

double RDGeom::Point2D::x {0.0}

Definition at line 274 of file point.h.

Referenced by RDKit::StringRect::calcCorners(), RDDepict::computeNormal(), directionVector(), RDKit::StringRect::doesItIntersect(), dotProduct(), RDKit::MolDraw2Dwx::drawChar(), RDKit::MolDraw2Dwx::drawLine(), RDKit::MolDraw2Dwx::drawPolygon(), operator+=(), operator-(), operator-=(), operator=(), RDDepict::rotationDir(), and signedAngleTo().

## y

double RDGeom::Point2D::y {0.0}

Definition at line 275 of file point.h.

Referenced by RDKit::StringRect::calcCorners(), RDDepict::computeNormal(), directionVector(), RDKit::StringRect::doesItIntersect(), dotProduct(), RDKit::MolDraw2Dwx::drawChar(), RDKit::MolDraw2Dwx::drawLine(), RDKit::MolDraw2Dwx::drawPolygon(), operator+=(), operator-(), operator-=(), operator=(), RDDepict::rotationDir(), and signedAngleTo().

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

- point.h