Camera类
来源:互联网 发布:vscode golang 配置 编辑:程序博客网 时间:2024/06/07 22:52
为视口添加Camera的类,用于显示。类的继承关系如下图
void setView(View *view)
说明:为camera设置依附的view
View *getView()
const View *getView() const
说明:得到该camera的view
void setStates(osg::State *states)
说明:为该camera设置states
osg::States *getStates()
const osg::States *getSates() const
void setAllowEventFocus(bool focus)
说明:设置可以得到事件焦点,就是可以接受外界消息。对于从视口,这个是不需要的
bool getAllowEventFocus() const
void setDisplaySettings(osg::DispalySetting *ds)
说明:设置displaySettings,控制在渲染时的一些信息
参数 ds 自定义的DisplaySetting类
osg::DisplaySetting *getDisplaySettings() const
说明:得到Displaysetting
void setClearColor(const Vec4 &color)
说明:设置清除缓存区背景的颜色RGBA格式
const Vec4 &getClearColor() const
说明:得到清除缓存区颜色设置
void setClearMask(GLbitfield mask)
说明 :设置使用清除标志
参数:清除标志,可以为以下值:GL_COLOR_BUFFER_BIT或者GL_DEPTH_BUFFER_BIT
Glbitfield getClearMask() const
说明:得到所设置的清除标志
void setColorMask(osg::ColorMask *colorMask)
说明:设置屏蔽颜色
参数:colorMask 屏蔽色值
void setColorMask(bool red , bool green , bool blue , bool alpha)
说明:设置屏蔽颜色
const ColorMask *getColorMask() const
ColorMask *getColorMask()
说明:得到所设置屏蔽的颜色
void setViewport(osg::Viewport *viewport)
void setViewport(int x , int y , int width , int height)
说明:设置视口的尺寸和位置
参数:viewport 归设置的视口类
void setTransformOrder(TransformOrder order)
说明:设置当局部向世界以及世界向局部转化时的矩阵相乘顺序
参数order 相乘顺序,可以为以下值:PRE_MULTIPLY、POST_MULTIPLY
TransformOrder getTransformOrder() const
void setProjectionResizePolicy(ProjectionResizePolicy policy)
说明:设置模型如何调整以适应视口
参数:ProjectionResizePolicy 调整策略,可以是以下值FIXED\HORIZONTAL\VERTICAL
ProjectionResizePolicy getProjectionResizePolicy() const
说明:得到调整策略,即模型如何调整以适应视口
void setProjectionMatrix(const osg::Matrixf &matrix)
说明:直接设置投影矩阵
void setProjectionMatrixAsOrtho(double left , double right , double bottom , double top , double zNear , double zFar)
说明:以正交投影的方式设置投影矩阵
void setProjectionMatrixAsOrtho2D(double left , double right , double bottom , double top)
说明:以正交投影的方式设置投影矩阵
void setProjectionMatrixAsFrustum(double left , double right , double bottom , double top , double zNear , double zFar)
说明:以平头截体的方式设置投影矩阵
void setProjectionMatrixAsPerspective(double fovy , double aspectRatio , double zNear , double zFar)
说明:以透视投影的方式设置投影矩阵
bool getProjectionMatrixAsPerspective(double fovy , double aspectRatio , double zNear , double zFar)
说明:以透视投影的方式得到投影矩阵,得到成功返回真
osg::Matrixd &getProjectionMatrix()
说明:得到投影矩阵
bool getProjectionMatrixAsOrtho(double &left , double &right , double bottom , double &top , double &zNear , double &zFar)
说明:以正交投影的方式得到投影矩阵,得到成功返回真
bool getProjectionMatrixAsFrustum(double &left , double &right , double bottom , double &top , double &zNear , double &zFar)
说明:以平头截体的方式得到投影矩阵
void setViewMatrix(const osg::Matrixd &matrix)
说明:设置观察矩阵
osg::Matrixd &getvViewMatrix()
说明:得到观察矩阵
void setViewMatrixAsLookAt(const osg::Vec3 &eye , const osg::Vec3 ¢er , const osg::Vec3 &up)
说明:使用lookat的观察方式设置观察矩阵
osg::Matrixd &getViewMatrixAsLookAt(const osg::Vec3 &eye , const osg::Vec3 ¢er , const osg::Vec3 &up , float lookDistance = 1.0f)
说明:使用lookat的观察方式得到观察矩阵
Matrixd getInverseViewMatrix() const
说明:得到观察矩阵的逆矩阵
void setRenderOrder(RenderOrder order , int orderNum = 0)
说明:设置渲染顺序,最后渲染会是顶层窗口
参数:order 渲染顺序,可以为PRE_RENDER,NESTED_RENDER,POST_RENDER
oderNum 如果级别相同,具体指出渲染次序
RenderOrder getRenderOrder() const
说明:得到设置的渲染顺序,最后渲染会是顶层窗口
int getRenderOrderNum() const
说明:得到渲染次序数目
bool isRenderToTextureCamera() const
说明:是否渲染至纹理相机,如果渲染了则返回真
void setRenderTargetImplementation(RenderTargetImplementation impl)
说明:设置渲染实现方式
参数:impl 渲染目标实现方式,可以为一下值:FRAME_BUFFER_OBJECT,PIXEL_BUFFER_RTT,PIXEL_BUFFER,FRAME_BUFFER,SEPERATE_WINDWO
void setDrawBuffer(Glenum buffer)
说明:设置DrawBuffer
void setReadBuffer(Glenum buffer)
说明:设置ReadBuffer
void osg::Camera::attach(BufferComponent buffer , GLenum internalFormat)
说明:设置一些Buffer到特殊的用途,可输出Buffer到纹理
void createCameraThread()
说明:创建Camera线程
void setCameraThread(OperationThread *gt)
说明:设置Camera线程
参数:gt 设置已有的Camera线程
OperationThread *getCameraThread()
说明:得到设置好的Camera线程
void setGraphicsContext(GraphicsContex *contex)
说明:设置上下文
参数:contex 传入需要设置的上下文
void setRenderer(osg::GraphicsOperation *rc)
说明:设置GraphicsOperation 可接受一个类的操作
参数:rc 传入设置的图形操作
void setRenderingCache(osg::Object *rc)
说明:设置渲染时的Cache,会在渲染子类图时使用
参数:rc 设置渲染时的Cache承接类
void setPreDrawCallback(DrawCallback *cb)
说明:设置Draw前的Callback
void setPostDrawCallback(DrawCallback *cb)
说明:设置Draw后的Callback
OpenThreads::Mutex *getDataChangeMutex() const
说明:得到数据改变的Mutex
- camera类
- Camera类
- Ogre摄像机Camera类
- 灵活Camera类
- Ogre摄像机Camera类
- Ogre摄像机Camera类
- UNITY 5.2 Camera类
- unity Camera帮助类
- android Camera操作类
- camera
- Camera
- camera
- Camera
- Camera
- camera
- camera
- Camera
- camera
- 20170116百转千回:配置Python和Spyder的种种问题
- Android Things:树莓派3上手就是这么简单
- Shader自学笔记 3.1.1 采样纹理加入到光照模型中
- 关于linux中eth0的问题
- Mac平台打造github上hexo博客全过程
- Camera类
- poj1031-Fence-acm解题报告
- CSS实现边框布局(百度前端笔试)
- DecorView、PhoneWindow、ViewRootlmpl的关系
- BIO与NIO、AIO
- vulnhub(De-ICE S1.100, S1.110)
- 【 Spring Boot 实践 】FEMON监控平台项目
- UVa227 Puzzle
- 文件复制