Ogre摄像机Camera类

Camera类
       对摄象机的抽象。成员函数说明如下:

       标准构造函数

Camera(String name, SceneManager* sm);

标准析构函数

virtual ~Camera();

返回渲染该摄像机的scenemanager的指针

SceneManager* getSceneManager(void) const;

取得摄像机的名字

virtual const String& getName(void) const;

设定投影模式(正射或透视),缺省为透视

void setProjectionType(ProjectionType pt);

取得使用的投影模式的信息

ProjectionType getProjectionType(void) const;

设定该摄像机需要的渲染细节级别

void setDetailLevel(SceneDetailLevel sd);

取得该摄像机的渲染细节级别

SceneDetailLevel getDetailLevel(void) const;

设定摄像机的位置

void setPosition(Real x, Real y, Real z);

void setPosition(const Vector3& vec);

取得摄像机的位置

const Vector3& getPosition(void) const;

移动摄像机

void move(const Vector3& vec);

void moveRelative(const Vector3& vec);

设定摄像机的方向向量

void setDirection(Real x, Real y, Real z);

void setDirection(const Vector3& vec);

取得摄像机的方向

Vector3 getDirection(void) const;

这是一个辅助方法用来自动计算摄像机的方向向量,在当前位置和所看的点,参数targetPoint是一个向量指明所看的点。

void lookAt( const Vector3& targetPoint );

void lookAt(Real x, Real y, Real z);

将摄像机绕z轴逆时针旋转指定角度

void roll(Real degrees);

绕y轴逆时针旋转指定角度

void yaw(Real degrees);

绕x轴上下逆时针旋转

void pitch(Real degrees);

旋转任意角度

void rotate(const Vector3& axis, Real degrees);

使用四元组绕任意轴旋转

void rotate(const Quaternion& q);

指定摄像机是绕本地y轴还是指定的固定轴旋转

void setFixedYawAxis( bool useFixed, const Vector3& fixedAxis = Vector3::UNIT_Y );

设定y方向的视野域,水平方向的视野域将依此计算

void setFOVy(Real fovy);

取得y方向的视野域

Real getFOVy(void) const;

设定到近裁减面的距离

void setNearClipDistance(Real nearDist);

取得到近裁减面的距离

Real getNearClipDistance(void) const;

设定到远裁减面的距离

void setAspectRatio(Real ratio);

取得当前纵横比

Real getAspectRatio(void) const;

内部使用,取得该摄像机的投影矩阵

const Matrix4& getProjectionMatrix(void);

内部使用,取得该摄像机的观察矩阵

const Matrix4& getViewMatrix(void);

取得平截台体的特定面

const Plane& getFrustumPlane( FrustumPlane plane );

测试给定的包容器是否在平截台体中

bool isVisible(const AxisAlignedBox& bound, FrustumPlane* culledBy = 0);

bool isVisible(const Sphere& bound, FrustumPlane* culledBy = 0);

测试给定的顶点是否在平截台体中

bool isVisible(const Vector3& vert, FrustumPlane* culledBy = 0);

返回摄像机的当前方向

const Quaternion& getOrientation(void) const;

设定摄像机的方向

void setOrientation(const Quaternion& q);

输出流功能

friend std::ostream& operator<<(std::ostream& o, Camera& c);

取得摄像机继承的方向,包括从附着节点继承的任何旋转

Quaternion getDerivedOrientation(void);

取得继承的位置,包括从附着节点继承的任何平移

Vector3 getDerivedPosition(void);

取得继承的方向向量

Vector3 getDerivedDirection(void);

覆盖MovableObject的方法

void _notifyCurrentCamera(Camera* cam);

const AxisAlignedBox& getBoundingBox(void) const;

void _updateRenderQueue(RenderQueue* queue);

const String getMovableType(void) const;

 

 

使能/使不能自动跟踪scenenode

void setAutoTracking(bool enabled, SceneNode* target = 0,

            const Vector3& offset = Vector3::ZERO);

 

本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/w1635610/archive/2010/04/02/5446058.aspx

你可能感兴趣的:(String,vector,测试,Matrix,2010,CAM)