IMP Reference Guide
develop.549d75e6f4,2024/11/20
The Integrative Modeling Platform
|
Simple implementation of lines in 3D. More...
#include <IMP/algebra/Line3D.h>
Simple implementation of lines in 3D.
A line is defined by a direction and any point on the line. Internally, Plucker coordinates are used, where the line is defined by a direction and an orthogonal moment about the origin whose magnitude is the distance from the origin. See geometric primitives for more information.
Public Member Functions | |
Line3D (const Vector3D &direction, const Vector3D &point_on_line) | |
Line3D (const algebra::Segment3D &s) | |
Create line along segment. More... | |
const Vector3D & | get_direction () const |
Get the unit vector in the direction of the line. More... | |
Vector3D | get_moment () const |
Get the moment of the line about the origin. More... | |
Vector3D | get_moment (const Vector3D &v) const |
Get the moment of the line about a point. More... | |
Line3D | get_opposite () const |
Get the line in the opposite direction. More... | |
Vector3D | get_point_on_line () const |
Get the point on the line closest to the origin. More... | |
double | get_reciprocal_product (const Line3D &l) const |
Get reciprocal (or virtual) product, the moment of either line about the other. More... | |
algebra::Segment3D | get_segment_starting_at (const Vector3D &v, double d) const |
Get segment of a given length starting at a point. More... | |
void | show (std::ostream &out=std::cout) const |
Related Functions | |
(Note that these are not member functions.) | |
BoundingBoxD< 3 > | get_bounding_box (const Line3D &g) |
const Line3D & | get_line_3d_geometry (const Line3D &g) |
IMP::algebra::Line3D::Line3D | ( | const algebra::Segment3D & | s | ) |
Create line along segment.
const Vector3D& IMP::algebra::Line3D::get_direction | ( | ) | const |
Vector3D IMP::algebra::Line3D::get_moment | ( | ) | const |
Line3D IMP::algebra::Line3D::get_opposite | ( | ) | const |
Vector3D IMP::algebra::Line3D::get_point_on_line | ( | ) | const |
double IMP::algebra::Line3D::get_reciprocal_product | ( | const Line3D & | l | ) | const |
Get reciprocal (or virtual) product, the moment of either line about the other.
algebra::Segment3D IMP::algebra::Line3D::get_segment_starting_at | ( | const Vector3D & | v, |
double | d | ||
) | const |
Get segment of a given length starting at a point.
|
related |