LibreOffice Module tools (master) 1
|
Transformation sets for 3D output. More...
#include <b3dtrans.hxx>
Static Public Member Functions | |
static void | Frustum (basegfx::B3DHomMatrix &rTarget, double fLeft=-1.0, double fRight=1.0, double fBottom=-1.0, double fTop=1.0, double fNear=0.001, double fFar=1.0) |
static void | Ortho (basegfx::B3DHomMatrix &rTarget, double fLeft=-1.0, double fRight=1.0, double fBottom=-1.0, double fTop=1.0, double fNear=0.0, double fFar=1.0) |
static void | Orientation (basegfx::B3DHomMatrix &rTarget, const basegfx::B3DPoint &aVRP=basegfx::B3DPoint(0.0, 0.0, 1.0), basegfx::B3DVector aVPN=basegfx::B3DVector(0.0, 0.0, 1.0), basegfx::B3DVector aVUP=basegfx::B3DVector(0.0, 1.0, 0.0)) |
Protected Member Functions | |
void | PostSetObjectTrans () |
Object transformation. More... | |
void | PostSetOrientation () |
void | PostSetProjection () |
virtual void | DeviceRectangleChange () |
Transformation sets for 3D output.
Definition at line 33 of file b3dtrans.hxx.
B3dTransformationSet::B3dTransformationSet | ( | ) |
Definition at line 32 of file b3dtrans.cxx.
References Reset().
|
virtual |
Definition at line 37 of file b3dtrans.cxx.
|
default |
|
default |
void B3dTransformationSet::CalcViewport | ( | ) |
Transformations for viewport.
Definition at line 208 of file b3dtrans.cxx.
References Frustum(), tools::Rectangle::GetHeight(), GetRatio(), tools::Rectangle::GetWidth(), gfFarBound, gfNearBound, tools::Rectangle::Left(), maScale, maSetBound, maTranslate, maViewportRectangle, mbPerspective, mbProjectionValid, mfBottomBound, mfLeftBound, mfRatio, mfRightBound, mfTopBound, Ortho(), SetProjection(), basegfx::Tuple3D< typename TYPE >::setX(), basegfx::Tuple3D< typename TYPE >::setY(), basegfx::Tuple3D< typename TYPE >::setZ(), tools::Rectangle::Top(), and ZBUFFER_DEPTH_RANGE.
Referenced by GetProjection(), and Reset().
|
protectedvirtual |
Reimplemented in B3dCamera.
Definition at line 311 of file b3dtrans.cxx.
Referenced by B3dCamera::DeviceRectangleChange(), and SetDeviceRectangle().
basegfx::B3DPoint B3dTransformationSet::EyeToWorldCoor | ( | const basegfx::B3DPoint & | rVec | ) |
Definition at line 344 of file b3dtrans.cxx.
References maInvOrientation.
Referenced by B3dCamera::CalcNewViewportValues().
|
static |
Definition at line 65 of file b3dtrans.cxx.
References rTarget, and basegfx::B3DHomMatrix::set().
Referenced by CalcViewport().
|
inline |
Definition at line 114 of file b3dtrans.hxx.
Referenced by B3dCamera::CalcFocalLength().
const basegfx::B3DHomMatrix & B3dTransformationSet::GetProjection | ( | ) |
Definition at line 193 of file b3dtrans.cxx.
References CalcViewport(), maProjection, and mbProjectionValid.
Referenced by PostSetProjection().
|
inline |
Definition at line 108 of file b3dtrans.hxx.
Referenced by CalcViewport().
|
default |
References Reset, and SetOrientation.
|
default |
|
static |
Definition at line 41 of file b3dtrans.cxx.
References basegfx::B3DVector::getPerpendicular(), basegfx::Tuple3D< typename TYPE >::getX(), basegfx::Tuple3D< typename TYPE >::getY(), basegfx::Tuple3D< typename TYPE >::getZ(), basegfx::B3DVector::normalize(), rTarget, and basegfx::B3DHomMatrix::set().
Referenced by Reset(), and SetOrientation().
|
static |
Definition at line 103 of file b3dtrans.cxx.
References rTarget, and basegfx::B3DHomMatrix::set().
Referenced by CalcViewport().
|
protected |
Object transformation.
Definition at line 164 of file b3dtrans.cxx.
References basegfx::B3DHomMatrix::invert(), maInvObjectTrans, and maObjectTrans.
Referenced by Reset().
|
protected |
Definition at line 179 of file b3dtrans.cxx.
References basegfx::B3DHomMatrix::invert(), maInvOrientation, and maOrientation.
Referenced by Reset(), and SetOrientation().
|
protected |
Definition at line 200 of file b3dtrans.cxx.
References GetProjection(), basegfx::B3DHomMatrix::invert(), and maInvProjection.
Referenced by SetProjection().
void B3dTransformationSet::Reset | ( | void | ) |
reset values
Definition at line 137 of file b3dtrans.cxx.
References CalcViewport(), basegfx::B2DHomMatrix::identity(), basegfx::B3DHomMatrix::identity(), maObjectTrans, maOrientation, maTexture, maViewportRectangle, maVisibleRectangle, mbPerspective, mbProjectionValid, mfBottomBound, mfLeftBound, mfRatio, mfRightBound, mfTopBound, Orientation(), PostSetObjectTrans(), and PostSetOrientation().
Referenced by B3dTransformationSet().
void B3dTransformationSet::SetDeviceRectangle | ( | double | fL = -1.0 , |
double | fR = 1.0 , |
||
double | fB = -1.0 , |
||
double | fT = 1.0 |
||
) |
Definition at line 295 of file b3dtrans.cxx.
References DeviceRectangleChange(), mbProjectionValid, mfBottomBound, mfLeftBound, mfRightBound, and mfTopBound.
void B3dTransformationSet::SetOrientation | ( | const basegfx::B3DPoint & | rVRP = basegfx::B3DPoint(0.0,0.0,1.0) , |
const basegfx::B3DVector & | rVPN = basegfx::B3DVector(0.0,0.0,1.0) , |
||
const basegfx::B3DVector & | rVUP = basegfx::B3DVector(0.0,1.0,0.0) |
||
) |
Set the orientation.
vVRP | the View Reference Point (VRP) |
vVPN | the View Plane Normal (VPN) |
vVUP | the View Up Plane (VUP) |
Definition at line 171 of file b3dtrans.cxx.
References basegfx::B3DHomMatrix::identity(), maOrientation, Orientation(), and PostSetOrientation().
Referenced by B3dViewport::CalcOrientation().
void B3dTransformationSet::SetPerspective | ( | bool | bNew | ) |
Definition at line 315 of file b3dtrans.cxx.
References mbPerspective, and mbProjectionValid.
void B3dTransformationSet::SetProjection | ( | const basegfx::B3DHomMatrix & | mProject | ) |
Projections for transformations.
Definition at line 187 of file b3dtrans.cxx.
References maProjection, and PostSetProjection().
Referenced by CalcViewport().
void B3dTransformationSet::SetRatio | ( | double | fNew | ) |
Definition at line 286 of file b3dtrans.cxx.
References mbProjectionValid, and mfRatio.
|
inline |
Definition at line 119 of file b3dtrans.hxx.
References SetViewportRectangle().
Referenced by SetViewportRectangle().
void B3dTransformationSet::SetViewportRectangle | ( | tools::Rectangle const & | rRect, |
tools::Rectangle const & | rVisible | ||
) |
Definition at line 324 of file b3dtrans.cxx.
References maViewportRectangle, maVisibleRectangle, and mbProjectionValid.
basegfx::B3DPoint B3dTransformationSet::WorldToEyeCoor | ( | const basegfx::B3DPoint & | rVec | ) |
Definition at line 337 of file b3dtrans.cxx.
References maOrientation.
Referenced by B3dCamera::CalcFocalLength().
|
private |
Definition at line 38 of file b3dtrans.hxx.
Referenced by PostSetObjectTrans().
|
private |
Definition at line 42 of file b3dtrans.hxx.
Referenced by EyeToWorldCoor(), and PostSetOrientation().
|
private |
Definition at line 46 of file b3dtrans.hxx.
Referenced by PostSetProjection().
|
private |
Definition at line 37 of file b3dtrans.hxx.
Referenced by PostSetObjectTrans(), and Reset().
|
private |
Definition at line 41 of file b3dtrans.hxx.
Referenced by PostSetOrientation(), Reset(), SetOrientation(), and WorldToEyeCoor().
|
private |
Definition at line 45 of file b3dtrans.hxx.
Referenced by GetProjection(), and SetProjection().
|
private |
Definition at line 52 of file b3dtrans.hxx.
Referenced by CalcViewport().
|
private |
Definition at line 73 of file b3dtrans.hxx.
Referenced by CalcViewport().
|
private |
Definition at line 49 of file b3dtrans.hxx.
Referenced by Reset().
|
private |
Definition at line 53 of file b3dtrans.hxx.
Referenced by CalcViewport().
|
private |
Definition at line 67 of file b3dtrans.hxx.
Referenced by CalcViewport(), Reset(), and SetViewportRectangle().
|
private |
Definition at line 69 of file b3dtrans.hxx.
Referenced by Reset(), and SetViewportRectangle().
|
private |
Definition at line 76 of file b3dtrans.hxx.
Referenced by CalcViewport(), Reset(), and SetPerspective().
|
private |
Definition at line 77 of file b3dtrans.hxx.
Referenced by CalcViewport(), GetProjection(), Reset(), SetDeviceRectangle(), SetPerspective(), SetRatio(), and SetViewportRectangle().
|
private |
Definition at line 58 of file b3dtrans.hxx.
Referenced by CalcViewport(), Reset(), and SetDeviceRectangle().
|
private |
Definition at line 56 of file b3dtrans.hxx.
Referenced by CalcViewport(), Reset(), and SetDeviceRectangle().
|
private |
Definition at line 64 of file b3dtrans.hxx.
Referenced by CalcViewport(), Reset(), and SetRatio().
|
private |
Definition at line 57 of file b3dtrans.hxx.
Referenced by CalcViewport(), Reset(), and SetDeviceRectangle().
|
private |
Definition at line 59 of file b3dtrans.hxx.
Referenced by CalcViewport(), Reset(), and SetDeviceRectangle().