查看: 1098|回复: 5

关于dragger 的Constrain

[复制链接]

该用户从未签到

发表于 2013-4-10 20:25:34 | 显示全部楼层 |阅读模式
本帖最后由 Arturia 于 2013-4-10 21:17 编辑

  找了很久都没有找到Constrain的例子,有没有人给一个例子呢?我自己做添加的Constrain完全不起作用,就算是仅仅是打印消息。调用的是dragger的addConstrain这个方法应该没有错吧?是这么添加的么?

dragger->addConstraint(new OBConstrain(dragger));


class OBConstrain: public osgManipulator::Constraint{
public:
                OBConstrain(osgManipulator:ragger *dragger):Constraint(*dragger){};
                bool constrain(osgManipulator::TranslateInLineCommand& command){

                        cout <<"OK" <<endl;
                }
                bool constrain(osgManipulator::MotionCommand& command)
                {
                        cout <<"OK" <<endl;
                }

};

该用户从未签到

发表于 2013-4-11 08:10:30 | 显示全部楼层
完全是C++语法错误
  1.         virtual bool constrain(TranslateInLineCommand& command) const  { return constrain((MotionCommand&)command); }
复制代码

该用户从未签到

发表于 2013-4-11 15:49:26 | 显示全部楼层
Constrain 是干什么用的呢,困惑

该用户从未签到

发表于 2013-4-11 15:55:38 | 显示全部楼层
从字面就能知道是干什么用的

该用户从未签到

 楼主| 发表于 2013-4-13 20:45:19 | 显示全部楼层
本帖最后由 Arturia 于 2013-4-13 21:21 编辑
liuzhiyu123 发表于 2013-4-11 15:55
从字面就能知道是干什么用的


写代码写蒙了,没有注意到这个。。。。

我想问个问题,在Constrain的里面存储多个MotionCommand,当发现碰撞以后,将碰撞前的command替换现在的command能实现碰撞后回显,这样可以吗?但是,既然声明是const函数,那不是不能修改成员变量么。

该用户从未签到

发表于 2013-4-15 07:40:08 | 显示全部楼层
command是从最外面传进来的 怎么替换? const_cast
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

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

联系我们

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