Choreonoid  1.8
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
cnoid::SceneCylinderProjector Class Reference

#include <SceneProjector.h>

Inheritance diagram for cnoid::SceneCylinderProjector:
cnoid::SceneProjector

Public Member Functions

EIGEN_MAKE_ALIGNED_OPERATOR_NEW SceneCylinderProjector ()
 
 SceneCylinderProjector (const Vector3 &center, double radius, double height, const Quaternion &rotation)
 
void setCylinder (const Vector3 &center, double radius, double height, const Quaternion &rotation)
 
bool initializeProjection (const SceneWidgetEvent *event)
 
virtual bool project (const SceneWidgetEvent *event, Vector3 &out_projected) const
 
- Public Member Functions inherited from cnoid::SceneProjector
virtual ~SceneProjector ()
 

Protected Member Functions

bool project (const SceneWidgetEvent *event, Vector3 &out_isecFront, Vector3 &out_isecBack) const
 
bool calcUnitCylinderLineIntersection (const Vector3 &lineStart, const Vector3 &lineEnd, Vector3 &out_isectFront, Vector3 &out_isectBack) const
 
bool calcCylinderLineIntersection (const Vector3d &lineStart, const Vector3 &lineEnd, Vector3 &out_isectFront, Vector3 &out_isectBack) const
 

Protected Attributes

Vector3 center_
 
double radius_
 
double height_
 
Quaternion rotation_
 
bool isFrontSurfaceProjection
 

Constructor & Destructor Documentation

◆ SceneCylinderProjector() [1/2]

SceneCylinderProjector::SceneCylinderProjector ( )

◆ SceneCylinderProjector() [2/2]

SceneCylinderProjector::SceneCylinderProjector ( const Vector3 center,
double  radius,
double  height,
const Quaternion rotation 
)

Member Function Documentation

◆ calcCylinderLineIntersection()

bool SceneCylinderProjector::calcCylinderLineIntersection ( const Vector3d &  lineStart,
const Vector3 lineEnd,
Vector3 out_isectFront,
Vector3 out_isectBack 
) const
protected

◆ calcUnitCylinderLineIntersection()

bool SceneCylinderProjector::calcUnitCylinderLineIntersection ( const Vector3 lineStart,
const Vector3 lineEnd,
Vector3 out_isectFront,
Vector3 out_isectBack 
) const
protected

◆ initializeProjection()

bool SceneCylinderProjector::initializeProjection ( const SceneWidgetEvent event)

This function must be called for the initial event to start the projection to determine whether the surface the user is dragging is the front or back of the cylinder.

◆ project() [1/2]

bool SceneCylinderProjector::project ( const SceneWidgetEvent event,
Vector3 out_isecFront,
Vector3 out_isecBack 
) const
protected

◆ project() [2/2]

bool SceneCylinderProjector::project ( const SceneWidgetEvent event,
Vector3 out_projected 
) const
virtual

Implements cnoid::SceneProjector.

◆ setCylinder()

void SceneCylinderProjector::setCylinder ( const Vector3 center,
double  radius,
double  height,
const Quaternion rotation 
)

Member Data Documentation

◆ center_

Vector3 cnoid::SceneCylinderProjector::center_
protected

◆ height_

double cnoid::SceneCylinderProjector::height_
protected

◆ isFrontSurfaceProjection

bool cnoid::SceneCylinderProjector::isFrontSurfaceProjection
protected

◆ radius_

double cnoid::SceneCylinderProjector::radius_
protected

◆ rotation_

Quaternion cnoid::SceneCylinderProjector::rotation_
protected

The documentation for this class was generated from the following files: