V3FIT
|
A vertex. More...
#include <vertex.hpp>
Public Member Functions | |
vertex (const vector3d point_) | |
vertex constructor. More... | |
~vertex () | |
vertex destructor. More... | |
void | insert (vertex *v) |
Insert a new vertex. More... | |
Static Public Member Functions | |
static const vector3d | get_normal (const vertex &v1, const vertex &v2) |
Normal to a line. More... | |
static const vector3d | get_normal (const vertex &v1, const vertex &v2, const vertex &v3) |
Normal to a line. More... | |
static const double | a (const vertex &v1, const vertex &v2) |
a coefficient. More... | |
static const double | b (const vertex &v1, const vertex &v2) |
b coefficient. More... | |
static const double | c (const vertex &v1, const vertex &v2) |
c coefficient. More... | |
static const double | x_min (const vertex &v1, const vertex &v2, const vector3d &p) |
Minimum distance in the x direction. More... | |
static const double | y_min (const vertex &v1, const vertex &v2, const vector3d &p) |
Minimum distance in the y direction. More... | |
static const double | length (const vertex &v1, const vertex &v2, const vector3d &p) |
Distance to a limiter face. More... | |
static const double | length (const vertex &v, const vector3d &p) |
Distance to a vertex. More... | |
static const bool | in_range (const vertex &v1, const vertex &v2, const double x, const double y) |
Finds if the line to the point is in range. More... | |
static const double | direction (const vertex &v, const vector3d &n, const vector3d &p) |
Finds which side of the limiter face the point is on. More... | |
static void | distance (vertex *start, const vector3d &p, std::vector< double > &d) |
Find the distances to the limiter. More... | |
static void | print (vertex *start) |
Print out all vertices. More... | |
Private Attributes | |
const vector3d | point |
Vertex point. | |
vertex * | next |
Vertex next vertex. | |
vertex * | last |
Vertex last vertex. | |
A vertex.
Class representing a vertex. Verticies are doublely linked lists containing the current vector position.
Definition at line 21 of file vertex.hpp.
vertex::vertex | ( | const vector3d | point_ | ) |
vertex constructor.
Constructs a single vertex at a point.
[in] | point_ | Current point to the vertex. |
Definition at line 21 of file vertex.cpp.
vertex::~vertex | ( | ) |
vertex destructor.
Destructs the current vertext and calls the destructor on the next vertex if it exists.
Definition at line 32 of file vertex.cpp.
a coefficient.
Coefficient to find used to find the distance from a point to a line.
[in] | v1 | First vertex. |
[in] | v2 | Second vertex. |
Definition at line 92 of file vertex.cpp.
b coefficient.
Coefficient to find used to find the distance from a point to a line.
[in] | v1 | First vertex. |
[in] | v2 | Second vertex. |
Definition at line 105 of file vertex.cpp.
c coefficient.
Coefficient to find used to find the distance from a point to a line.
[in] | v1 | First vertex. |
[in] | v2 | Second vertex. |
Definition at line 118 of file vertex.cpp.
Finds which side of the limiter face the point is on.
A point is in range when the line normal to the limiter face that intersects the point is between the two verticies.
[in] | v | First vertex. |
[in] | n | Vector normal to the vertex. |
[in] | p | Point of interest. |
Definition at line 211 of file vertex.cpp.
Find the distances to the limiter.
Find the minimum distance to reach in range limiter face and joint between limiter faces.
[in] | start | Inital vertex. |
[in] | p | Point of interest. |
[out] | d | Minimum distances to the limiter face. |
Definition at line 225 of file vertex.cpp.
Normal to a line.
Gets the normal to a line defined by two verices.
[in] | v1 | First vertex. |
[in] | v2 | Second vertex. |
Definition at line 60 of file vertex.cpp.
|
static |
Normal to a line.
Normal to a line defined by the intersection of two lines. This is the average of the normals of the two lines.
[in] | v1 | First vertex. |
[in] | v2 | Second vertex. |
[in] | v3 | Third vertex. |
Definition at line 76 of file vertex.cpp.
|
static |
Finds if the line to the point is in range.
A point is in range when the line normal to the limiter face that intersects the point is between the two verticies.
[in] | v1 | First vertex. |
[in] | v2 | Second vertex. |
[in] | x | X position of the point. |
[in] | y | Y position of the point. |
Definition at line 196 of file vertex.cpp.
void vertex::insert | ( | vertex * | v | ) |
Insert a new vertex.
Inserts a new vertex between the current instance the next instance.
Definition at line 44 of file vertex.cpp.
Distance to a vertex.
The length of a line from a point to the vertex.
[in] | v | First vertex. |
[in] | p | Point of interest. |
Definition at line 180 of file vertex.cpp.
Distance to a limiter face.
The length of the line from a point to the limiter face.
[in] | v1 | First vertex. |
[in] | v2 | Second vertex. |
[in] | p | Point of interest. |
Definition at line 165 of file vertex.cpp.
|
static |
Print out all vertices.
Prints out information on each vertex.
[in] | start | Inital vertex. |
Definition at line 257 of file vertex.cpp.
Minimum distance in the x direction.
The minimum x along the line to the point.
[in] | v1 | First vertex. |
[in] | v2 | Second vertex. |
[in] | p | Point of interest. |
Definition at line 133 of file vertex.cpp.
Minimum distance in the y direction.
The minimum y along the line to the point.
[in] | v1 | First vertex. |
[in] | v2 | Second vertex. |
[in] | p | Point of interest. |
Definition at line 149 of file vertex.cpp.