OpenStudio:utilities
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Friends Pages
Public Member Functions | Public Attributes | Friends | List of all members
openstudio::Ray2d Class Reference

#include <RoofGeometry_Details.hpp>

Public Member Functions

boost::optional< Point3dcollide (LineLinear2d &line, double epsilon)
 
LineLinear2d getLinearForm ()
 
bool inCollinearRay (Point3d &p)
 
boost::optional< Point3dintersectRay2d (std::shared_ptr< Ray2d > other)
 
bool isOnLeftSide (Point3d &p, double epsilon)
 
bool isOnRightSide (Point3d &p, double epsilon)
 
bool operator== (const Ray2d &other) const
 
double perpDot (Vector3d &p1, Vector3d &p2)
 perp dot product between two vectors More...
 
 Ray2d ()
 
 Ray2d (Point3d &point, Vector3d &vector)
 

Public Attributes

Point3d point
 
Vector3d vector
 

Friends

std::ostream & operator<< (std::ostream &os, const Ray2d &r)
 

Constructor & Destructor Documentation

openstudio::Ray2d::Ray2d ( )
inline
openstudio::Ray2d::Ray2d ( Point3d point,
Vector3d vector 
)
inline

Member Function Documentation

boost::optional<Point3d> openstudio::Ray2d::collide ( LineLinear2d line,
double  epsilon 
)
inline
LineLinear2d openstudio::Ray2d::getLinearForm ( )
inline
bool openstudio::Ray2d::inCollinearRay ( Point3d p)
inline
boost::optional<Point3d> openstudio::Ray2d::intersectRay2d ( std::shared_ptr< Ray2d other)
inline
bool openstudio::Ray2d::isOnLeftSide ( Point3d p,
double  epsilon 
)
inline
bool openstudio::Ray2d::isOnRightSide ( Point3d p,
double  epsilon 
)
inline
bool openstudio::Ray2d::operator== ( const Ray2d other) const
inline
double openstudio::Ray2d::perpDot ( Vector3d p1,
Vector3d p2 
)
inline

perp dot product between two vectors

Friends And Related Function Documentation

std::ostream& operator<< ( std::ostream &  os,
const Ray2d r 
)
friend

Member Data Documentation

Point3d openstudio::Ray2d::point
Vector3d openstudio::Ray2d::vector