zoukankan      html  css  js  c++  java
  • qt的OSG视图中拣选对象事件消息

    目前在qt中嵌入了osgviewer,并添加了自定义的eventhandle,此事件触发模型的高亮。但是想触发qt窗体中text控件显示模型的信息出现了疑问。事件能直接发出信号供槽接收?事件是单独的类,qt中viewer控件类,text控件类,三者之间的信号槽怎么建立????

    8月22日:

    仍然是使用信号槽机制,当单击模型事件发生时,发送信号sendPickInfo,槽为displayPickInfo。

    自定义事件CPickHandler中有成员OsgViewerWidget,此成员为嵌入qt的osgviewer。反过来,OsgViewerWidget对象添加了自定义事件CPickHandler;

    在CPickHandler事件中,设计了单击模型事件的方法PickLight,该方法高亮模型,同时由OsgViewerWidget发送信号sendPickInfo

    槽由MyOSGQT的displayPickInfo接收,在该槽内,调用了ui的控件,使控件显示传出信息。

    connect函数位于ui_myosgqt中。

    注意槽函数参数只能与信号函数少或相等。

    qstring中文乱码的解决方法:在main函数中,添加QTextCodec::setCodecForCStrings(QTextCodec::codecForName("GBK"));

    暂时实现了点选模型后,传递坐标信息到text控件。但是模型本身的信息还未找到获取方法,因为关于模型的node结构理解的还不是很清楚。明天需要对模型信息进行提取,然后显示到控件中。

    对于模型节点的类型,geode和group还是无法找到区分的方法,以及复杂模型各种信息的保存位置。nodepath保存的节点规则也还没搞清楚。还需要一个复杂的分段模型用来练手,将分段各信息显示在树结构中

  • 相关阅读:
    Shell学习(八)——dd命令
    PLSQL导出oracle表结构和数据
    如何让Linux 机器CPU使用率变高
    WebService学习总览
    Java发HTTP POST请求(内容为xml格式)
    Oracle—回车、换行符
    Oracle—merge into语法
    Apache解析和绑定域名
    MySQL根据经纬度按距离排序
    jquery监听input
  • 原文地址:https://www.cnblogs.com/hanmolabi/p/7407404.html
Copyright © 2011-2022 走看看