首页 | 本学科首页   官方微博 | 高级检索  
相似文献
 共查询到18条相似文献,搜索用时 171 毫秒
1.
直线段的裁剪是图形绘制中的基本问题,针对当前主流的直线段裁剪算法,或者不能适应一般多边形窗口的裁剪,或者在复杂裁剪情况下裁剪效率低下的问题,提出了一种高效的一般多边形线段裁剪算法.该算法排除掉明显不在裁剪窗口内的直线段,以及相交于伪交点的情况,再利用改进的交点计数法确定位于窗口内的区间.实验结果表明,该算法不仅具有高效性,还能适应于复杂的裁剪情况.  相似文献   

2.
基于顶点编码的多边形窗口线裁剪高效算法   总被引:12,自引:0,他引:12  
从多边形窗口线裁剪的本质特征出发,首次提出窗口顶点编码的新概念。以被裁剪直线为参照系,将多边形窗口划分为正区、负区和近零区三类区域,从而快速完成多边形窗口顶点编码。通过窗口顶点编码与传统的线段编码相结合,无须求交即可快速排除大部分窗外线段;进一步可以直接得到与直线相交的窗口边,加快了求交进程。更有意义的是,通过窗口顶点编码还可以准确判断并高效处理如下两类特殊相交情况:裁剪直线通过多边形的顶点、裁剪直线通过多边形的边。实验结果表明,新算法提高了裁剪效率并具有很好的稳定性。  相似文献   

3.
Cohen-Sutherland裁剪算法因直线与窗口边界求交点次数多而降低算法效率。提出了一种改进Sutherland-Cohen裁剪算法,将完全在窗口内和窗口外的直线判断出来,根据直线端点编码确定辅助线,利用平面上三点的关系判断直线与窗口的哪条边相交。改进的算法使得求交点次数降为最多两次,且避免计算斜率与距离,大大提高算法的效率。算法思想简单,操作方便,有利于硬件实现,对图形学的应用具有重要的实用价值。  相似文献   

4.
直线裁剪是几何造型中的重要内容。提出一种通过二重编码和坐标变换实现圆形窗口裁剪直线的算法。该算法首先通过二重编码快速舍弃大部分位于窗口外的直线段,然后通过坐标变换判断出剩余直线段与圆形窗口的相对位置,并求出其交点。应用实例表明,与其他算法相比,该算法简化了裁剪的逻辑判断过程,且将求交过程简化为加减法的运算,避免了求解二次方程,故大大提高了算法效率。  相似文献   

5.
一个有效的多边形窗口的线裁剪算法   总被引:27,自引:1,他引:27  
刘勇奎  颜叶  石教英 《计算机学报》1999,22(11):1209-1214
已有的线剪裁算法都是针对矩形窗口或凸多边形窗口的,对于一的多边形窗口(包括凹多边形)的线剪裁,目前尚无有效的算法,而这样的算法却有更普遍的应用意义。该文提出一个对于一般多边形窗口的线剪裁算法。该算法在被裁剪直线的延长线上取一固定点,然后求多边形窗口的每一顶点到该固定点引线的斜率。这样对于每个窗口边只需判断被裁剪直线的斜率是否在该边两顶点到固定点引线斜率之间,就可判定直线与边是否相交,因此,每处理一  相似文献   

6.
在智能CAD、图形识别与理解等复杂图形应用系统中,由于图元数量多、图元间关系复杂,且系统实时交互响应要求较高,现有圆弧裁剪算法较难满足要求.为此提出一种从2个角度大幅提高圆弧裁剪效率的快速圆弧裁剪算法.首先按圆弧与矩形裁剪窗口的位置关系,通过所在圆、圆弧、分割后的各象限圆弧段与裁剪窗口最多进行三层次适应性相关测试,以较少的操作尽可能多地排除与裁剪窗口不相交的圆弧;其次对剩余的、需通过求交操作完成裁剪的圆弧给出基于查表法的圆弧-直线交点获取方法,避免了复杂的开方操作,可快速获取裁剪结果.在图形识别及智能CAD等应用中的实验结果表明,采用文中算法可较大地提高效率.  相似文献   

7.
在圆形窗口圆心为坐标原点的前提下,确定两端点同时在外切正方形某边 界之外或至少有一端点在圆形窗口之内的线段之后,当线段两端点都在圆形窗口之外时:如 果线段所在直线在x 或y 任意坐标轴上截距的绝对值小于或等于圆半径r,则可快速判断线 段与圆形窗口是否相交;否则,再根据点-线位置关系以及所引切线与线段分别相交外切正 方形边的交点坐标相比较判断线段与圆形窗口是否相交。该方法可以加快线段与圆形窗口的 求交进程,避免复杂的辅助操作,显著提高裁剪效率。  相似文献   

8.
一种圆形窗口裁剪的新方法   总被引:9,自引:2,他引:9  
通过对直线段相对圆的各种位置关系和深入的研究,提出了一种简单而迅速的圆形窗口裁剪算法。该算法的基本思想是,首先利用圆心到直线段所在直线的距离及从圆心向直线段所引的垂直射线,判别直线段与圆的位置关系,在确定直线段与圆形窗口有交点的情况下,用旋转矢量法求出交点。  相似文献   

9.
针对任意多边形窗口内圆的裁剪问题,本文提出一种更加全面、有效的裁剪算法.该方法提出借助x-扫描线算法来判断圆和多边形窗口的位置关系,排除圆完全在窗口内或者窗口外的情况;针对多边形窗口和圆相交的情况,按照逆时针方向依次求出多边形各边与圆的交点;最终,通过判断两点间的关系,决定两点之间画线还是画弧,完成圆的裁剪.实验结果表明,该方法能够有效全面的完成多边形窗口的圆裁剪.  相似文献   

10.
根据线段两端点相对于圆形窗口的可能位置讨论裁剪结果。当两端点都在圆形窗口之外时,通过圆切线斜率与线段斜率的比较,及点区域判别来判断线段与窗口的相交情况。在确定线段与圆形窗口有交点的情况下,应用参数化形式求交运算,简化求交方程的构造。实验结果表明,新算法显著提高了裁剪效率。  相似文献   

11.
具有最少算术运算量的二维线裁剪算法   总被引:13,自引:2,他引:13  
王骏  梁友栋 《计算机学报》1991,14(7):495-504
本文在分析现有二维线裁剪算法的基础上,提出了具最少算术运算量的算法.新算法充分利用了矩形裁剪窗口的凸性和窗口边界线平行于坐标轴的特性,沿两组平行的窗口边界线对线段进行裁剪.通过将被裁剪线段定义为有向线段、确定窗口边界的进出边,避免了不必要的求交计算.实际算例表明,这一算法比当前国际上最快的线裁剪算法省时约一年.  相似文献   

12.
An efficient algorithm for line and polygon clipping   总被引:7,自引:2,他引:5  
We present an algorithm for clipping a polygon or a line against a convex polygonal window. The algorithm demonstrates the practicality of various ideas from computational geometry. It spendsO(logp) time on each edge of the clipped polygon, wherep is the number of window edges, while the Sutherland-Hodgman algorithm spendsO(p) time per edge. Theoretical and experimental analyses show that the constants involved are small enough to make the algorithm competitive even for windows with four edges. The algorithm enables image-space clipping against windows whose boundaries are convex spline curves. The paper contains detailed pseudo-code implementation of the algorithm and an adaptation of the simulation of simplicity method for handling degenerate cases.  相似文献   

13.
Line clipping against a polygon is widely used in computer graphics such as the hidden line problem. A newline‐clipping algorithm against a general polygon is presented in this paper. The basic idea of this algorithm is tochange the line to be clipped into a horizontal line by shearing transformation. Then each edge of the polygonalwindow is transformed by a shearing transformation with the same parameters as those used to the line. Eachedge of the polygon is processed against a horizontal line, which makes the clipping process simpler. The result inthis paper shows that less calculation is needed for the new algorithm with a higher speed compared to existingalgorithms.  相似文献   

14.
裁剪算法的核心问题是速度问题,而求裁剪窗口和裁剪对象的交点是影响裁剪速度的主要因素。特别是椭圆对线段的裁剪,由于椭圆的方程是二次的,求椭圆与线段的交点 需要求解一元二次方程,涉及开方运算,非常浪费机器时间。为提高裁剪速度,设计出5位的区域编码,利用此技术能够迅速而准确地判断出椭圆和线段的位置关系。对于完全可见 或显然完全不可见的线段立即做出保留或弃掉的决定,避免求交运算;对于能够明确断定与椭圆相交的线段,采用中点分割算法求椭圆和线段的近似交点,避免求解一元二次方程 和开方运算;对于其他情形的线段通过求解一元二次方程来完成裁剪。基于前述思想设计出的椭圆对线段裁剪算法与现有的同类算法相比,算法实现简单,裁剪速度具有较大提高 。  相似文献   

15.
基于矩形窗口裁剪的圆形窗口裁剪算法   总被引:6,自引:0,他引:6       下载免费PDF全文
本文在研究了一系列圆形裁剪算法的基础上提出了一种以矩形窗口为基础的圆形窗口裁剪算法。  相似文献   

16.
New algorithm for two-dimensional line clipping   总被引:6,自引:0,他引:6  
Line segment clipping is a basic element of the visualization process in a graphics system. So far there exist two approaches for development of algorithms for clipping a line segment with respect to a rectangular window. According to the first approach the line segment locations with respect to the window are described by a certain generalized model. As a result all line segments are clipped identically. The second approach is based on the observation that the great diversity of line segment locations could by systematized in several basic cases. For each one of them the clipping is performed in a preliminary defined way. The algorithm described in the papers uses the second approach. The basic cases of the line segment locations with respect to the window are selected so that the time consuming computations as division and multiplication are reduced to a minimum. An analytical comparison is made with the other algorithms using this approach that are theoretically and experimentally proved to be more efficient than those developed on base of the first approach.  相似文献   

17.
基于凸剖分的多边形窗口线裁剪算法   总被引:1,自引:0,他引:1  
以不增加新点的方式将多边形剖分为一些凸多边形,并基于这些多边形的边建立二叉树进行管理.裁剪计算时,根据二叉树快速地找到与被裁剪线有相交的凸多边形,然后运用高效的凸多边形裁剪算法进行线裁剪.该方法能自适应地降低裁剪计算的复杂度,使其在O(logn)和O(n)之间变化,并在大多数情况下小于O(n),其中n是多边形边数.虽然该方法需要进行预处理,但在许多应用(如多边形窗口对多边形的裁剪)中,其总执行时间(包括预处理时间和裁剪时间)比已有的不需要预处理的裁剪算法少很多.  相似文献   

18.
基于凸片段分解的多边形窗口线裁剪算法   总被引:1,自引:0,他引:1  
将多边形窗口的边顺序地分割成一些片段,使得每个片段都能局部地形成一个凸多边形,称为凸片段,并建立一个二叉树来管理这些凸片段.在裁剪计算时,先根据二叉树快速地找到与被裁剪线段相交的凸片段,再利用高效的凸多边形线裁剪算法对这些凸片段进行裁剪操作.文中算法能有效地降低裁剪计算的时间复杂度,使其在O(logN)~O(N)之间自适应地变化,且大部分情况下时间复杂度小于O(N).  相似文献   

设为首页 | 免责声明 | 关于勤云 | 加入收藏

Copyright©北京勤云科技发展有限公司  京ICP备09084417号