zoukankan      html  css  js  c++  java
  • CityGML文件格式

    1 LOD3中,wall是由cuboid组成的,一个墙面包括8个面,分为wall-1, wall-2。。。wall-8,door也是,因此他们都是multisurface (一般由8个面片组成)。

    在wall与window的操作中,window属于opening object,有的是在墙面中凹陷的,但是我们还是能够看到凹陷的部分,但是wall还是有8个面片组成,并无多余面片和顶点。如下图,可以看到凹陷的窗体,但是wall的面片的组织并没有想.3ds那样多了很多个三角形来表示。

    2 从LOD3才开始有面片是roof还是wall的语义信息。

    3 CityGML的文件有以 .xml/.gml 这两种文件格式为结尾的,其中包含坐标点的格式应该是

    <gml:posList srsDimension="3"> 3499943.71541513 5399990.51365886 3.47825945823388e-013 3499995.98678034 5399992.61 -4.08743619019931e-012 3499943.71541513 5399992.61 3.47825945823388e-013 3499943.71541513 5399990.51365886 3.47825945823388e-013</gml:posList>

    而以下是错误的:

    <gml:pos>691664.961 5335057.8 547.084</gml:pos>
    <gml:pos>691681.714 5335054.358 547.084</gml:pos>
    <gml:pos>691681.714 5335054.358 521.554</gml:pos>
    <gml:pos>691664.961 5335057.8 521.554</gml:pos>
    <gml:pos>691664.961 5335057.8 547.084</gml:pos>

    4 还要考虑 texture coordinate

    从notepad++中的第三列开始

    wall:

    <bldg:boundedBy>
    <bldg:WallSurface>
    <gml:name>Wall-1</gml:name>

    roof:

    <bldg:boundedBy>
    <bldg:RoofSurface>
    <gml:name>Roof-1</gml:name>

    6 boundarysurface (包括wall,roof,ground,都包含<gml:name>这一属性)和opening(包括window,door)是同等级的

    boundarysurface在citygml的文件中是用boundedBy表示的,<bldg:boundedBy>

     在citygml.xml中opening是包括在WallSurface中的。

    <bldg:WallSurface>
      <bldg:opening>

    。。。。。。。。。。。。。

      </bldg:opening>
    </bldg:WallSurface>

    7 building与buildingpart:如果一个建筑物很简单,就只有一个building,如上图,当建筑物复杂时,如下图,就由building和buildingpart组成

     8 citygml中的模型坐标点也是由一个一个的三角面片组成,一个三角形有四个点,第一个点和最后一个点一样,为了重合。

  • 相关阅读:
    .NET的堆和栈01,基本概念、值类型内存分配
    C#中List<T>是怎么存放元素的
    MVC为用户创建专属文件夹
    c#中何时使用Empty()和DefalutIfEmpty()
    MVC中使用AngularJS-01,基本
    MVC使用Dotnet.HighCharts做图表01,区域图表
    MVC使用Gantt Chart实现甘特图,管理事情进度
    Knockout官网实例在MVC下的实现-02,实现计次
    MVC实现多选下拉框,保存并显示多选项
    Knockout官网实例在MVC下的实现-01,实现Hello world
  • 原文地址:https://www.cnblogs.com/qingsunny/p/3164091.html
Copyright © 2011-2022 走看看