浏览问题
等待回复
精选文章
申请试用
资源中心
漏洞修复
注册
|
登录
SuperMap技术问答社区
我要
提问
智能客服
首页
/
浏览问题
/
组件GIS
/
问题详情
如何用组件开发实现三维场景第一人称
petergis
66EXP
2017年05月03日
超图桌面三维分析中有一个动态可视域功能,里面有按第一人称选项,请问如何用组件开发实现三维场景第一人称模式?
三维
请
登录
或者
注册
后回答这个问题。
1个回答
您好,可视域对象自带观察相机,所以您只需实时更新场景的Camera让后者始终与前者处于相同位置相同视角即可。
张阳名
5,560EXP
2017年05月03日
谢谢,可视域对象自带观察相机如何获取,我没有在Viewshed3D类找到这个属性.
我用Viewshed3D.ViewerPosition来构造相机,并实时更新Scene.FirstPersonCamera,可以达到第一人称视角效果.但是又不知道如何获取俯角值,只好先设置为90度.你有没有什么办法可以实时获取俯角值.
代码如下:(其中point3d为Viewshed3D.ViewerPosition)
if (true == isFirstPersonView)
{
var camera = new Camera
{
Longitude = point3d.X,
Latitude = point3d.Y,
Altitude = point3d.Z,
AltitudeMode = AltitudeMode.Absolute,
Tilt = 90
};
if (m_viewshed3D.Direction < 0)
camera.Heading = m_viewshed3D.Direction + 360;
else
camera.Heading = m_viewshed3D.Direction;
m_sceneControl.Scene.FirstPersonCamera = camera;
}
camera.Tilt = 90+m_viewshed3D.Pitch;
嘛,其实我说的“可视域对象自带观察相机”就是“可视域的观察点”。
很好,非常感谢.
你好 想问你这个问题解决了么 如何解决的~
请
登录
或者
注册
后再添加评论。
智能推荐
相关问题
相关文章
推荐教程
需要我实现一个三维操场场景下,第三人称的视角,跟踪多个运动中的设备
组件开发三维场景如何实现缩放至某要素
倾斜三维与VR,BIM用超图组件开发能实现吗?
组件开发如何实现场景中点的闪烁?
组件开发实现打开工作空间的时候自动打开地图、场景,如何实现?
通过.net组件开发可以实现三维缓存数据的编辑吗
通过.net组件开发可以实现三维缓存数据的编辑吗
超图FAQ:请问,新发布的三维场景数据在iserver上预览,提示资源名称找不到,这个是什么原因导致的,需要如何处理,工作空间可以用桌面打开,这些数据都可正常查看?
热门文章
查看更多>
关注我们
超图软件官网
SuperMap Online
地图慧
帮助中心
备案信息
技术资源中心
...