3D场景点到2D屏幕点 坐标转换
2011-04-19 10:13
274 查看
BOOL CScreenMouseTrack::GetScreenCoordinates(const Vector3& vWorldPos, Vector2& _point) { assert(mCamera); Vector3 hcsPosition = mCamera->getProjectionMatrix() * (mCamera->getViewMatrix() * vWorldPos); // if((hcsPosition.x < -1.0f) || (hcsPosition.x > 1.0f) || // (hcsPosition.y < -1.0f) || (hcsPosition.y > 1.0f)) // { // return FALSE; // } //////应该将-1-1之间变为0-1之间吧 _point.x = hcsPosition.x/2.0f + 0.5; _point.y = 0.5f - hcsPosition.y/2.0f;//y值方向相反 // x = m_nWidth / 2 + (m_nWidth * hcsPosition.x / 2); // y = m_nHeight / 2 - (m_nHeight * hcsPosition.y / 2); return TRUE; }
相关文章推荐
- 3D场景点到2D屏幕点 坐标转换
- 将三维地理坐标转换到二维屏幕坐标
- OpenLayers地图坐标转换屏幕坐标
- opengl屏幕坐标到三维坐标的转换
- 读取深度缓存中的深度值,并将其屏幕2D坐标转化为场景3D坐标
- 经纬度定义、经纬度格式、GDAL中地理坐标转换及地理坐标屏幕显示
- (十)WebGIS中地理坐标与屏幕坐标间的转换原理
- Cocos2d-android (06) 屏幕触摸事件及坐标转换
- windows 屏幕坐标 窗口坐标 客户区坐标 逻辑坐标 设备坐标之间的关系及转换
- 经纬度坐标转换为屏幕坐标
- 地图经纬度坐标与屏幕坐标的转换(android版)
- OGRE的2D坐标、CEGUI坐标、鼠标坐标、 世界坐标转屏幕坐标
- OpenGL通过读取Z Buffer深度值将屏幕2D坐标转化为场景3D坐标(含完整源码)
- 屏幕坐标与客户端坐标的转换
- 屏幕坐标到opengl世界坐标转换
- VTK屏幕坐标与世界坐标转换(Qt)
- TrackPopupMenu参数为屏幕坐标的转换
- opengl中将三维坐标转换到屏幕坐标
- 关于地图坐标到屏幕坐标的转换
- 地图坐标与屏幕坐标的转换&&控制地图显示范围的参数