查看: 4954|回复: 10

如何获取场景内包围盒的中心点和尺寸

[复制链接]

该用户从未签到

发表于 2011-12-2 20:13:37 | 显示全部楼层 |阅读模式
最近在做碰撞检测,先从包围盒开始看起的,我发现OSG里给的包围盒尺寸较大、我就自己编了一段程序,如何获取场景内包围盒的中心点呢?

该用户从未签到

 楼主| 发表于 2011-12-3 11:46:15 | 显示全部楼层
在场景中遍历到一个节点,如何求得该节点包围盒的中心点坐标,顶点~~谢谢哈

该用户从未签到

 楼主| 发表于 2011-12-4 15:07:43 | 显示全部楼层
UP一下

该用户从未签到

 楼主| 发表于 2011-12-4 17:13:49 | 显示全部楼层
我想查找场景中的某一节点(设名字为“障碍物”),找到该节点后要计算出其子节点个数m,然后依次遍历该节点下的子节点,为各个障碍物建立包围盒,然后取得各障碍物的顶点坐标。
我该如何着手去做啊,有没有资料让我学习一下,谁来帮帮我,谢谢啊~!~!

该用户从未签到

发表于 2011-12-4 23:24:12 | 显示全部楼层
node->getBounding().center()

该用户从未签到

 楼主| 发表于 2011-12-5 08:34:02 | 显示全部楼层
StackSnow 发表于 2011-12-4 23:24
node->getBounding().center()

谢谢哈~~我想查找场景中的某一节点(设名字为“障碍物”),找到该节点后要计算出其子节点个数m,然后依次遍历该节点下的子节点,为各个障碍物建立包围盒,然后取得各障碍物的顶点坐标。这时候有很多个障碍物,我调用这个函数的时候,老是区分不开~~~应该肿么做啊?谢谢您不吝赐教

该用户从未签到

发表于 2011-12-6 09:52:01 | 显示全部楼层
我调用这个函数的时候,老是区分不开~~~


不明白 您想区分的是什么呢

我想查找场景中的某一节点(设名字为“障碍物”),找到该节点后要计算出其子节点个数m,然后依次遍历该节点下的子节点,为各个障碍物建立包围盒,然后取得各障碍物的顶点坐标。


看前半句您的思路很清晰应该得到目的了,在看后半句 没明白您想区分什么?要做什么?

该用户从未签到

 楼主| 发表于 2011-12-6 17:04:44 | 显示全部楼层
StackSnow 发表于 2011-12-6 09:52
不明白 您想区分的是什么呢

我想返回每一个障碍物的中心点坐标,该怎么一一区分开各个障碍物啊,程序怎么写呢?谢谢哈

该用户从未签到

发表于 2011-12-8 12:10:58 | 显示全部楼层
我想返回每一个障碍物的中心点坐标,该怎么一一区分开各个障碍物啊,程序怎么写呢?谢谢哈


如果要区分,那么你首先应该有一个障碍物节点的列表吧,不然无法区分

该用户从未签到

发表于 2011-12-12 13:52:40 | 显示全部楼层
我想返回每一个障碍物的中心点坐标,该怎么一一区分开各个障碍物啊,程序怎么写呢?谢谢哈


将每个障碍物都取一个名字,然后根据前缀决定此物体为障碍物,如"ZHANGAIWU_1","ZHANGAIWU_2",遍历节点的时候如果getName()的前缀是"ZHANGAIWU_"即判定该物体为障碍物,然后取得后面的名字就可以区分开1和2两个障碍物了

该用户从未签到

 楼主| 发表于 2011-12-12 16:50:20 | 显示全部楼层
StackSnow 发表于 2011-12-12 13:52
将每个障碍物都取一个名字,然后根据前缀决定此物体为障碍物,如"ZHANGAIWU_1","ZHANGAIWU_2",遍历节点 ...

讲的很详细,谢谢哈
您需要登录后才可以回帖 登录 | 注册

本版积分规则

OSG中国官方论坛-有您OSG在中国才更好

网站简介:osgChina是国内首个三维相关技术开源社区,旨在为国内更多的技术开发人员提供最前沿的技术资讯,为更多的三维从业者提供一个学习、交流的技术平台。

联系我们

  • 工作时间:09:00--18:00
  • 反馈邮箱:1315785073@qq.com
快速回复 返回顶部 返回列表