Osgearth2.10之添加三维模型

7 篇文章 1 订阅
7 篇文章 1 订阅

过ModelNode添加三维模型到地图,代码实现如下:

m_AnnoGroup = new osg::Group();

m_MapNode->addChild(m_AnnoGroup);

osg::ref_ptr<osg::Node> pPlaneNode= osgDB::readNodeFile(m_PlanePath);//m_PlanePath是三维模型路径

if(pPlaneNode.valid())
{

        osgEarth::Symbology::Style style;
        style.getOrCreate<osgEarth::Symbology::ModelSymbol>()->setModel(pPlaneNode);
        m_PlaneNode = new osgEarth::Annotation::ModelNode(m_MapNode,style):
        m_PlaneNode->setDynamic(true);
        m_AnnoGroup->addChild(m_PlaneNode);

}

m_PlaneNode->setScale();//设置模型的尺度(可放大或缩小)

m_PlaneNode->setPosition()设置模型在地图中的位置

m_PlaneNode->setLocalRotation设置模型自身的姿态


补充:osgearth2.10版本中osgEarth::Annotation::ModelNode类注释

Constructs a model node; the style must contain an InstanceSymbol (ModelSymbol or IconSymbol) to produce a valid node.

通过读源代码发现只能设置ModelSymbol,不支持IconSymbol。

  • 0
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
osgEarth 2.10chm是一个功能强大的开源地理信息系统(GIS)工具包,它基于OpenSceneGraph进行开发。osgEarth允许用户创建与地球相关的三维应用程序,并提供了一系列功能来呈现、分析和操控地理空间数据。 osgEarth 2.10chm提供了许多新功能和改进,使其更强大和易用。首先,它加强了与3D模型和地形数据集成的功能。用户可以将自己的3D模型与卫星图像或其他地理信息数据集相结合,从而创建出更真实的场景。此外,osgEarth还提供了对高分辨率地形数据的支持,使得在创建山脉、河流、湖泊等自然地形时更加精确和细节化。 osgEarth 2.10chm还引入了新的卫星图像提供商,并增加了对多种地理坐标系统的支持。这意味着用户可以更轻松地获取不同地区的卫星图像数据,并将其集成到自己的应用程序中。此外,支持多种地理坐标系统使得通过osgEarth处理不同地理数据集更加灵活。 此外,osgEarth 2.10chm还提供了更好的渲染性能和内存管理能力,以提高用户的应用程序性能。用户可以根据自己的需求和硬件配置进行优化设置,从而更有效地利用系统资源。 总之,osgEarth 2.10chm是一个功能强大、易用的GIS工具包,通过提供新功能和改进现有功能,使用户在创建地球相关的三维应用程序时具有更大的灵活性和准确性。无论是用于教育、科研还是商业用途,osgEarth 2.10chm都是一个值得推荐的选择。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值