#include <line_segment.h>
Public Member Functions | |
| CL_LineSegment2x () | |
| CL_LineSegment2x (const CL_LineSegment2x< Type > ©) | |
| CL_LineSegment2x (const CL_Vec2< Type > &point_p, const CL_Vec2< Type > &point_q) | |
Attributes | |
| CL_Vec2< Type > | get_midpoint () const |
| Get the midpoint of this line. | |
| Type | point_distance (const CL_Vec2< Type > &point) |
| Return the distance from a point to a line. | |
| bool | collinear (const CL_LineSegment2x< Type > second) const |
| Return true if two line segments are collinear. (All points are on the same line.). | |
| bool | intersects (const CL_LineSegment2x< Type > second, bool collinear_intersect) const |
| Return true if two line segments intersect. | |
| CL_Vec2< Type > | get_intersection (const CL_LineSegment2x< Type > second, bool &intersect) const |
| Return the intersection point of two lines. | |
| Type | point_right_of_line (CL_Vec2< Type > point) const |
| Return [<0, 0, >0] if the Point P is right, on or left of the line trough A,B. | |
| CL_Vec2< Type > | normal () const |
| Return the normal vector of the line from point A to point B. | |
Operations | |
| CL_LineSegment2x< Type > & | clip (const CL_Rectx< Type > &rect, bool &clipped) |
| Clip this line to a rectangle. | |
Operators | |
| CL_LineSegment2x< Type > & | operator= (const CL_LineSegment2x< Type > ©) |
| = operator. | |
| bool | operator== (const CL_LineSegment2x< Type > &line) const |
| == operator. | |
| bool | operator!= (const CL_LineSegment2x< Type > &line) const |
| != operator. | |
Public Attributes | |
| CL_Vec2< Type > | p |
| Start point on the line. | |
| CL_Vec2< Type > | q |
A line segment has a start point and an end point
These line templates are defined for: int (CL_LineSegment2i), float (CL_LineSegment2f), double (CL_LineSegment2d)
|
|||||||||
|
|
|
||||||||||
|
|
|
||||||||||||||||
|
|
|
||||||||||||||||
|
Clip this line to a rectangle. If clipping was not successful, this object is undefined
|
|
||||||||||
|
Return true if two line segments are collinear. (All points are on the same line.).
|
|
||||||||||||||||
|
Return the intersection point of two lines.
|
|
|||||||||
|
Get the midpoint of this line.
|
|
||||||||||||||||
|
Return true if two line segments intersect.
|
|
|||||||||
|
Return the normal vector of the line from point A to point B. When using CL_Vec2i, the vector is an 8 bit fraction (multiplied by 256)
|
|
||||||||||
|
!= operator.
|
|
||||||||||
|
= operator.
|
|
||||||||||
|
== operator.
|
|
||||||||||
|
Return the distance from a point to a line.
|
|
||||||||||
|
Return [<0, 0, >0] if the Point P is right, on or left of the line trough A,B.
|
|
|||||
|
Start point on the line.
|
|
|||||
|
|
1.4.6