市政勘察设计行业正处于由二维设计向三维设计转型升级的摸索阶段。对于线性工程而言,路线信息是最为基础的设计要素之一,也是多专业协同的核心数据。然而,建筑信息模型(building information modeling,BIM)技术在线性工程中应用的普及度和成熟度远不及在建筑工程中,三维路线设计模式推广缓慢:一方面现行路线设计规范对路线的平竖曲线有明确规定,即使采用三维路线设计软件也需要在平面和纵断面上分别进行设计,再转换为三维路线;另一方面现有的二维路线设计软件具有功能完善、易用性好、设计效率高等优势,而当前通用的BIM软件并不提供路线设计模块,需要设计企业通过二次开发来实现这部分功能,开发成本较高。此外,在城市信息化建设的背景下,大量已建的线性工程亟需将二维成果数据向三维BIM数据转换。因此,利用数据格式转换实现路线信息与BIM软件的无缝衔接具有重要的实际应用价值。
BIM异构数据以及“信息孤岛”问题严重制约了二三维应用软件之间的信息共享和协同工作,导致路线信息在传递过程中出现数据丢失或失真的现象。工业基础类(industry foundation classes,IFC) 4.1标准作为一种国际化的BIM数据标准,提供了不依赖任何具体系统的、机器可读的、适合于描述贯穿整个建筑生命期内产品数据的中性机制[1],并因此得到大量BIM应用软件的支持。但在路线设计领域应用较为广泛的EICAD软件仍不支持IFC数据格式的输出,因此现有的工作流只能采用基于DWG文件的路线数据交互方式,该方式下仅能传递路线的几何信息,且存在缓和曲线绘制不精确、平竖曲线信息丢失等问题。鉴于上述问题,基于IFC标准框架,自主开发程序实现EICAD路线数据导出为IFC数据的思路已成为一种可行的技术方案。
然而,IFC标准现存版本数量多,且覆盖不同领域、不同专业、不同阶段的建筑信息表达,因此针对特定内容的数据转换往往需要专门研究[2]。胡振中等[3]分析了IFC标准中与传感器相关的信息表达和关联机制,提出了基于IFC标准的传感器信息存储和传递流程;Kim等[4]提取了IFC文件中的能耗数据,并将其导出至能耗分析模型中;林佳瑞等[5]提出了IFC向gbXML的自动转换方法,实现绿色性能分析数据的转换;邓雪原等[6]研究了基于IFC标准的结构分析软件模型自动生成方法;王轩等[7]提取了IFC模型中的结构信息,实现了从IFC结构模型到3D3S结构模型的自动转换;梁小龙[8]通过对OpenRoads软件二次开发打通了EICAD路线数据与Bentley平台的数据接口;Huler等[9]研究了基于IFC 4.1标准的铁路路线设计合规检查,实现了路线设计规范检查的自动化。但是,迄今为止,尚未见二维路线数据转换为IFC数据的相关研究。本文的目的在于改善二三维路线数据的交互方式,基于IFC 4.1文件格式实现二三维路线数据的无缝衔接,从而提高协同设计的工作效率。
1 基于IFC标准的路线信息模型 1.1 IFC标准概述IFC标准作为实现BIM全生命周期理念的重要工具,是一种面向建筑领域的数据表达和交换标准。它由国际协同工作联盟IAI(已更名为buildingSMART)于20世纪90年代开始起草并更新迭代至今,当前最新版本为IFC4.3 RC2[10]。长期以来,该标准主要致力于建筑领域信息表达的标准化工作,而自IFC 4.1版本开始,buildingSMART组织逐步将IFC标准延伸至基础设施领域,包括道路、铁路、桥梁、隧道等线性工程均在此后版本中得到了不同程度的支持,其显著特征在于IFC 4.1标准版本中新增了IfcAlignment实体,可用于描述线性基础设施工程中的路线信息。
在IFC 4.1之后的迭代版本中,IFC 4.2引入IfcBridge和IfcBridgePart实体,由此展开对桥梁结构的描述,其中还涵盖了对支座、深基础和预应力管道等离散构件的定义;而IFC 4.3则进一步加大对基础设施领域的覆盖,引入IfcPort、IfcRailway和Ifc-Road实体,并新增标识牌、信号设备、填挖方以及铺装等一系列基础设施相关的实体概念,同时优化了路线的语义化表达,将横断面轮廓和横坡信息纳入路线的标准化表达范畴。
1.2 基于IFC 4.1标准的路线信息模型虽然主流的BIM核心建模软件均已支持IFC标准,但其更新速度比较滞后,目前绝大多数BIM应用软件最高支持IFC 4.1版本,因此本研究以IFC 4.1版本的文件格式作为路线转换的目标格式,即下文所述IFC标准具体指IFC 4.1标准。
图 1为基于IFC标准的路线信息模型。IFC标准中使用IfcAlignment实体表示路线信息,IfcProject和IfcSite则分别代表项目信息和场地信息,三者的空间结构关系为:单个项目可包含多个场地,而单个场地下亦可具有多条路线。IfcProject与IfcSite通过IfcRelAggregates关系实体相关联,IfcAlignment则通过IfcRelContainedInSpatialStructure关系实体与IfcSite建立联系。IfcAlignment实体的路线几何信息由Axis属性表达,即IfcAlignmentCurve实体,该实体中Horizontal和Vertical属性分别对应路线信息中的平曲线和竖曲线。在IFC标准中,平曲线线元包括直线、圆曲线和缓和曲线,其中缓和曲线分为回旋线、Bloss曲线、余弦曲线等6种类型;竖曲线线元则包含直线、圆曲线和抛物线3种类型。由此可知,IFC标准中的线元类别与中国现行的公路路线设计规范(JTG D20—2017)[11]一致。平竖曲线线元的描述结构存在着一定差别,例如竖曲线中IfcAlignment2DVertical的Segments属性直接对应线元实体的集合;而平曲线IfcAlignment-2DHorizontal实体的Segments属性则由IfcAlignment-2DHorizontalSegment节段实体组成,该节段实体的CurveGeometry属性分别对应平曲线的各个线元实体。平竖曲线线元实体的属性继承关系如图 2所示。IFC标准中,平曲线线元要素包括起点坐标、起点方位角和曲线长度。对于圆曲线而言,其对应实体中还新增了曲线半径和转向参数,其中转向参数为Bool类型,True代表逆时针。由于国内规范推荐使用回旋线,因此缓和曲线中TransitionCurveType属性值一般设置为CLOTHOIDCURVE。竖曲线线元要素由起点里程、桩号间隔、起点高程和起点斜率组成。StartDisAlong属性值为竖曲线线元起点桩号与平曲线起点桩号的差值,当且仅当平曲线起点桩号为K0+000时,等于竖曲线线元的起点桩号。IsConvex表示竖曲线的凹凸特性,该值可由线元的起终点斜率计算获得,当为True时,表明为凸曲线。HorizontalLength表示线元起终点之间的桩号间隔,即线元所在平曲线的长度。关于平竖曲线线元的其余属性,图 2中已给出中文注解,由于篇幅限制,这里不再一一说明。
2 EICAD数据与IfcAlignment的转换 2.1 EICAD数据解析
EICAD是一款基于AutoCAD平台的集成交互式道路与立交设计软件,其路线设计成果可导出为相应的文本文件进行存储和传递,其中包括交点设计文件*.JD、积木法线元单元文件*.ICD、竖曲线文件*.SQX以及桩号断链文件*.DL等。对于平曲线而言,EICAD提供了交点法和积木法2种输出方式,而IFC标准中的路线表达则采用的是线元法的思想,与积木法类似,因此本文仅以ICD文件作为平曲线的成果文件展开研究。
如图 3所示,在ICD文件的线元描述语句中,不同参数以逗号进行分隔,由左至右,第1个值用于标识线元的类型,例如1和2分别代表直线和圆曲线,详见表 1;其余值则为描述该线元的参数数据,不同线元类型均具有固定的数据排列格式。SQX文件采用交点法来表达竖曲线线元信息,故而文件内容中仅包含起终点和变坡点的桩号、高程以及竖曲线半径信息,这意味着EICAD竖曲线的定义不支持抛物线线型的表达。此外,当路线数据存在断链时,竖曲线桩号的表达方式更改为“桩号_断链号”。断链文件由断链位置处的起终点桩号构成,每行对应一个断链,第1个值为断链前的终点桩号,第2个值为断链后的起点桩号。
|
| 图 3 EICAD实例文件 |
| 类别 | 线元类型 | EICAD标识 | IFC实体 |
| 平曲线 | 直线 | 1 | IfcLineSegment2D |
| 圆曲线 | 2 | IfcCircularArcSegment2D | |
| 完全缓和曲线(∞-R) | 3 | IfcTransitionCurveSegment2D | |
| 完全缓和曲线(R-∞) | 4 | ||
| 不完全缓和曲线(R1-R2) | 5 | ||
| 不完全缓和曲线(R2-R1) | 6 | ||
| 竖曲线 | 直线 | 采用交点法表示曲线过渡默认为圆曲线 | IfcAlignment2DVerSegLine |
| 圆曲线 | IfcAlignment2DVerSegCircularArc | ||
| 抛物线 | IfcAlignment2DVerSegParabolicArc | ||
| 注:R1、R2分别为缓和曲线起终点的曲率半径,且R1>R2。 | |||
2.2 IFC线元属性值映射
对比EICAD路线输出文件(图 3)与IFC线元实体属性继承关系(图 2),不难发现两者均通过记录路线线型单元的几何特征数据来描述路线信息,因此在线元参数方面存在一些交集。但是,基于积木法和交点法的路线设计思路大大简化了EICAD平竖曲线的文件数据,而IFC路线信息的描述方式虽采用了线元法的设计理念,但各个线元的参数表达更加完整(表 2),即每个线型单元可独立存在,因此在数据映射过程中,需要经过公式换算才能获得完整的IFC线元属性值。
| 类别 | IFC属性 | 线元参数名 | EICAD参数 |
| 平曲线 | StartPoint | 起点 | × |
| StartDirection | 起始方位角 | × | |
| SegmentLength | 线元长度 | √ | |
| Radius | 半径 | √ | |
| IsCCW | 转向 | √ | |
| 竖曲线 | StartDistAlong | 起始桩号 | × |
| HorizontalLength | 桩号间隔 | × | |
| StartHeight | 起始高程 | × | |
| StartGradient | 起始斜率 | × | |
| Radius | 半径 | √ | |
| IsConvex | 凹凸类型 | × | |
| 注:表中的IFC属性代表类型属性,例如Radius在缓和曲线中可指代起点半径和终点半径。 | |||
2.2.1 平曲线参数映射
根据路线切线连续的原则,IFC平曲线线元属性值的换算也可理解为已知线元起点参数求解终点参数的过程。图 4为平曲线线元参数计算示意图,其中[xi, yi]代表线元起终点的二维坐标,ρi为切线方位角,Li为线元长度,R为半径。根据EICAD平曲线的线元参数,已知[x0, y0]、ρ0、L0、曲线半径R、回旋线参数A以及曲线转向值δ(右转为1,左转为-1)的条件下,换算公式[12]如下:
|
| 图 4 平曲线线元参数计算图示 |
1) 直线线元参数。
由图 4可得
| $ \left\{\begin{array}{l} x_{1}=x_{0}+L_{0} \cos \rho_{0}, \\ y_{1}=y_{0}+L_{0} \sin \rho_{0}, \\ \rho_{1}=\rho_{0} . \end{array}\right. $ | (1) |
2) 圆曲线线元参数。
如图 5所示,所要求解的圆曲线线元参数可由直角坐标系分解得到
| $ \left\{\begin{array}{l} \rho=\rho_{2}+\alpha, \\ \mathrm{d} x=\cos \rho \mathrm{d} L, \\ \mathrm{d} y=\sin \rho \mathrm{d} L. \end{array}\right. $ | (2) |
|
| 图 5 圆曲线线元参数计算示意图 |
其中:α为方位角差,
于是
| $ \left\{\begin{array}{l} \mathrm{d} x=R \delta \cos \rho \mathrm{d} \rho, \\ \mathrm{d} y=R \delta \sin \rho \mathrm{d} \rho. \end{array}\right. $ | (3) |
两边在[ρ2, ρ3]区间内积分可得坐标方程为
| $ \left\{\begin{array}{l} x_{3}=x_{2}+R \delta\left(\sin \left(\rho_{2}+\frac{L_{2} \delta}{R}\right)-\sin \rho_{2}\right), \\ y_{3}=y_{2}-R \delta\left(\cos \left(\rho_{2}+\frac{L_{2} \delta}{R}\right)-\cos \rho_{2}\right). \end{array}\right. $ | (4) |
3) 缓和曲线(∞-R)线元参数。
缓和曲线的基本公式为
| $ A^{2}=L r. $ | (5) |
其中:A是回旋线参数,L为圆弧任意一点至起点的长度,r为任意一点处的曲率半径。
如图 6所示,以缓和曲线起点切线为x轴、法线为y轴建立局部直角坐标系,其中Δx、Δy分别为该坐标系下曲线上点的坐标值。
|
| 图 6 缓和曲线(∞-R)线元参数计算示意图 |
参照圆曲线的方位角差公式并将缓和曲线公式代入可得
| $ \mathrm{d} a=\mathrm{d} L / r=\frac{L}{A^{2}} \mathrm{~d} L. $ | (6) |
则
| $ a=\rho=\int_{0}^{L} \frac{L}{A^{2}} \mathrm{~d} L=\frac{L^{2}}{2 A^{2}}. $ | (7) |
将式(7)代入式(2)得缓和曲线微分方程为
| $ \left\{\begin{array}{l} \mathrm{d} x=\frac{A}{\sqrt{2 \rho}} \cos \rho \mathrm{d} \rho, \\ \mathrm{d} y=\frac{A}{\sqrt{2 \rho}} \sin \rho \mathrm{d} \rho . \end{array}\right. $ | (8) |
将式(8)中sin ρ和cos ρ分别以级数表示,
| $ \left\{\begin{aligned} \cos \rho=&1-\frac{\rho^{2}}{2 !}+\frac{\rho^{4}}{4 !}-\frac{\rho^{6}}{6 !}+\cdots= \\ &1-\frac{\rho^{2}}{2}+\frac{\rho^{4}}{24}-\frac{\rho^{6}}{720}+\cdots, \\ \sin \rho=&\rho-\frac{\rho^{3}}{3 !}+\frac{\rho^{5}}{5 !}-\frac{\rho^{7}}{7 !}+\cdots= \\ &\rho-\frac{\rho^{3}}{6}+\frac{\rho^{5}}{120}-\frac{\rho^{7}}{5\ 040}+\cdots. \end{aligned}\right. $ | (9) |
对式(8)右侧积分可得
| $ \left\{\begin{array}{l} \int_{0}^{\rho} \frac{A}{\sqrt{2 \rho}} \cos \rho \mathrm{d} \rho=\frac{A}{\sqrt{2}} \int_{0}^{\rho} \frac{\cos \rho}{\sqrt{\rho}} \mathrm{d} \rho= \\ \quad \frac{A}{\sqrt{2}}\left\{2 \sqrt{\rho}\left(1-\frac{\rho^{2}}{10}+\frac{\rho^{4}}{216}-\frac{\rho^{6}}{9\ 360}+\cdots\right)\right\}, \\ \int_{0}^{\rho} \frac{A}{\sqrt{2 \rho}} \sin \rho \mathrm{d} \rho=\frac{A}{\sqrt{2}} \int_{0}^{\rho} \frac{\sin \rho}{\sqrt{\rho}} \mathrm{d} \rho= \\ \quad \frac{A}{\sqrt{2}}\left\{\frac{2}{3} \rho \sqrt{\rho}\left(1-\frac{\rho^{2}}{14}+\frac{\rho^{4}}{440}-\frac{\rho^{6}}{25\ 200}+\cdots\right)\right\} . \end{array}\right. $ | (10) |
由此,对式(8)两边积分得到
| $ \left\{\begin{array}{l} \Delta x=L\left(1-\frac{\rho^{2}}{10}+\frac{\rho^{4}}{216}-\frac{\rho^{6}}{9\ 360}+\cdots\right), \\ \Delta y=\frac{\rho L}{3}\left(1-\frac{\rho^{2}}{14}+\frac{\rho^{4}}{440}-\frac{\rho^{6}}{25\ 200}+\cdots\right) . \end{array}\right. $ | (11) |
将式(5)和(7)代入式(11)有
| $ \left\{\begin{array}{l} \Delta x=L-\frac{L^{3}}{40 r^{2}}+\frac{L^{5}}{3\ 456 r^{4}}-\frac{L^{7}}{599\ 040 r^{6}}+\cdots, \\ \Delta y=\frac{L^{2}}{6 r}-\frac{L^{4}}{336 r^{3}}+\frac{L^{6}}{42\ 240 r^{5}}-\cdots. \end{array}\right. $ | (12) |
转换直角坐标系后得到缓和曲线坐标方程为
| $ \left\{\begin{array}{l} x=x_{1}+\Delta x \cos \rho-\delta \Delta y \sin \rho, \\ y=y_{1}+\Delta x \sin \rho+\delta \Delta y \cos \rho. \end{array}\right. $ | (13) |
缓和曲线终点处的坐标值通过代入r=R、L=L1、ρ=ρ2即可求解。
4) 缓和曲线(R-∞)线元参数。
其推导过程与上述缓和曲线(∞-R)相同,这里不再赘述,具体公式为
| $ \left\{\begin{array}{l} x_{4}=x_{3}-\Delta x \cos \rho_{4}-\delta \Delta y \sin \rho_{4}, \\ y_{4}=y_{3}-\Delta x \sin \rho_{4}+\delta \Delta y \cos \rho_{4} . \end{array}\right. $ | (14) |
式(14)中Δx、Δy和ρ4分别为:
| $ \Delta x=L_{3}-\frac{L_{3}^{3}}{40 R^{2}}+\frac{L_{3}^{5}}{3\ 456 R^{4}}-\frac{L_{3}^{7}}{599\ 040 R^{6}}+\cdots . $ | (15) |
| $ \Delta y=-\frac{L_{3}^{2}}{6 R}+\frac{L_{3}^{4}}{336 R^{3}}-\frac{L_{3}^{6}}{42\ 240 R^{5}}+\cdots. $ | (16) |
| $ \rho_{4}=\rho_{3}-\frac{\delta L_{3}}{2 R}. $ | (17) |
5) 不完全缓和曲线。
对于不完全缓和曲线而言,可将其延长至完整的缓和曲线,然后再拆分为两个完整缓和曲线进行求解。限于篇幅,本文不进行公式推导,具体推导过程可参考文[13]。不完全缓和曲线的坐标方程如下:
(1) 不完全缓和曲线(R1-R2)。
| $ \left\{\begin{array}{l} x_{5}=x_{4}+\Delta x \cos \rho_{4}-\delta \Delta y \sin \rho_{4}, \\ y_{5}=y_{4}+\Delta x \sin \rho_{4}+\delta \Delta y \cos \rho_{4}, \\ \rho_{5}=\rho_{4}+L_{4} \delta / R_{1}+L_{4}^{2} \delta /\left(2 A^{2}\right) . \end{array}\right. $ | (18) |
式(18)中Δx、Δy值分别为:
| $ \begin{gathered} \Delta x=L_{4}-\frac{L_{4}^{3}}{6 R_{1}^{2}}-\frac{L_{4}^{4}}{8 R_{1} A^{2}}-\frac{L_{4}^{5}}{40 A^{4}}+\frac{L_{4}^{5}}{120 R_{1}^{4}}+ \\ \frac{L_{4}^{6}}{72 R_{1}^{3} A^{2}}+\frac{L_{4}^{7}}{112 R_{1}^{2} A^{4}}+\frac{L_{4}^{8}}{384 R_{1} A^{6}}+\frac{L_{4}^{9}}{3\ 456 A^{8}}+\cdots. \end{gathered} $ | (19) |
| $ \begin{gathered} \Delta y=\frac{L_{4}^{2}}{2 R_{1}}+\frac{L_{4}^{3}}{6 A^{2}}-\frac{L_{4}^{4}}{24 R_{1}^{3}}+\frac{L_{4}^{5}}{20 R_{1}^{2} A^{2}}-\frac{L_{4}^{6}}{48 R_{1} A^{4}}- \\ \frac{L_{4}^{7}}{336 A^{6}}+\frac{L_{4}^{6}}{720 R_{1}^{5}}+\frac{L_{4}^{7}}{336 R_{1}^{4} A^{2}}+\frac{L_{4}^{8}}{384 R_{1}^{3} A^{4}}+ \\ \frac{L_{4}^{9}}{864 R_{1}^{2} A^{6}}+\frac{L_{4}^{10}}{3\ 840 R_{1} A^{8}}+\frac{L_{4}^{11}}{42\ 240 A^{10}}+\cdots . \end{gathered} $ | (20) |
(2) 不完全缓和曲线(R2-R1)。
| $ \left\{\begin{array}{l} x_{5}=x_{4}-\Delta x \cos \rho_{4}+\delta \Delta y \sin \rho_{4}, \\ y_{5}=y_{4}-\Delta x \sin \rho_{4}-\delta \Delta y \cos \rho_{4}, \\ \rho_{5}=\rho_{4}+L_{4} \delta / R_{2}-L_{4}^{2} \delta /\left(2 A^{2}\right) . \end{array}\right. $ | (21) |
式(21)中Δx、Δy值分别为
| $ \begin{gathered} \Delta x=L_{4}-\frac{L_{4}^{3}}{6 R_{2}^{2}}+\frac{L_{4}^{4}}{8 R_{2} A^{2}}-\frac{L_{4}^{5}}{40 A^{4}}+\frac{L_{4}^{5}}{120 R_{2}^{4}}- \\ \frac{L_{4}^{6}}{72 R_{2}^{3} A^{2}}+\frac{L_{4}^{7}}{112 R_{2}^{2} A^{4}}-\frac{L_{4}^{8}}{384 R_{2} A^{6}}+\frac{L_{4}^{9}}{3\ 456 A^{8}}-\cdots. \end{gathered} $ | (22) |
| $ \begin{gathered} \Delta y=\frac{L_{4}^{2}}{2 R_{2}}-\frac{L_{4}^{3}}{6 A^{2}}-\frac{L_{4}^{4}}{24 R_{2}^{3}}+\frac{L_{4}^{5}}{20 R_{2}^{2} A^{2}}-\frac{L_{4}^{6}}{48 R_{2} A^{4}}+ \\ \frac{L_{4}^{7}}{336 A^{6}}+\frac{L_{4}^{6}}{720 R_{2}^{5}}-\frac{L_{4}^{7}}{336 R_{2}^{4} A^{2}}+\frac{L_{4}^{8}}{384 R_{2}^{3} A^{4}}- \\ \frac{L_{4}^{9}}{864 R_{2}^{2} A^{6}}+\frac{L_{4}^{10}}{3\ 840 R_{2} A^{8}}-\frac{L_{4}^{11}}{42\ 240 A^{10}}+\cdots . \end{gathered} $ | (23) |
上述Δx、Δy值均为近似值,但按本文所给出的公式计算可以满足工程和建模精度的要求。
2.2.2 竖曲线参数映射由于SQX文件采用交点法描述曲线几何信息,与基于线元法的IFC竖曲线表达方式截然不同,因此其绝大部分线元属性值需经过平面几何换算获得。此外,SQX文件中包含了断链信息的表达,在换算之前,首先应判断当前EICAD路线是否存在断链,且由于IFC 4.1标准未提供描述断链的实体和属性,故而在竖曲线数据提取过程中,应同步读取断链文件中数据,将竖曲线桩号值减去由断链引起的桩号累计差值,从而获得实际的桩号数据。
图 7为竖曲线线元参数计算示意图,横坐标代表桩号,纵坐标代表高程。取3个连续的变坡点为一个节段实例,[di, zi]和[dj, zj]即所要求解的IFC线元属性值。图 7中:[d, z]表示某位置处的桩号和高程,ki为斜率;R为竖曲线半径,σ为[d0, z0]处的方位角,
| $ \left\{\begin{array}{l} d_{i}=d_{1}-R \cos \sigma / \tan \lambda-\sum\limits_{i=2}^{n} \Delta_{i} ,\\ z_{i}=z_{1}-R \sin \sigma / \tan \lambda. \end{array}\right. $ | (24) |
| $ \left\{\begin{array}{l} d_{j}=d_{1}+R \cos \varsigma / \tan \lambda-\sum\limits_{i=2}^{n} \varDelta_{i},\\ z_{j}=z_{1}+R \sin \varsigma / \tan \lambda. \end{array}\right. $ | (25) |
|
| 图 7 竖曲线线元参数计算示意图 |
式(24)和(25)中
| $ \kappa_{0}=\frac{z_{1}-z_{0}}{d_{1}-d_{0}} . $ | (26) |
| $ \kappa_{1}=\frac{z_{2}-z_{1}}{d_{2}-d_{1}} . $ | (27) |
| $ \sigma=a \tan \kappa_{0} . $ | (28) |
| $ \varsigma=a \tan \kappa_{1} . $ | (29) |
| $ \lambda=\left\{\begin{array}{l} \frac{{\rm{ \mathsf{ π} }}+a \tan \kappa_{0}-a \tan \kappa_{1}}{2}, \kappa_{1} \geqslant \kappa_{0} ; \\ \frac{{\rm{ \mathsf{ π} }}-a \tan \kappa_{0}+a \tan \kappa_{1}}{2}, \kappa_{1}<\kappa_{0} . \end{array}\right. $ | (30) |
为了验证上述方法的可行性,本文自主开发了基于IFC 4.1标准的EICAD路线数据转换程序,该程序主要分为3个模块(图 8):1) 输入模块。该模块用于输入EICAD平竖曲线设计文件以及断链设计文件。2) 数据转换模块。该模块是程序的核心部分,承担对输入数据的反序列化和参数映射任务。3) 输出模块。该模块借助于xBIM[14]解析工具包实现IFC实体的创建、属性赋值以及数据导出功能。
|
| 图 8 EICAD路线数据转换程序的模块设计 |
由于EICAD成果文件均为文本文件,因此可利用StreamReader类以流的形式按行读取文件数据,再对获取到的字符串进行强制转换,从而获得double类型的参数数值。数据的反序列化是根据字节流中保存的对象状态及描述信息重建对象实例。本程序依照EICAD平竖曲线线元参数设定,分别创建了相应的平曲线数据模型类、竖曲线数据模型类和断链数据模型类,不同类用于封装特定的文本语句。以SQX文件为例,SQXStart类可存储起点桩号及高程信息,SQXPVI类对应竖曲线变坡点信息,而SQXEnd类则用于封装终点桩号及高程信息。由于平面几何解析方法的区别,平竖曲线线元参数映射在算法设计方面存在一定差异。对于平曲线而言,所要换算的终点参数由上一个线元的终点参数和当前线元的参数决定,因此可实现逐行映射;而对于竖曲线而言,所要计算的起弧点和终弧点参数由上一个变坡点、当前变坡点和下一个变坡点共同决定,因此需待反序列化程序全部完成后,再次遍历对象集合进行换算。根据换算结果,创建IFC线型单元实体,并将对应的映射参数赋值给实体属性。在输出IFC文件时,考虑到编程效率和易用性,程序使用了xBIM中的xBIM Extentials库,其优势在于支持IFC 4.1版本,且具有较高的处理效率。
在本研究中,程序采用Visual Studio 2019作为开发平台,基于.NET Framework 4.6框架用C#语言进行开发,其中xBIM Extentials库为5.1.297版本。图 9为EICAD路线数据转换程序的用户界面。IFC验证软件则采用3D Experience CATIA 2019,该BIM核心建模软件支持IFC 4.1路线导入功能。
|
| 图 9 EICAD路线数据转换程序界面及IFC输出文件 |
以某道路项目中带断链的EICAD设计成果文件为例,测试程序的有效性。在测试过程中,程序能够快速地完成数据转换工作。将转换后的IFC文件导入CATIA软件后的可视化效果如图 10所示。在实际工程中,高程在桩号方向上的变化不易体现,图 10中的竖曲线是经过比例调整之后的效果。结果表明,CATIA能够准确地识别出IFC路线信息,并在结构树中保留平竖曲线的定义,且生成的路线具有可编辑性。由于CATIA软件的识别精度为0.001 mm,这意味着文中所给出参数映射公式能够满足工程和建模精度的要求。综上,本研究所开发的基于IFC 4.1标准的EICAD路线数据转换程序能够满足二维路线数据与三维BIM应用软件之间的交互需求。
|
| 图 10 IFC路线数据导入结果 |
4 结语
本文提出了一种基于IFC 4.1标准的EICAD路线数据转换方法,分析了IFC标准中的路线信息模型和属性继承关系,并通过剖析EICAD平竖曲线设计文件的线参数,构建EICAD线元参数与IFC线元属性间的映射关系,设计并开发了EICAD路线数据转换程序,最终通过实际项目的路线设计文件转换验证了路线数据转换方法的可行性。该方法解决了二三维协同设计时EICAD路线数据无法有效传递的问题,具有精度高、兼容性强、高度集成等优点,且能够较为完整地还原路线设计信息,对于推进线性工程项目的正向设计和基于BIM模型的路线设计合规审查具有重要意义。
| [1] |
张建平, 曹铭, 张洋. 基于IFC标准和工程信息模型的建筑施工4D管理系统[J]. 工程力学, 2005, 22(S1): 220-227. ZHANG J P, CAO M, ZHANG Y. A 4D construction management system based on IFC standard and engineering information model[J]. Engineering Mechanics, 2005, 22(S1): 220-227. (in Chinese) |
| [2] |
马智亮, 滕明焜, 任远. 从BIM模型提取建筑能耗监测静态数据的方法[J]. 哈尔滨工业大学学报, 2019, 51(12): 187-193. MA Z L, TENG M K, REN Y. Method of extracting static data for building energy consumption monitor from BIM[J]. Journal of Harbin Institute of Technology, 2019, 51(12): 187-193. DOI:10.11918/j.issn.0367-6234.201901014 (in Chinese) |
| [3] |
胡振中, 田佩龙, 李久林. 基于IFC的传感器信息存储与应用研究[J]. 图学学报, 2018, 39(3): 522-529. HU Z Z, TIAN P L, LI J L. Research on IFC-based storage and application of sensor information[J]. Journal of Graphics, 2018, 39(3): 522-529. (in Chinese) |
| [4] |
KIM H, SHEN Z H, KIM I, et al. BIM IFC information mapping to building energy analysis (BEA) model with manually extended material information[J]. Automation in Construction, 2016, 68: 183-193. DOI:10.1016/j.autcon.2016.04.002 |
| [5] |
林佳瑞, 张建平. 基于IFC的绿色性能分析数据转换与共享[J]. 清华大学学报(自然科学版), 2016, 56(9): 997-1002. LIN J R, ZHANG J P. Data conversion and sharing for building performance analyses based on IFC[J]. Journal of Tsinghua University (Science and Technology), 2016, 56(9): 997-1002. (in Chinese) |
| [6] |
邓雪原, 张之勇, 刘西拉. 基于IFC标准的建筑结构模型的自动生成[J]. 土木工程学报, 2007, 40(2): 6-12. DENG X Y, ZHANG Z Y, LIU X L. Automatic generation of structural model from IFC-based architectural model[J]. China Civil Engineering Journal, 2007, 40(2): 6-12. DOI:10.3321/j.issn:1000-131X.2007.02.002 (in Chinese) |
| [7] |
王轩, 胡笳, 杨晖柱, 等. 基于工业基础类数据标准的结构模型转换技术[J]. 同济大学学报(自然科学版), 2014, 42(6): 836-843. WANG X, HU J, YANG H Z, et al. Transformation technique of structural models based on Industry Foundation Classes standard[J]. Journal of Tongji University (Natural Science), 2014, 42(6): 836-843. (in Chinese) |
| [8] |
梁小龙. EICAD路线设计软件与Bentley平台交互数据接口程序[J]. 公路, 2019, 64(12): 62-66. LIANG X L. Data interface program between EICAD route design software and Bentley platform[J]. Highway, 2019, 64(12): 62-66. (in Chinese) |
| [9] |
HULER M, ESSER S, ANDRE B. Code compliance checking of railway designs by integrating BIM, BPMN and DMN[J/OL]. Automation in Construction, 2020, 121: 103427. https://doi.org/10.1016/j.autcon.2020.103427.
|
| [10] |
Building SMART International. IFC overview summary[S/OL]. (2010-03-03)[2020-11-25]. http://www.buildingsmarttech.org/specifications/ifc-overview/ifc-overview-summary.
|
| [11] |
中华人民共和国交通运输部. 公路路线设计规范: JTG D20—2017[S]. 北京: 人民交通出版社, 2017. Ministry of Transport of the People's Republic of China. Design specification for highway alignment: JTG D20—2017[S]. Beijing: China Communication Press, 2017. (in Chinese) |
| [12] |
许金良. 道路勘测设计[M]. 4版. 北京: 人民交通出版社, 2016. XU J L. Road survey and design[M]. 4th ed. Beijing: China Communication Press, 2016. (in Chinese) |
| [13] |
闻道秋, 贡云兰. 不完全缓和曲线的计算[J]. 公路交通科技, 2002, 19(1): 37-39, 44. WEN D Q, GONG Y L. Calculation of incomplete spiral curve[J]. Journal of Highway and Transportation Research and Development, 2002, 19(1): 37-39, 44. DOI:10.3969/j.issn.1002-0268.2002.01.011 (in Chinese) |
| [14] |
xBIM Team. xBIM toolkit [EB/OL]. (2016-04-10)[2020-11-25]. https://docs.xbim.net/index.html.
|


