本发明涉及一种建模方法,特别是一种公路自动建模方法;本发明还提供了一种用于实现上述方法的建模系统。
背景技术:
在公路项目可研、设计、建设及管养阶段,从业人员需要对海量相关数据进行处理,提供大量照片、图表、报告以供管理层进行决策分析,在该领域从业人员入门门槛较高,工作繁重、枯燥,而这都可以通过公路三维可视化方案来解决,用户通过简单的点击、拖拽就可以浏览、查阅公路相关资料、周边环境,甚至在公路未建成阶段就能让相关人员及公众直观了解公路建成后的状况。
公路实现可视化的基础条件即公路3d模型的建立,现有公路3d建模技术主要有以下几种方式:
a.手工建模。依照公路设计图纸,在3dmax、maya等三维建模软件上手工绘制。该方法主要优点在于所建模型精确,渲染效果可以做到非常好。但该方法缺点非常明显:工作量大,公路里程较长时,耗时人工可能达到数百人月;建模人员同时需要公路设计专业知识、或由专业人员指导,建模成本较高。
b.独立开发的桌面应用程序,能够实现人机交互的三维建模软件,如uc-win/road。这类软件一般按照公路设计规范制作,用户依照公路设计资料,在生成模型时输入设计参数,并选择模型各表面所采用纹理即时生成相应3d模型。该方法生成模型较快速,模型渲染效果较好。其缺点是三维模型导出、存储困难,目前该软件仅用于公路设计方案展示、比选及公路大修、改建等应用中。
c.基于autocad的桌面应用程序。该类软件一般以设计单位的公路设计cad文档作为底图,通过人机交互的方式,生成公路粗略三维模型,细节部分参考设计图纸通过autocad进行修改。
同时以上建模方法均存在数据输入量较大,生成的模型难以在其它场景使用的问题。
技术实现要素:
本发明的目的在于克服现有技术的缺点与不足,提供了一种公路自动建模方法及系统。
本发明通过以下的方案实现:一种公路自动建模方法,包括以下步骤:
读取中心线、平面线参数;
读取纵断面线参数;
根据中心线、平面线参数和纵断面线参数构建中心线坐标计算模型;
根据路面结构参数构建横断面路面计算模型;
根据边坡结构参数构建横断面边坡计算模型;
计算路面结构模型参数,生成路面模型;
计算边坡结构模型参数,生成边坡模型;
读取构造物设计参数,生成构造物模型。
相比于现有技术,本发明可以实现公路设计数据输入量少、参数化,便于数据管理和读取。同时,也能够加快建模的速度。
作为本发明的进一步改进,所述根据路面结构参数构建横断面路面计算模型的步骤中,具体包括:
读取路面结构参数表;
加载路面结构参数;
构建横断面路面计算模型。
作为本发明的进一步改进,所述路面结构参数表包括桩号、偏移、中分带、左护栏、路缘石、路面、硬路肩、右护栏、隔离栅信息。
作为本发明的进一步改进,所述根据边坡结构参数构建横断面边坡计算模型的步骤中,具体包括:
读取边坡结构参数表;
加载边坡结构参数;
构建边坡计算模型。
作为本发明的进一步改进,所述边坡结构参数表包括编号、父编号、起点、终点、方向、默认斜率、默认高度、默认平台宽度、边坡级数、边坡斜率、边坡高度、边坡平台宽。
作为本发明的进一步改进,所述计算路面结构模型参数,生成路面模型的步骤中,具体包括:
通过中心线坐标计算模型计算桩号对应的道路中心点坐标;
读取该桩号对应路面结构参数,沿该中心点依次向两边延伸,分别计算中央绿化带边缘点、路缘石边缘点、路面边缘点、硬路肩边缘点、土路肩边缘点、隔离栅中心点的坐标。
作为本发明的进一步改进,所述计算边坡结构模型参数,生成边坡模型的步骤中,具体包括:
通过中心线坐标计算模型计算桩号对应的道路中心点坐标;
计算该桩号对应的土路肩边缘点坐标;
在三维地图中读取土路肩边缘点对应的地面实际高程,判断该边缘点与地面关系;
读取边坡参数,依次计算1级边坡边缘点坐标、1级横坡边缘点坐标、2级边坡边缘点坐标、2级横坡边缘点坐标、3级边坡边缘点坐标、3级横坡边缘点坐标,依次类推,直到找到与地面交叉点。
作为本发明的进一步改进,读取构造物设计参数,生成构造物模型的步骤中,具体包括:
对构造物模型进行分类;
对构造物的结构部件进行分类;
读取结构部件属性;
分别生成构造物包含的结构部件模型;
组合成构造物模型。
本发明还提供了一种公路自动建模系统,包括
取中心线、平面线参数读取模块,用于读取中心线、平面线参数;
纵断面线参数读取模块,用于读取纵断面线参数;
中心线坐标计算模型构建模块,用于根据中心线、平面线参数和纵断面线参数构建中心线坐标计算模型;
路面计算模型构建模块,用于根据路面结构参数构建横断面路面计算模型;
边坡计算模型构建模块,用于根据边坡结构参数构建横断面边坡计算模型;
路面模型生成模块,用于计算路面结构模型参数,生成路面模型;
边坡模型生成模块,用于计算边坡结构模型参数,生成边坡模型;
构造物模型生成模块,用于读取构造物设计参数,生成构造物模型。
作为本发明的进一步改进,所述路面计算模型构建模块包括:
路面结构参数表读取模块,用于读取路面结构参数表;
路面结构参数加载模块,用于加载路面结构参数;
路面构建模块,用于构建横断面路面计算模型。
作为本发明的进一步改进,所述路面结构参数表包括桩号、偏移、中分带、左护栏、路缘石、路面、硬路肩、右护栏、隔离栅信息。
作为本发明的进一步改进,所述边坡计算模型构建模块包括:
边坡结构参数表读取模块,用于读取边坡结构参数表;
边坡结构参数加载模块,用于加载边坡结构参数;
边坡模型构建模块,用于构建边坡计算模型。
作为本发明的进一步改进,所述边坡结构参数表包括编号、父编号、起点、终点、方向、默认斜率、默认高度、默认平台宽度、边坡级数、边坡斜率、边坡高度、边坡平台宽。
作为本发明的进一步改进,所述路面模型生成模块包括:
第一计算模块,用于通过中心线坐标计算模型计算桩号对应的道路中心点坐标;
第二计算模块,用于读取该桩号对应路面结构参数,沿该中心点依次向两边延伸,分别计算中央绿化带边缘点、路缘石边缘点、路面边缘点、硬路肩边缘点、土路肩边缘点、隔离栅中心点的坐标。
作为本发明的进一步改进,所述边坡模型生成模块包括:
第三计算模块,用于通过中心线坐标计算模型计算桩号对应的道路中心点坐标;
第四计算模块,用于计算该桩号对应的土路肩边缘点坐标;
判断模块,用于在三维地图中读取土路肩边缘点对应的地面实际高程,判断该边缘点与地面关系;
第五计算模块,用于读取边坡参数,依次计算1级边坡边缘点坐标、1级横坡边缘点坐标、2级边坡边缘点坐标、2级横坡边缘点坐标、3级边坡边缘点坐标、3级横坡边缘点坐标,依次类推,直到找到与地面交叉点。
作为本发明的进一步改进,所述构造物模型生成模块包括:
第一分类模块,用于对构造物模型进行分类;
第二分类模块,用于对构造物的结构部件进行分类;
属性读取模块,用于读取结构部件属性;
结构部件模型生成模块,用于分别生成构造物包含的结构部件模型;
组合模块,用于组合成构造物模型。
综上所述,相比于现有技术,本发明具备以下的有益效果:
1、公路设计数据输入量少,以及实现数据参数化。
2、生成的公路模型最小单元可以自由设定,同时对生成的大量三维模型能进行有效管理、展示和应用。
为了更好地理解和实施,下面结合附图详细说明本发明。
附图说明
图1是本发明的公路自动建模方法的步骤流程图。
图2是本实施例的矩形拆分示意图。
图3是本实施例的圆形拆分示意图。
图4是本实施例的结构体拆分示意图。
图5是本实施例的路面模型示意图。
图6是本实施例的桥梁模型的整体效果图
图7是本实施例的桥台效果图
图8是本实施例的三立柱效果图。
图9是本发明的公路自动建模系统的模块框图。
图10是本发明的路面计算模型构建模块的连接框图。
图11是本发明的边坡计算模型构建模块的连接框图。
图12是本发明的路面生成模型的连接框图。
图13是本发明的边坡模型生成模块的连接框图。
图14是本发明的构造物生成模块的连接框图。
具体实施方式
本发明针对已有公路三维建模方法存在的工作量大、模型难以管理等问题,提供了一种公路3d参数化自动建模的方法。以下结合实施例及附图对本发明作进一步详细的描述,但本发明的实施方式不限于此。
本发明对公路3d参数化自动建模过程进行了拆解分析,将其拆分为以下几个过程:公路设计参数的解析、地形地貌的数字化管理、3d模型的创建与存储、大量三维模型的管理与展示。以下具体地介绍本发明的公路自动建模方法的流程。
请参阅图1,其为本发明的公路自动建模方法的步骤流程图。本发明提供了一种公路自动建模方法,包括以下步骤:
s1:读取中心线、平面线参数。
其中,目前国内公路设计领域所用公路设计软件多为纬地或card1,其设计文档均采用标准化的规范记录。公路平面曲线采用直线、圆曲线、缓和曲线三种现行组合,纵断面曲线采用圆曲线或二次抛物曲线与直线进行拟合。因此通过公路设计资料的平纵设计参数(如纬地、card1等设计软件的平纵设计文件)或公路逐桩坐标对照表可以计算公路各桩号点的准确三维坐标。
s2:读取纵断面线参数。
地形地貌的数字化管理在国内外均有较成熟的三维gis平台,如googleearth、skyline、超图三维gis、citymaker等。同时这些三维平台都提供对大量模型的管理与展示功能。
因此,在本实施例中,可以通过数字地面模型获取实际地面高程,其误差非常小。通过设计高程与实际地面高程相比较即可判断该横断面是填方或者挖方,再通过横断面特征参数即可控制生成横断面信息。
s3:根据中心线、平面线参数和纵断面线参数构建中心线坐标计算模型。
s4:根据路面结构参数构建横断面路面计算模型。
进一步,在本步骤s4中,具体包括:
s41:读取路面结构参数表。
请参阅表1,所述路面结构参数表包括桩号、偏移、中分带、左护栏、路缘石、路面、硬路肩、右护栏、隔离栅信息。
表1
s42:加载路面结构参数。
s43:构建横断面路面计算模型。具体的,请同时参阅图2和图3,其分别为矩形拆分和圆形拆分示意图。在构建模型过程中,可以将模型表面拆分为多个三角面片。例如:可以将矩形表面拆分为两个三角面片,可以将圆形表面拆分为多个三角面片。
s5:根据边坡结构参数构建横断面边坡计算模型。
具体的,所述步骤s5中,具体包括:
s51:读取边坡结构参数表。
请同时参阅表2和表3,在本实施例中,所述边坡结构参数表包括编号、父编号、起点、终点、方向、默认斜率、默认高度、默认平台宽度、边坡级数、边坡斜率、边坡高度、边坡平台宽。
表2(边坡默认参数表)
表3(边坡分级特例表):
s52:加载边坡结构参数。
s53:构建边坡计算模型。具体的,请同时参阅图4,其为结构体拆分示意图。在本实施例中,当在构建边坡模型时,可以对结构体拆分为多个面体。比如,可以将圆柱体拆分为两个圆形上下平面和圆柱形侧面。
s6:计算路面结构模型参数,生成路面模型。
请同时参阅图5,其为本实施例的路面模型示意图。具体的,在本步骤s6中包括:
s61:通过中心线坐标计算模型计算桩号对应的道路中心点坐标。
s62:读取该桩号对应路面结构参数,沿该中心点依次向两边延伸,分别计算中央绿化带边缘点、路缘石边缘点、路面边缘点、硬路肩边缘点、土路肩边缘点、隔离栅中心点的坐标。
s7:计算边坡结构模型参数,生成边坡模型。
具体的,在本步骤s7中包括:
s71:通过中心线坐标计算模型计算桩号对应的道路中心点坐标。
s72:计算该桩号对应的土路肩边缘点坐标。
s73:在三维地图中读取土路肩边缘点对应的地面实际高程,判断该边缘点与地面关系。
s74:读取边坡参数,依次计算1级边坡边缘点坐标、1级横坡边缘点坐标、2级边坡边缘点坐标、2级横坡边缘点坐标、3级边坡边缘点坐标、3级横坡边缘点坐标,依次类推,直到找到与地面交叉点。
s8:读取构造物设计参数,生成构造物模型。
具体的,在本步骤s8中,具体包括:
s81:对构造物模型进行分类。
s82:对构造物的结构部件进行分类。
s83:读取结构部件属性。
s84:分别生成构造物包含的结构部件模型。
s85:组合成构造物模型。
比如,可以参阅图6-8,其分别是本实施例的桥梁模型的整体效果图、桥台效果图和三立柱效果图。在本实施例中,可以把结构部件进行分类。例如:将三立柱桥梁模型进行拆分,拆分为一个桥台和三个立柱,分别进行建模。然后,再将三个结构体进行组合。
另外,本发明还提供了一种用于实现上述公路自动建模方法的系统。请参阅图9,其为本发明的公路自动建模系统的模块框图。本发明还提供了一种公路自动建模系统,包括取中心线、平面线参数读取模块1、纵断面线参数读取模块2、纵断面线参数读取模块3、路面计算模型构建模块4、边坡计算模型构建模块5、路面模型生成模块6、边坡模型生成模块7和构造物模型生成模块8。
所述取中心线、平面线参数读取模1,用于读取中心线、平面线参数。
所述纵断面线参数读取模块2,用于读取纵断面线参数。
所述中心线坐标计算模型构建模块3,用于根据中心线、平面线参数和纵断面线参数构建中心线坐标计算模型。
所述路面计算模型构建模块4,用于根据路面结构参数构建横断面路面计算模型。
所述边坡计算模型构建模块5,用于根据边坡结构参数构建横断面边坡计算模型。
所述路面模型生成模块6,用于计算路面结构模型参数,生成路面模型。
所述边坡模型生成模块7,用于计算边坡结构模型参数,生成边坡模型。
所述构造物模型生成模块8,用于读取构造物设计参数,生成构造物模型。
请同时参阅图10,其为本发明的路面计算模型构建模块的连接框图。进一步,所述路面计算模型构建模块4包括:路面结构参数表读取模块41、路面结构参数加载模块42和路面构建模块43。
所述路面结构参数表读取模块41,用于读取路面结构参数表。
所述路面结构参数加载模块42,用于加载路面结构参数。
所述路面构建模块43,用于构建横断面路面计算模型。
具体的,所述路面结构参数表包括桩号、偏移、中分带、左护栏、路缘石、路面、硬路肩、右护栏、隔离栅信息。
请同时参阅图11,其为本发明的边坡计算模型构建模块的连接框图。进一步,所述边坡计算模型构建模块5包括:边坡结构参数表读取模块51、边坡结构参数加载模块52和边坡模型构建模块53。
所述边坡结构参数表读取模块51,用于读取边坡结构参数表;
所述边坡结构参数加载模块52,用于加载边坡结构参数;
所述边坡模型构建模块53,用于构建边坡计算模型。
具体的,所述边坡结构参数表包括编号、父编号、起点、终点、方向、默认斜率、默认高度、默认平台宽度、边坡级数、边坡斜率、边坡高度、边坡平台宽。
请参阅图12,其为本发明的路面生成模型的连接框图。进一步,所述路面模型生成模块6包括:第一计算模块61和第二计算模块62。
所述第一计算模块61,用于通过中心线坐标计算模型计算桩号对应的道路中心点坐标;
所述第二计算模块62,用于读取该桩号对应路面结构参数,沿该中心点依次向两边延伸,分别计算中央绿化带边缘点、路缘石边缘点、路面边缘点、硬路肩边缘点、土路肩边缘点、隔离栅中心点的坐标。
请同时参阅图13,其为本发明的边坡模型生成模块的连接框图。所述边坡模型生成模块7包括:第三计算模块71、第四计算模块72、判断模块73和第五计算模块74。
所述第三计算模块71,用于通过中心线坐标计算模型计算桩号对应的道路中心点坐标;
所述第四计算模块72,用于计算该桩号对应的土路肩边缘点坐标;
所述判断模块73,用于在三维地图中读取土路肩边缘点对应的地面实际高程,判断该边缘点与地面关系;
所述第五计算模块74,用于读取边坡参数,依次计算1级边坡边缘点坐标、1级横坡边缘点坐标、2级边坡边缘点坐标、2级横坡边缘点坐标、3级边坡边缘点坐标、3级横坡边缘点坐标,依次类推,直到找到与地面交叉点。
请同时参阅图14,其为本发明的构造物生成模块的连接框图。所述构造物模型生成模块8包括:第一分类模块81、第二分类模块82、属性读取模块83、结构部件模型生成模块84和组合模块85。
所述第一分类模块81,用于对构造物模型进行分类;
所述第二分类模块82,用于对构造物的结构部件进行分类;
所述属性读取模块83,用于读取结构部件属性;
所述结构部件模型生成模块84,用于分别生成构造物包含的结构部件模型;
所述组合模块85,用于组合成构造物模型。
上述实施例为本发明较佳的实施方式,但本发明的实施方式并不受上述实施例的限制,其他的任何未背离本发明的精神实质与原理下所作的改变、修饰、替代、组合、简化,均应为等效的置换方式,都包含在本发明的保护范围之内。