class Line3D
Defined in:  
The TSLine3D.hLine3D class encapsulates a 3D line.
Definition
class Line3D
Member Functions
| Line3D::Set | Sets all six components of a line. | 
| Line3D::Unitize | Unitizes the weight of a line. | 
Constructor
Line3D();
Line3D(float vx, float vy, float vz, float mx, float my, float mz);
Line3D(const Vector3D& direction, const Bivector3D& moment);
Parameters
| vx,vy,vz | The three components of the direction of the line. | 
| mx,my,mz | The three components of the moment of the line. | 
| direction | A 3D vector corresponding to the direction of the line. | 
| moment | A 3D bivector corresponding to the moment of the line. | 
Description
The Line3D class is used to store a three dimensional line represented as a four-dimensional bivector having six floating-point components. The components of the line are stored as a Vector3D member named direction and a Bivector3D member named moment.The default constructor leaves the components of the line undefined.
Overloaded Operators
| Line3D& operator *=(float n); | Multiplies by the scalar n. | 
| Line3D& operator /=(float n); | Multiplies by the inverse of the scalar n. | 
Nonmember Operations
| bool operator ==(const Line3D& k, const Line3D& l); | Returns a boolean value indicating whether the two lines kandlare equal. | 
| bool operator !=(const Line3D& k, const Line3D& l); | Returns a boolean value indicating whether the two lines kandlare not equal. | 
| Line3D operator ~(const Line3D& l); | Returns the antireverse of the line l. | 
| Line3D operator -(const Line3D& l); | Returns the negation of the line l. | 
| Line3D operator *(const Line3D& l, float n); | Returns the product of the line land the scalarn. | 
| Line3D operator *(float n, const Line3D& l); | Returns the product of the line land the scalarn. | 
| Line3D operator /(const Line3D& l, float n); | Returns the product of the line land the inverse of the scalarn. | 
| Line3D operator ^(const Point3D& p, const Point3D& q); | Returns the wedge product of the points pandq. The w coordinates ofpandqare assumed to be 1. | 
| float operator ^(const Line3D& k, const Line3D& l); | Returns the antiwedge product of the lines kandl. This gives the crossing relationship between the two lines, with positive values representing clockwise crossings and negative values representing counterclockwise crossings. | 
| float BulkNorm(const Line3D& l); | Returns the bulk norm of the line l. | 
| float WeightNorm(const Line3D& l); | Returns the weight norm of the line l. | 
| Point3D Project(const Point3D& p, const Line3D& l); | Returns the projection of the point ponto the linelunder the assumption that the line is unitized. | 
| Line3D Antiproject(const Line3D& l, const Point3D& p); | Returns the antiprojection of the line lonto the pointp(wherepis always unitized because it has an implicit w coordinate of 1). | 
See Also
