线段之间的关系及程序实现(上)
2019-06-06
1、问题的提出
1)二次深化设计
预应力二次深化设计是衔接预应力结构设计和预应力施工的重要环节,是衡量一个预应力施工企业是否专业的主要指标。
地下车库二次深化,就是根据预应力施工现场的实际情况用绘图软件绘制出二次深化图。并将预应力筋曲线坐标、张拉端固定端做法、灌浆孔、张拉方法、后浇带做法、各类洞口预应力筋的布置等在图纸上明确,现场预应力施工项目经理可以依据二次深化设计图纸直接进行安排预应力作业。
2)程序的由来
二次深化设计还是预应力工程量计算的唯一依据,因此预应力工程量软件应该能够读取预应力二次深化设计图纸。地下车库的预应力材料含量大,如果按照传统的办法逐个查找预应力筋来计算工程量,很容易造成错漏,程序是解决这种重复、工作量大的最佳办法。
预应力筋按照束来布置,因此在同一个位置,不可能存在同样的预应力筋,也就是不可能存在完全重复的预应力束,如果存在那就是绘图过程中存在错误。为了保障预压应力的连续性,预应力筋需要交叉锚固,因此存在部分重复的现象(如图a、图b)。

图a

图b
特别短的预应力筋也是没有意义的,就是绘图过程中可能产生的一些失误。譬如,将一些标注线添加在预应力筋图层中,从而导致结果没意义或是程序崩溃。
另外,为了建立开来预应力独有的前处理图形程序,研究轴网的数据结构也是很有必要的,而轴网是数据结构中典型的图结构,图结构有两个关键结构数据,即点和线段。轴网是不允许相交的,但是相交于端点是允许的。所以,彻底研究线段之间的关系显得尤为重要。
2、两线段可能存在的关系
1)相交(同一平面内) Intersection
①IntersectWith: 线段AB和线段CD在线段中部相交于同一个点O

②ExtendedIntersection: 线段AB和线段CD相交于端点

③EndpointIntersection:线段AB和线段CD暂处于不相交的状态,当延长两线段时相交于一点O

2)平行 但不同线 parallel:线段AB和线段CD在同一平面内且两条线段间距离相等

3)相离 Phase:线段AB和线段CD不在同一个平面且延长也无法相交于一点

4)同线
①WithLine:选段AB和线段CD同一直线上但无重叠部分

②PartitialOverLap:两线段在同一直线上,有部分重叠CB

③EntireOverLap:两线段完全重合

5)包含 Contains:线段AB和线段CD在同一直线上且线段CD在线段AB上

3、解析两线段关系
有两条线段AB、CD(如图1),判断两个线段的关系。

A(X1,Y1),B(X2,Y2),C(X3,Y3),C(X4,Y4)
用向量表示两线段:

两条线段交点的向量:
(如图2)


当t,u∈[0,1]时,两线段有交点
求t,u:

同理可得:

根据向量积运算律的交换律可知:


最终得出:

若
,则
与
的夹角为0°或180°
此时,
、
平行或同线(如图3)

若
,则
与
的夹角为0°或180°
此时,A在线段CD的直线上(如图4)

1)平行不共线:
且
2)实际相交:

且t,u∈[0,1],交点为
3)延长相交:
且t,u∈(﹣∞,0)∪(1,﹢∞)4)同线但不重叠:
且
①

maxAB<minCD
②

maxCD<minAB
5)部分重叠:
且
①

minAB<minCD<maxAB<maxCD
②

minCD<minAB<maxCD<maxAB
6)完全重叠:
且

minAB=minCD且maxAB=maxCD
7)包含:
且
①

minAB<minCD<maxCD<maxAB
②

minCD<minAB<maxAB<maxCD
③

minAB=minCD<maxCD<maxAB
④

minCD=minAB<maxAB<maxCD
⑤

minAB<minCD<maxCD=maxAB
⑥

minCD<minAB<maxAB=maxCD
通过对两线段关系的研究,使得计算工程量软件更加具体,从而形成开来预应力独有的前处理图形程序,更快速、准确的完成预应力筋工程量的计算,提高工作效率。