Kig Python Scripting API Documentation

coordinate.h
1
22#ifndef KIG_MISC_COORDINATE_H
23#define KIG_MISC_COORDINATE_H
24
25class TQPoint;
26class kdbgstream;
27
34{
35public:
36 static Coordinate fromTQPoint( const TQPoint& p );
37
41 Coordinate( double x, double y );
54 ~Coordinate() {}
55
71 bool valid() const;
72
75 double distance ( const Coordinate& p ) const;
80 double length () const;
85 inline double squareLength() const;
88 const Coordinate operator- () const;
96 const Coordinate orthogonal() const;
100 const Coordinate round() const;
104 const Coordinate normalize( double length = 1 ) const;
105 TQPoint toTQPoint() const;
106
107 Coordinate& operator= ( const Coordinate& c );
123public:
126 double x;
129 double y;
130
131 friend kdbgstream& operator<<( kdbgstream& s, const Coordinate& t );
134 friend const Coordinate operator+ ( const Coordinate& a, const Coordinate& b );
137 friend const Coordinate operator- ( const Coordinate& a, const Coordinate& b );
140 friend const Coordinate operator* ( const Coordinate& a, double r );
143 friend const Coordinate operator/ ( const Coordinate& a, double r );
146 friend double operator*( const Coordinate& a, const Coordinate& b );
149 friend bool operator==( const Coordinate&, const Coordinate& );
152 friend bool operator!=( const Coordinate&, const Coordinate& );
153};
154
155const Coordinate operator/ ( const Coordinate& a, double r );
156kdbgstream& operator<<( kdbgstream& s, const Coordinate& t );
157const Coordinate operator+ ( const Coordinate& a, const Coordinate& b );
158const Coordinate operator- ( const Coordinate& a, const Coordinate& b );
159const Coordinate operator* ( const Coordinate& a, double r );
160const Coordinate operator* ( double r, const Coordinate& a );
161double operator*( const Coordinate& a, const Coordinate& b );
162
164{
165 return x*x+y*y;
166}
167
168#endif
169
The Coordinate class is the basic class representing a 2D location by its x and y components.
Definition: coordinate.h:34
Coordinate(const Coordinate &p)
Copy Constructor.
Coordinate(double x, double y)
Constructor.
double distance(const Coordinate &p) const
Distance to another Coordinate.
const Coordinate orthogonal() const
Orthogonal.
double y
Y Component.
Definition: coordinate.h:129
friend bool operator==(const Coordinate &, const Coordinate &)
Equal.
friend const Coordinate operator/(const Coordinate &a, double r)
Scale.
static Coordinate invalidCoord()
Create an invalid Coordinate.
Coordinate & operator+=(const Coordinate &c)
Add.
double x
X Component.
Definition: coordinate.h:126
friend double operator*(const Coordinate &a, const Coordinate &b)
Scalar Product.
Coordinate & operator-=(const Coordinate &c)
Subtract.
friend const Coordinate operator*(const Coordinate &a, double r)
Scale.
double length() const
Length.
bool valid() const
Return whether this is a valid Coordinate.
friend bool operator!=(const Coordinate &, const Coordinate &)
Not Equal.
Coordinate & operator*=(double r)
Scale.
const Coordinate operator-() const
Inverse.
Coordinate & operator/=(double r)
Scale.
double squareLength() const
Square length.
Definition: coordinate.h:163
const Coordinate round() const
Round.
friend const Coordinate operator+(const Coordinate &a, const Coordinate &b)
Add.
const Coordinate normalize(double length=1) const
Normalize.
KDE Logo
This file is part of the documentation for tdelibs .
Documentation copyright © 1996-2002 the KDE developers.
Generated on Sat Dec 21 2024 20:11:58 by doxygen 1.9.4 written by Dimitri van Heesch, © 1997-2001