#include "GeomExport.h"#include "maxheap.h"#include "point2.h"#include "assert1.h"#include <iosfwd>| Classes | |
| class | DPoint2 | 
| Description: This class describes a 2D point using double precision x and y coordinates.  More... | |
| class | DRay2 | 
| This class describes a vector in space using an origin point p, and a unit direction vector in double precision.  More... | |
| Functions | |
| double | Length (const DPoint2 &p) | 
| Returns the 'Length' of the point.  More... | |
| int | MaxComponent (const DPoint2 &p) | 
| Returns the component with the maximum absolute value.  More... | |
| int | MinComponent (const DPoint2 &p) | 
| Returns the component with the minimum absolute value.  More... | |
| DPoint2 | Normalize (const DPoint2 &p) | 
| Returns a unit vector.  More... | |
| DPoint2 | operator* (double m, const DPoint2 &p) | 
| Multiply a DPoint2 by a scalar.  More... | |
| DPoint2 | operator* (const DPoint2 &p, double m) | 
| Multiply a DPoint2 by a scalar.  More... | |
| DPoint2 | operator/ (const DPoint2 &p, double d) | 
| Divide a DPoint2 by a scalar.  More... | |
| std::ostream & | operator<< (std::ostream &s, const DPoint2 &p) | 
| Output a DPoint2 to a std::ostream as text.  More... | |
| Point2 | Point2FromDPoint2 (const DPoint2 &from) | 
| double | DotProd (const DPoint2 &a, const DPoint2 &b) | 
| Returns the dot product of two DPoint2s.  More... | |
| int | DoublePrecisionLineSegmentIntersection (const DPoint2 &seg1Start, const DPoint2 &seg1End, const DPoint2 &seg2Start, const DPoint2 &seg2End, DPoint2 &intersectPoint) | 
| Double-Precision Line Segment Intersection test.  More... | |
| int | DoublePrecisionLineIntersection (const DPoint2 &line1PointA, const DPoint2 &line1PointB, const DPoint2 &line2PointA, const DPoint2 &line2PointB, DPoint2 &intersectPoint) | 
| Double-Precision Line Intersection test.  More... | |
| 
 | inline | 
Returns the 'Length' of the point.
This is sqrt(v.x*v.x+v.y*v.y)
| p | the DPoint2 to test | 
Returns the component with the maximum absolute value.
| p | the DPoint2 to test | 
Returns the component with the minimum absolute value.
0=x, 1=y.
| p | the DPoint2 to test | 
| std::ostream& operator<< | ( | std::ostream & | s, | 
| const DPoint2 & | p | ||
| ) | 
| int DoublePrecisionLineSegmentIntersection | ( | const DPoint2 & | seg1Start, | 
| const DPoint2 & | seg1End, | ||
| const DPoint2 & | seg2Start, | ||
| const DPoint2 & | seg2End, | ||
| DPoint2 & | intersectPoint | ||
| ) | 
Double-Precision Line Segment Intersection test.
Determines if two line segments intersect.
| seg1Start | endpoint 1 for the first line segment | 
| seg1End | endpoint 2 for the first line segment | 
| seg2Start | endpoint 1 for the second line segment | 
| seg2End | endpoint 2 for the second line segment | 
| intersectPoint | if the lines intersect, this will return the intersection point. | 
| int DoublePrecisionLineIntersection | ( | const DPoint2 & | line1PointA, | 
| const DPoint2 & | line1PointB, | ||
| const DPoint2 & | line2PointA, | ||
| const DPoint2 & | line2PointB, | ||
| DPoint2 & | intersectPoint | ||
| ) | 
Double-Precision Line Intersection test.
Determines if two infinite lines cross, and if so, where.
| line1PointA | point 1 on the first line | 
| line1PointB | point 2 on the first line | 
| line2PointA | point 1 on the second line | 
| line2PointB | point 2 on the second line | 
| intersectPoint | if the lines intersect, this will return the intersection point. |