ProjSEED / lodToolkit

level-of-details toolkit(LTK). Convert osgb lod tree to 3mx tree. Convert pointcloud in ply/las/laz/xyz to 3mx/osgb tree.
MIT License
111 stars 36 forks source link

如何得到模型的中心点? #2

Closed Vigoss2333 closed 3 years ago

Vigoss2333 commented 3 years ago

首先,您的工具非常好用,十分感谢分享。 现在我在使用点云转osgb/lod tree的时候遇到了个问题。我留意到写的metadata.xml里面有用wkt来描述空间参考信息,但是我想要一个模型中心点的经纬度坐标,用以将模型定位到正确的位置。您在代码里写的是定死的0,0,0。 请问我可以用什么方法获得模型的中心点坐标吗? 感谢您的回答。

GitGaoXing commented 3 years ago

Root.osgb实际上是个ProxyNode,里面写了整个模型的center,你可以利用这个center结合metadata.xml实现你的目的

osg::ProxyNode* pProxyNode = new osg::ProxyNode();
pProxyNode->setCenter(pointVisitor->GetBBox().center());
pProxyNode->setRadius(pointVisitor->GetBBox().radius());
Vigoss2333 commented 3 years ago

非常感谢,我也有看到这个center,我有看到pointVisitor->GetOffset(); 我打算利用这个offset和center来得到中心点的坐标。 您觉得可行吗?

GitGaoXing commented 3 years ago

可行

Vigoss2333 commented 3 years ago

感谢 我没有问题了