查看: 1786|回复: 3

osgModeling lathe构造箭头模型问题

[复制链接]

该用户从未签到

发表于 2015-6-9 17:12:45 | 显示全部楼层 |阅读模式
希望大大们能看到帮忙解答。问题是这样的:我任意给两个点p1与p2,需要旋转出一个箭头模型来。参考了osgModeling里面lathe例子。我思路是根据已知的两个点,算出箭头的五个顶点坐标,

两点都在x轴上

两点都在x轴上
然后让顶点连成的线绕着由给定的两个点形成的向量旋转。代码为
        geom->setLatheOrigin( p1 );
        latheAxis = p2 - p1
        geom->setLatheAxis(latheAxis);
        现在的问题是,当给定的两个点全都在同一个坐标轴时, 比如p1(1,0,0), p2(4,0,0)可以生成一个箭头。当给定两个任意的点时,比如p1(1,2,3), p2(5,1,9),绕轴旋转的形状就很奇怪了。问题应该是旋转的轴不对,这是osgModeling的bug吗?Array大哥请教我下。

箭头顶点

箭头顶点

两点不在坐标轴上

两点不在坐标轴上

两点不在坐标轴上

两点不在坐标轴上

该用户从未签到

发表于 2015-6-9 17:16:11 | 显示全部楼层
我也碰到了同样的问题,请问解决了么?谢谢

该用户从未签到

 楼主| 发表于 2015-6-9 17:17:42 | 显示全部楼层
songweiwang 发表于 2015-6-9 17:16
我也碰到了同样的问题,请问解决了么?谢谢

没有啊

该用户从未签到

 楼主| 发表于 2015-6-11 08:45:01 | 显示全部楼层
问题解决了!自己来结个贴。具体做法是:先将顶点p1平移到原点,所有其他点都做相同平移;接着设置轴;最后设置起点。因为osgModeling的lathe的默认转轴起点是(0,0,0)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

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

联系我们

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