aboutsummaryrefslogtreecommitdiff
path: root/dep/include/g3dlite/G3D/Line.h
diff options
context:
space:
mode:
authorXanadu <none@none>2010-07-20 02:49:28 +0200
committerXanadu <none@none>2010-07-20 02:49:28 +0200
commit79622802f397258ee0f34327ba3ae6977ca3e7ff (patch)
tree1868946c234ab9ee256a6b7766a15713eae94235 /dep/include/g3dlite/G3D/Line.h
parent7dd2dc91816ab8b3bc3b99a1b1c99c7ea314d5a8 (diff)
parentf906976837502fa5aa81b982b901d1509f5aa0c4 (diff)
Merge. Revision history for source files should be all back now.
--HG-- branch : trunk rename : sql/CMakeLists.txt => sql/tools/CMakeLists.txt rename : src/server/game/Pools/PoolHandler.cpp => src/server/game/Pools/PoolMgr.cpp rename : src/server/game/Pools/PoolHandler.h => src/server/game/Pools/PoolMgr.h rename : src/server/game/PrecompiledHeaders/NixCorePCH.cpp => src/server/game/PrecompiledHeaders/gamePCH.cpp rename : src/server/game/PrecompiledHeaders/NixCorePCH.h => src/server/game/PrecompiledHeaders/gamePCH.h
Diffstat (limited to 'dep/include/g3dlite/G3D/Line.h')
-rw-r--r--dep/include/g3dlite/G3D/Line.h105
1 files changed, 0 insertions, 105 deletions
diff --git a/dep/include/g3dlite/G3D/Line.h b/dep/include/g3dlite/G3D/Line.h
deleted file mode 100644
index 3579a6becec..00000000000
--- a/dep/include/g3dlite/G3D/Line.h
+++ /dev/null
@@ -1,105 +0,0 @@
-/**
- @file Line.h
-
- Line class
-
- @maintainer Morgan McGuire, http://graphics.cs.williams.edu
-
- @created 2001-06-02
- @edited 2006-02-28
- */
-
-#ifndef G3D_LINE_H
-#define G3D_LINE_H
-
-#include "G3D/platform.h"
-#include "G3D/Vector3.h"
-
-namespace G3D {
-
-class Plane;
-
-/**
- An infinite 3D line.
- */
-class Line {
-protected:
-
- Vector3 _point;
- Vector3 _direction;
-
- Line(const Vector3& point, const Vector3& direction) {
- _point = point;
- _direction = direction.direction();
- }
-
-public:
-
- /** Undefined (provided for creating Array<Line> only) */
- inline Line() {}
-
- Line(class BinaryInput& b);
-
- void serialize(class BinaryOutput& b) const;
-
- void deserialize(class BinaryInput& b);
-
- virtual ~Line() {}
-
- /**
- Constructs a line from two (not equal) points.
- */
- static Line fromTwoPoints(const Vector3 &point1, const Vector3 &point2) {
- return Line(point1, point2 - point1);
- }
-
- /**
- Creates a line from a point and a (nonzero) direction.
- */
- static Line fromPointAndDirection(const Vector3& point, const Vector3& direction) {
- return Line(point, direction);
- }
-
- /**
- Returns the closest point on the line to point.
- */
- Vector3 closestPoint(const Vector3& pt) const;
-
- /**
- Returns the distance between point and the line
- */
- double distance(const Vector3& point) const {
- return (closestPoint(point) - point).magnitude();
- }
-
- /** Returns a point on the line */
- Vector3 point() const;
-
- /** Returns the direction (or negative direction) of the line */
- Vector3 direction() const;
-
- /**
- Returns the point where the line and plane intersect. If there
- is no intersection, returns a point at infinity.
- */
- Vector3 intersection(const Plane &plane) const;
-
-
- /** Finds the closest point to the two lines.
-
- @param minDist Returns the minimum distance between the lines.
-
- @cite http://objectmix.com/graphics/133793-coordinates-closest-points-pair-skew-lines.html
- */
- Vector3 closestPoint(const Line& B, float& minDist) const;
-
- inline Vector3 closestPoint(const Line& B) const {
- float m;
- return closestPoint(B, m);
- }
-};
-
-};// namespace
-
-
-#endif