船舶工程计算中图形剪裁方法的改进及应用

2014-03-08 06:42胡铁牛
舰船科学技术 2014年4期
关键词:散点剪裁多边形

祝 林,胡铁牛

(上海交通大学船舶海洋与建筑工程学院,上海 200240)

船舶工程计算中图形剪裁方法的改进及应用

祝 林,胡铁牛

(上海交通大学船舶海洋与建筑工程学院,上海 200240)

提出一种在船舶工程计算中具有广泛用途的用任意闭曲线裁剪任意闭曲线的裁剪方法。将这种改进的裁剪算法与环形积分法相结合编制计算模块,可将原来工程计算中繁琐的运算过程大大简化,可用来处理船舶工程中经常遇到的图形面积和形心的计算等问题。阐述其在船舶工程性能计算中的应用,并通过实例计算验证其精度。

任意闭曲线;图形裁剪;船舶性能计算

0 引言

在船舶工程设计计算过程中,经常要进行各种性能的计算,例如初稳性、破舱稳性等。这些计算要涉及到大量的图形几何特征值 (如面积、形心等)的计算,在之前的设计计算中,通常对不同的计算问题采用不同的计算模型,这种处理方法不仅计算繁琐,而且通用性差。而这些二维图形的几何特征值计算实际上都可看作二维图形剪裁,因此理论上可以用二维图形裁剪的方法对这类问题进行处理。

针对二维裁剪,国内外学者们先后提出许多算法,如凸多边形窗对线段进行裁剪的Cyrus-Beck算法、凸多边形窗对线段进行裁剪的Sutherland-Hodgman算法和任意多边形对任意多边形裁剪的Weiler-Atherton算法[1-3]等。国内的一些学者也提出一些改进的算法或相似的新算法,例如李雪、石广田的一种新的任意四边形窗口线裁剪算法[4];陈涛的适用于凹多边形的Cyrus-Beck改进算法[5]等。

在船舶工程设计计算中,所涉及的图形常为用离散点表示的任意形状图形,裁剪多边形也常为任意闭曲线。而上述二维裁剪方法中被裁剪图形和裁剪多边形大多被限制为多边形。为此,本文从比较成熟的多边形裁剪多边形的Weiler-Atherton算法出发,对其进行改进,使改进后的算法可以用任意闭曲线去裁剪任意形状图形,从而适合船舶与海洋工程设计计算的特点。

利用改进后的裁剪算法并结合环形积分法编制二维图形计算模块,利用该模块可以方便地计算船舶工程设计当中求解二维图形几何特征值的问题,例如,求任意倾斜水线下船体或舱室横剖面面积及形心等。

1 基本原理

1.1 任意闭曲线裁剪任意图形的方法

图形的裁剪运算通过图形边界来进行,当2个图形进行裁剪运算产生新的图形,就意味着产生了新的图形边界,新的边界由原来图形的部分边界构成。求新图形边界的关键是准确求出原图形边界的所有交点的数目、位置及其顺序,进而求得组成新边界的各段原图形边界,按正确的顺序组成新图形边界。利用改进算法进行图形裁剪的基本原理如下(见图1):

现规定被裁减图形A的边界离散点和闭曲线B的离散点均按顺时针方向排序。

图1 改进后裁剪原理示意Fig.1 Principle of improved figure clippingmethod

3)计算交点特征值 (确定求得的交点是入点还是出点)。如果被裁减图形A的边界曲线从该交点按顺时针方向进入裁剪闭曲线B且按逆时针方向则离开裁剪闭曲线B,则该点称为入点;如果被裁减图形A的边界曲线从该交点按顺时针方向离开裁剪闭曲线且按逆时针方向则进入裁剪闭曲线B,则该点称为出点。具体可按如下方法确定:

1.2 环行积分法

求得FC(x,y)后,绕裁剪后图形C的边界闭曲线按顺时针方向进行环行积分,即可求得裁剪后的图形C区域面积等几何特征值。证明如下:

图2 波浪与船体横截面示意图Fig.2 Sketch of wave and ship cross section

2 计算应用

下面结合该方法在船舶处于波浪中时排水量计算中的应用来进一步阐述该改进的二维图形剪裁方法的原理并验证其计算精度。

在求某时刻船舶处于波浪中的排水量时,通常已知该时刻船舶所处区域内波浪在船舶坐标系下的统计散点数据以及该船舶的型值。为了求得船舶的排水量,通常采用先在不同站处进行横截面积积分,再沿船舶纵向进行积分[6],从而求得船舶的排水量。该计算过程当中,在不同站处的横截面即可用二维裁剪的方法进行处理,如图2所示。在下面的算例中,因为该船体横截面及波浪散点数据均对称于Y轴,所以取该船体横截面的一半和可包围这一半横截面的波浪散点数据进行计算 (见图3)。

图3 剪裁实例Fig.3 Example of improved figure clipping

2.1 已知数据

如图3所示,船体半横截面边界所构成的被剪裁闭曲线散点序列见表1(其中点Q是为将船体横截面构成闭曲线而人为增加的点,不包括a,b两点);某时刻某波浪在图3所示坐标系下的统计数据所构成的剪裁闭曲线散点序列如表2所示 (其中点22和点23是为将波浪曲线构成闭曲线而人为增加的两点)。

表1 被裁减闭曲线散点序列 (单位:m)Tab.1 Discrete points of the clipped figure

表2 裁剪闭曲线散点序列 (单位:m)Tab.2 Discrete points of the clipping figure

2.2 求被裁剪闭曲线和裁减闭曲线的拟合方程

将原始的船体横截面散点用参数样条进行拟合,人为增加的点R与相邻点之间用直线拟合,记拟合后的被裁减闭曲线函数为FA;

将原始的波浪散点数据用参数样条进行拟合,人为增加的点与点之间以及人为增加的点与原始的波浪散点之间用直线拟合,记拟合后的裁剪闭曲线函数为FB。

2.3 求入点和出点

令FA=FB,可求得裁剪闭曲线与被裁减曲线的交点有2个,分别为:

根据前面入点和出点的定义可知,点b为入点,点a为出点。

将a和b点的坐标数据分别按顺序放入裁剪和被裁减曲线数据中,在本例中a,b两点恰为裁剪闭曲线的原始数据点5和点18,排列好的数据见表1(包括a,b两点)和表2(标号加粗的5,18两点为交点)。

2.4 求新边界曲线数据

在表1中按顺序需找到入点b,按顺序记录b,C,D,E,F,G,H,I,J,K,L,M,N,O,P,a的数据,并标记这些点属于被裁减曲线;因为a为出点,此时转向表2,从表2中5处按顺序记录5,6,7,8,9,10,11,12,13,14,15,16,17,18的数据,并标记这些点属于剪裁曲线;因为18点属于入点且与初始入点b相同,裁剪结束。

裁剪后的曲线边界由 b(18),C,D,E,F,G,H,I,J,K,L,M,N,O,P,a(5),6,7,8,9,10,11,12,13,14,15,16,17,b(18)等点按顺时针顺序确定,如图4所示。

图4 剪裁后的新图形CFig.4 New figure after clipping

求得新边界后对属于被裁减曲线和裁剪曲线的边界数据点分别按照被裁减曲线和裁剪曲线的拟合方式进行拟合即可。拟合后的曲线方程记为FC。

2.5 求新边界所围成的区域的面积

利用1.2节中的环形积分法,即可求得图4中闭曲线所围部分的面积

式中:D为FC所围成的平面区域;C为D的边界曲线 (方向为顺时针)。

在本例中,将已知数据输入已经编好的计算模块,可得图3阴影部分的面积S=8.189 m2。

2.6 精度分析

实际上,波浪的真实曲线函数为:

由此可见,这种改进后的剪裁方法的计算精度还是非常高的,而且随着有效数据点的增多,这种精度将进一步提高。

3 结语

本文提出一种适用于二维图形裁剪中任意图形裁剪任意图形的改进算法,可以广泛应用于船舶工程设计计算中,计算实例也证明了其计算精度相当可靠。该方法还可应用于船舶与海洋工程工程计算的其他各个领域。例如:求解横剖面形状比较特殊船舶面积和形心;在半潜式钻井平台破舱计算中求解各倾斜水线面下的进水舱体积及形心等。根据该算法编制的计算模块可以方便地作为船舶与海洋工程设计计算的基础模块供开发调用。该方法还可处理二维裁剪中偶尔出现的特殊情况(如裁剪过程出现切点、线段重叠等),进一步提高了该改进算法的通用性。

[1]CYRUS I.BECK J.Generalized two-and-three-dimensional clipping[J].Computer and Graphies,1978,3(1):23 -28.

[2]SUTHERLAND I E.HODGMAN G W.Reentrant polygon clipping[J].Communication of the ACM,1994,17(1):32 -40.

[3]WEILER K,ATHERTON P.Hidden surface removal using polygon area sorting[J].SiGGPAPH 77 Proceedings,1977,11(2):214-222.

[4]李雪,石广田.一种新的任意四边形窗口线裁剪算法[J].兰州交通大学学报,2005,24(6):90 -92.

LIXue,SHIGuang-tian.A new algorithm for line clipping against a general quadrilateral[J].Journal of Lanzhou Jiaotong University,2005,24(6):90 -92.

[5]陈涛.适用于凹多边形的Cyrus-Beck改进算法[J].计算机科学,2006,33(12):217 -220.

CHEN Tao.An improved algorithm of cyrus beck segment clipping to process concave polygon[J].Computer Science,2006,33(12):217 -220.

[6]盛振邦,杨尚荣,陈雪深.船舶静力学.北京:国防工业出版社,1992.

SHENG Zheng-bang,YANG Shang-rong,CHEN Xue-shen.Statics of the ship[M].Beijing:National Defence Industry Press,1992.

The improvement and application of figure clippingmethod in ship design

ZHU Lin,HU Tie-niu
(School of Naval Architecture,Ocean and Civil Engineering,Shanghai Jiaotong University,Shanghai200240,China)

An improved figure clippingmethod is presented,which can bewidely used in ship design and ocean engineering to calculate the area and center of the figures.With the calculation module based on the improved figure clipping method,these complicated operations can be simplified and realized easily.Some examples are given to illustrate it.

closed curve;figure clippingmethod;ship performance calculation

U662

A

1672-7649(2014)04-0049-04

10.3404/j.issn.1672-7649.2014.04.009

2013-01-18;

2013-01-29

祝林(1986-),男,硕士研究生,主要从事船舶与海洋结构物设计制造方面的研究。

猜你喜欢
散点剪裁多边形
多边形中的“一个角”问题
利用Lorenz RR 散点图快速诊断急危重心律失常
多边形的艺术
高血压个体家庭连续自测收缩压特征描述与分析
人定胜天
解多边形题的转化思想
多边形的镶嵌
浑然一体有玄奥——写人作文之人事“剪裁”与“拼接”
冲击波散点和定点治疗肱二头肌长头肌腱炎的临床观察
无人机系统适航标准剪裁案例分析