![]()  | 
  
    RobWorkProject
    23.9.11-
    
   | 
 
A ray - an infinitely extending half-line described by a starting position and a direction. More...
#include <Ray.hpp>
Inherits Line.
Public Member Functions | |
| Ray (rw::math::Vector3D< double > &pos, rw::math::Vector3D< double > &dir) | |
| constructor  More... | |
| virtual | ~Ray () | 
| Destructor.  | |
| rw::math::Vector3D< double > & | pos () | 
| Get the position from which the ray starts.  | |
| const rw::math::Vector3D< double > & | pos () const | 
| Get the position from which the ray starts.  | |
| rw::math::Vector3D< double > & | dir () | 
| Get the direction in which the ray shoots.  | |
| const rw::math::Vector3D< double > & | dir () const | 
| Get the direction in which the ray shoots.  | |
| TriMesh::Ptr | createMesh (int resolution) const | 
| make a trimesh from this primitive. Use granularity to specify minimum number of line segments a half circle is split into  More... | |
| rw::math::Q | getParameters () const | 
| get the parameters that define this primitive  More... | |
| GeometryType | getType () const | 
| the type of this primitive  More... | |
  Public Member Functions inherited from Line | |
| Line () | |
| Constructor.  More... | |
| Line (const rw::math::Q ¶ms) | |
| Constructor.  More... | |
| Line (const rw::math::Vector3D< double > &p1, const rw::math::Vector3D< double > &p2) | |
| Constructor.  More... | |
| virtual | ~Line () | 
| destructor  | |
| rw::math::Vector3D< double > & | p1 () | 
| Get point 1.  | |
| const rw::math::Vector3D< double > & | p1 () const | 
| Get point 1.  | |
| rw::math::Vector3D< double > & | p2 () | 
| Get point 2.  | |
| const rw::math::Vector3D< double > & | p2 () const | 
| Get point 2.  | |
| rw::math::Vector3D< double > | dir () const | 
| Get a direction vector u = normalize(p2 - p1).  | |
| double | distance (const rw::math::Vector3D< double > &point) const | 
| Calculates the shortest distance from a point to the line.  More... | |
| double | distance (const Line &line) const | 
| Calculates the shortest distance to another line.  More... | |
| rw::math::Vector3D< double > | closestPoint (const rw::math::Vector3D< double > &point) const | 
| Finds a point on the line closest to specified point.  More... | |
| double | refit (const std::vector< rw::math::Vector3D< double >> &data) | 
| Fit this line to a set of points.  More... | |
| double | refit (const std::vector< rw::math::Vector3D< double >>::const_iterator begin, const std::vector< rw::math::Vector3D< double >>::const_iterator end) | 
| virtual void | setParameters (const rw::math::Q &q) | 
| set the parameters that define this primitive  More... | |
  Public Member Functions inherited from Primitive | |
| virtual | ~Primitive () | 
| destructor  | |
| TriMesh::Ptr | getTriMesh (bool forceCopy=true) | 
| gets a trimesh representation of this geometry data.  More... | |
| virtual bool | isConvex () | 
| test if this geometry data is convex  More... | |
| bool | isInside (const rw::math::Vector3D< double > &point) | 
| test if a point is on the border or inside this primitive  | |
  Public Member Functions inherited from GeometryData | |
| virtual | ~GeometryData () | 
| Destructor.  | |
Friends | |
| std::ostream & | operator<< (std::ostream &out, const Ray &ray) | 
| Streaming operator.  | |
Additional Inherited Members | |
  Public Types inherited from Line | |
| typedef rw::core::Ptr< Line > | Ptr | 
| Smart pointer to Line.  | |
| typedef double | value_type | 
| Type of internal values.  | |
  Public Types inherited from Primitive | |
| typedef rw::core::Ptr< Primitive > | Ptr | 
| Smart pointer to this type of class.  | |
  Public Types inherited from GeometryData | |
| enum | GeometryType {  PointCloud , LineMesh , PlainTriMesh , IdxTriMesh , SpherePrim , BoxPrim , OBBPrim , AABBPrim , LinePrim , PointPrim , PyramidPrim , ConePrim , TrianglePrim , CylinderPrim , TubePrim , PlanePrim , RayPrim , Implicit , Quadratic , UserType }  | 
| geometry data types  | |
| typedef rw::core::Ptr< GeometryData > | Ptr | 
| smart pointer type to this class  | |
| typedef rw::core::Ptr< const GeometryData > | CPtr | 
| const smart pointer type to this class  | |
  Static Public Member Functions inherited from Line | |
| static std::vector< Line > | makeGrid (int dim_x, int dim_y, double size_x=1.0, double size_y=1.0, const rw::math::Vector3D< double > &xdir=rw::math::Vector3D< double >::x(), const rw::math::Vector3D< double > &ydir=rw::math::Vector3D< double >::y()) | 
| Create set of lines making a grid.  | |
| static rw::math::Metric< Line >::Ptr | makeMetric (double angToDistWeight=1.0) | 
| create a metric that can be used to compare the difference between two lines. The distance between two lines is computed as follows:  More... | |
  Static Public Member Functions inherited from GeometryData | |
| static std::string | toString (GeometryType type) | 
| format GeometryType to string  More... | |
  Protected Member Functions inherited from Primitive | |
| virtual bool | doIsInside (const rw::math::Vector3D< double > &point) | 
| Check if point lies inside geometry.  More... | |
| Primitive (int levels=20) | |
| Constructor.  More... | |
A ray - an infinitely extending half-line described by a starting position and a direction.
      
  | 
  inline | 
constructor
| pos | [in] position from which the ray starts | 
| dir | [in] direction in which the ray shoots | 
      
  | 
  inlinevirtual | 
make a trimesh from this primitive. Use granularity to specify minimum number of line segments a half circle is split into
| resolution | [in] | 
Reimplemented from Line.
      
  | 
  inlinevirtual | 
get the parameters that define this primitive
Reimplemented from Line.
      
  | 
  inlinevirtual | 
the type of this primitive
Reimplemented from Line.