sbcylinder(3)
NAME
SbCylinder
SYNOPSIS
#include <Inventor/SbLinear.h>
Detailed Description
The SbCylinder class is a representation of a cylinder.
This class is used within other classes in Coin. It contains data to
represent a cylinder by an axis and a radius. The cylinder has no
length/height value, which means it is treated as of infinite length.
- See also:
- SbLine, SbSphere
- Public Member Functions
- SbCylinder (void)
SbCylinder (const SbLine &a, const float r) void setValue (const SbLine &a, const float r) void setAxis (const SbLine &a)
void setRadius (const float r)
const SbLine & getAxis (void) const
float getRadius (void) const
SbBool intersect (const SbLine &l, SbVec3f &intersection) const SbBool intersect (const SbLine &l, SbVec3f &enter, SbVec3f &exit) const void print (FILE *file) const
Constructor & Destructor Documentation
- SbCylinder::SbCylinder (void)
- The default constructor will make a cylinder of radius 1, center axis
going through origo in the parallel direction of the positive y-axis. - References setValue().
- SbCylinder::SbCylinder (const SbLine & a, const float r)
- Construct and initialize an SbCylinder instance with the given axis a and radius r.
- References setValue().
Member Function Documentation
- void SbCylinder::setValue (const SbLine & a, const float r)
- Set the axis and radius of the cylinder.
- See also:
getAxis(), getRadius().
- References setAxis(), and setRadius().
- Referenced by SbCylinder().
- void SbCylinder::setAxis (const SbLine & a)
- Set the center axis of the cylinder.
- See also:
setRadius(), getAxis().
- References SbLine::getDirection(), SbVec3f::length(), and
SoDebugError::postWarning(). - Referenced by setValue().
- void SbCylinder::setRadius (const float r)
- Set the radius of the cylinder.
- See also:
setAxis(), getRadius().
- References SoDebugError::postWarning().
- Referenced by setValue().
- const SbLine & SbCylinder::getAxis (void) const
- Return the line which is the center axis of the cylinder.
- See also:
setAxis(), getRadius().
- Referenced by SbCylinderSheetProjector::getRotation(),
SbCylinderSectionProjector::getRotation(),
SbCylinderPlaneProjector::getRotation(),
SbCylinderProjector::isPointInFront(), print(),
SbCylinderSheetProjector::setupPlane(), and
SbCylinderSectionProjector::setupTolerance(). - float SbCylinder::getRadius (void) const
- Return radius of cylinder.
- See also:
setRadius(), getAxis().
- Referenced by SbCylinderPlaneProjector::getRotation(), print(), and
SbCylinderSectionProjector::setupTolerance(). - SbBool SbCylinder::intersect (const SbLine & l, SbVec3f & intersection)
- const
Finds the intersection point of the ray l on the cylinder where the ray enters, and return this point in intersection. - If the ray does not intersect the cylinder, FALSE is returned, otherwise we will return TRUE.
- Referenced by SbCylinderPlaneProjector::getRotation(),
SbCylinderProjector::intersectCylinderFront(), and
SbCylinderSectionProjector::project(). - SbBool SbCylinder::intersect (const SbLine & l, SbVec3f & enter, SbVec3f &
- exit) const
Find the intersection points of the ray l on the cylinder and return these in enter and exit. If the ray just 'grazes' the cylinder, the enter and exit points have equal values. - If the ray does not intersect the cylinder, FALSE is returned, otherwise we will return TRUE.
- References SbVec3f::cross(), SbVec3f::dot(), SbLine::getClosestPoint(),
SbLine::getDirection(), SbLine::getPosition(), SbVec3f::length(),
SbVec3f::normalize(), and SoDebugError::postWarning(). - void SbCylinder::print (FILE * fp) const
- Dump the state of this object to the file stream. Only works in debug version of library, method does nothing in an optimized compile.
- References getAxis(), getRadius(), and SbLine::print().
Author
- Generated automatically by Doxygen for Coin from the source code.