1 #ifndef COIN_SBVIEWVOLUME_H 2 #define COIN_SBVIEWVOLUME_H 38 #include <Inventor/SbBasic.h> 39 #include <Inventor/SbVec3f.h> 40 #include <Inventor/SbDPViewVolume.h> 59 SbMatrix getCameraSpaceMatrix(
void)
const;
60 void projectPointToLine(
const SbVec2f& pt,
SbLine& line)
const;
61 void projectPointToLine(
const SbVec2f& pt,
64 SbPlane getPlane(
const float distFromEye)
const;
65 SbVec3f getSightPoint(
const float distFromEye)
const;
66 SbVec3f getPlanePoint(
const float distFromEye,
67 const SbVec2f& normPoint)
const;
68 SbRotation getAlignRotation(SbBool rightAngleOnly = FALSE)
const;
69 float getWorldToScreenScale(
const SbVec3f& worldCenter,
70 float normRadius)
const;
73 float right,
float top)
const;
75 void ortho(
float left,
float right,
76 float bottom,
float top,
77 float nearval,
float farval);
78 void perspective(
float fovy,
float aspect,
79 float nearval,
float farval);
80 void frustum(
float left,
float right,
81 float bottom,
float top,
82 float nearval,
float farval);
84 void translateCamera(
const SbVec3f& v);
87 void scale(
float factor);
88 void scaleWidth(
float ratio);
89 void scaleHeight(
float ratio);
90 ProjectionType getProjectionType(
void)
const;
91 const SbVec3f& getProjectionPoint(
void)
const;
92 const SbVec3f& getProjectionDirection(
void)
const;
93 float getNearDist(
void)
const;
94 float getWidth(
void)
const;
95 float getHeight(
void)
const;
96 float getDepth(
void)
const;
98 void print(FILE * fp)
const;
99 void getViewVolumePlanes(
SbPlane planes[6])
const;
100 void transform(
const SbMatrix &matrix);
103 SbBool intersect(
const SbVec3f & p)
const;
106 SbBool intersect(
const SbBox3f & box)
const;
109 SbBool outsideTest(
const SbPlane & p,
130 void getPlaneRectangle(
const float depth,
SbVec3f & lowerleft,
137 #endif // !COIN_SBVIEWVOLUME_H The SbVec2f class is a 2 dimensional vector with floating point coordinates.
Definition: SbVec2f.h:49
The SbBox3f class is an abstraction for an axis aligned 3 dimensional box.
Definition: SbBox3f.h:46
SbVec3f ulf
Definition: SbViewVolume.h:127
SbVec3f projPoint
Definition: SbViewVolume.h:121
SbVec3f llf
Definition: SbViewVolume.h:125
The SbRotation class represents a rotation in 3D space.
Definition: SbRotation.h:44
SbVec3f projDir
Definition: SbViewVolume.h:122
The SbVec3f class is a 3 dimensional vector with floating point coordinates.
Definition: SbVec3f.h:51
ProjectionType
Definition: SbViewVolume.h:52
The SbLine class represents a line in 3D space.
Definition: SbLine.h:41
The SbMatrix class is a 4x4 dimensional representation of a matrix.
Definition: SbMatrix.h:47
The SbDPViewVolume class is a double precision viewing volume in 3D space.
Definition: SbDPViewVolume.h:49
ProjectionType type
Definition: SbViewVolume.h:120
float nearDist
Definition: SbViewVolume.h:123
The SbViewVolume class is a viewing volume in 3D space.
Definition: SbViewVolume.h:50
The SbPlane class represents a plane in 3D space.
Definition: SbPlane.h:43
SbVec3f lrf
Definition: SbViewVolume.h:126
float nearToFar
Definition: SbViewVolume.h:124