用自己的程序解析自己编写的IFC文件(ifcslab),然后用三维引擎渲染出来

最近根据IFC标准,自己手工编写了一个描述不规则楼板的ifc文件——ifcslab,编写程序解析该ifc文件,获取ifcslab的属性,最后通过三维引擎渲染出来了。

渲染效果如下:

#include <osgViewer/Viewer>
#include <osg/Node>
#include <osg/Group>
#include <osg/ShapeDrawable>

#include <osgUtil/Optimizer>
#include <osgUtil/Tessellator>


int main()
{
    osgViewer::Viewer* viewer = new osgViewer::Viewer();
    osg::Group* root = new osg::Group();


    //添加楼板数据
    osg::Geode* geode = createIfcSlab();
    
    root->addChild(geode);


    //优化场景
    osgUtil::Optimizer optimizer;
    optimizer.optimize(root);

    viewer->getCamera()->setClearColor(osg::Vec4(1, 1, 1, 0));

    viewer->setUpViewInWindow(200, 200, 700, 500, 0);
    viewer->setSceneData(root);

    viewer->realize();
    viewer->run();



    return 0;
}

#################

QQ 3087438119
原文地址:https://www.cnblogs.com/herd/p/15156157.html