• osg fbx 绘制坐标轴、控制模型影藏与显示


    int main()
    {
        osg::ref_ptr<osgViewer::Viewer> viewer1 = new osgViewer::Viewer;
        osg::ref_ptr<osg::Group> group1 = new osg::Group;
        osg::ref_ptr<osg::Group> group2 = new osg::Group;
        //osg::ref_ptr<osg::Node> node1 = osgDB::readNodeFile("I:\BIM\fbx\jiaoxuelou20190304.fbx");
        //osg::ref_ptr<osg::Node> node1 = osgDB::readNodeFile("I:\BIM\fbx\Worker201907.fbx");
        //osg::ref_ptr<osg::Node> node1 = osgDB::readNodeFile("I:\BIM\fbx\buildings6.fbx");
        //osg::ref_ptr<osg::Node> node1 = osgDB::readNodeFile("I:\BIM\fbx\wdq.fbx");
        osg::ref_ptr<osg::Node> node1 = osgDB::readNodeFile("I:\BIM\fbx\wall20190707.fbx");
        
        group1->addChild(node1.get());
        group2->addChild(makeCoordinate(10.0, 10.0, 10.0, 4));
        group2->addChild(group1.get());
    
        //viewer1->setSceneData(group1.get());
        viewer1->setSceneData(group2.get());
        viewer1->setUpViewInWindow(200, 200, 800, 600, 0);
    
        //遍历节点
        std::cout << "--------------------------------" << std::endl;
        printOsgGroup(group1);
    
        //BoundVisitor boundVisitor1;
        //group1->accept(boundVisitor1);
    
        //int nodeChildCount = node1->getNumChildrenRequiringEventTraversal();
        //std::cout << "----count:" <<nodeChildCount<< std::endl;
    
        viewer1->addEventHandler(new CPickHandler(viewer1));
        return viewer1->run();
    }

     模型节点控制隐藏于显示,只需要调用  节点的  setNodeMask(1);即可,0:隐藏    1:显示

    node->setNodeMask(0);
    //node->setNodeMask(1);

    export root node
    Node : RootNode
    Node : 三维视图: {三维}
    eCamera : 涓夌淮瑙嗗浘: {涓夌淮}
    Node : 基本墙 wall_240 [361750]
    eMesh : 基本墙 wall_240 [361750] Geometry
    Node : 基本墙 wall_240 [361813]
    eMesh : 基本墙 wall_240 [361813] Geometry
    Node : 基本墙 wall_240 [361889]
    eMesh : 基本墙 wall_240 [361889] Geometry
    Node : 基本墙 wall_240 [361993]
    eMesh : 基本墙 wall_240 [361993] Geometry
    Node : 基本墙 wall_240 [362170]
    eMesh : 基本墙 wall_240 [362170] Geometry
    Node : 基本墙 wall_240 [362246]
    eMesh : 基本墙 wall_240 [362246] Geometry
    Node : 基本墙 wall_240 [362332]
    eMesh : 基本墙 wall_240 [362332] Geometry
    Node : 基本墙 wall_240 [362620]
    eMesh : 基本墙 wall_240 [362620] Geometry
    Node : 基本墙 wall_240 [362719]
    eMesh : 基本墙 wall_240 [362719] Geometry
    Node : 基本墙 wall_240 [362785]
    eMesh : 基本墙 wall_240 [362785] Geometry
    Node : 基本墙 wall_240 [362853]
    eMesh : 基本墙 wall_240 [362853] Geometry
    Node : 基本墙 wall_240 [362938]
    eMesh : 基本墙 wall_240 [362938] Geometry
    Node : 基本墙 wall_240 [363048]
    eMesh : 基本墙 wall_240 [363048] Geometry
    Node : 基本墙 wall_240 [363150]
    eMesh : 基本墙 wall_240 [363150] Geometry
    Node : 基本墙 wall_240 [363257]
    eMesh : 基本墙 wall_240 [363257] Geometry
    Node : 基本墙 wall_240 [363370]
    eMesh : 基本墙 wall_240 [363370] Geometry
    export root node done
    done
    --------------------------------
    0=三维视图: {三维}
    1=基本墙 wall_240 [361750]
    2=基本墙 wall_240 [361813]
    3=基本墙 wall_240 [361889]
    4=基本墙 wall_240 [361993]
    5=基本墙 wall_240 [362170]
    6=基本墙 wall_240 [362246]
    7=基本墙 wall_240 [362332]
    8=基本墙 wall_240 [362620]
    9=基本墙 wall_240 [362719]
    10=基本墙 wall_240 [362785]
    11=基本墙 wall_240 [362853]
    12=基本墙 wall_240 [362938]
    13=基本墙 wall_240 [363048]
    14=基本墙 wall_240 [363150]
    15=基本墙 wall_240 [363257]
    16=基本墙 wall_240 [363370]
    0=RootNode

  • 相关阅读:
    CI框架 -- 核心文件 之 Loader.php(加载器)
    CI框架 -- 核心文件 之 Lang.php(加载语言包)
    CI框架 -- 核心文件 之 Input.php(输入数据处理文件)
    CI框架 -- 核心文件 之 Hooks.php
    CI框架 -- 核心文件 之 Exceptions.php
    CI框架 -- 配置文件config.php
    网站后台发通知页面效果图
    校内通知-Notifications表增加老师,家长,学生发送范围字段
    jqGrid设置指定行的背景色
    SQLServer数据库监控代码
  • 原文地址:https://www.cnblogs.com/herd/p/11155657.html
Copyright © 2020-2023  润新知