CN109636879A - 带岛的多边形曲线偏移算法 - Google Patents

带岛的多边形曲线偏移算法 Download PDF

Info

Publication number
CN109636879A
CN109636879A CN201811495256.9A CN201811495256A CN109636879A CN 109636879 A CN109636879 A CN 109636879A CN 201811495256 A CN201811495256 A CN 201811495256A CN 109636879 A CN109636879 A CN 109636879A
Authority
CN
China
Prior art keywords
polygon
vertex
point
offset
invalid
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201811495256.9A
Other languages
English (en)
Inventor
刘圣军
刘韬
刘新儒
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Central South University
Original Assignee
Central South University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Central South University filed Critical Central South University
Priority to CN201811495256.9A priority Critical patent/CN109636879A/zh
Publication of CN109636879A publication Critical patent/CN109636879A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/34Graphical or visual programming
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/20Drawing from basic elements, e.g. lines or circles
    • G06T11/203Drawing of straight lines or curves
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/20Drawing from basic elements, e.g. lines or circles
    • G06T11/206Drawing of charts or graphs

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Image Generation (AREA)

Abstract

本发明公开了一种带岛的多边形曲线偏移算法,它首先对各多边形的时针方向进行定向;其次对多边形偏移方向和时针方向进行约定;接着对多边形上各顶点进行凹点或凸点的判定区分;然后对于判定为凹点的顶点采用法向‑线偏移,对于判定为凸点的顶点采用点偏移;再判定局部无效边并去除;最后去除全局无效边即可得到偏移后的曲线。在整个过程中第一步检测曲线方向并且偏移所有的顶点,时间复杂度为O(n);判定去除局部无效边时,时间复杂度为O(nlogn);去除全局无效边具有O(n2/log(n))的时间复杂度,总而言之,整个偏移算法的时间复杂度可以被视为O(nlogn),降低了算法复杂度。

Description

带岛的多边形曲线偏移算法
技术领域
本发明涉及一种多边形偏移算法,特别是涉及一种带岛的多边形曲线偏移算法。
背景技术
在许多的关于2D偏移等距曲线的矢量算法的研究方法中,有三种方法被广泛应用:使用Voronoi图、基于边-法向偏移和基于角平分线的偏移。其中使用Voronoi图的方法的优势是可以避免自相交的发生。但是由于生成Voronoi图的成本巨大,并且存在数值误差,在快速的算法中很少被使用。基于边-法向偏移在逻辑上是直观和简单的,以往的工作表明,可以使用边的起点和终点沿着边的法线方向进行一段距离的偏移来完成整个多边形的偏移。但是,这种方法的主要问题是需要解决偏移之后边的不连续和自相交问题的情况,并且处理它们是十分耗时的过程,导致算法的复杂性很高并容易出现数值错误。在基于角平分线偏移的方法下,由于角平分线上的点到角两边的距离相等,这样通过处理原始多边形中的角可以得到偏移之后多边形的顶点,按照顺序依次相连便可以得到偏移多边形。然后进行判定,去除局部无效边和全局无效边。但是,仅仅使用点偏移的方法在局部锐角角度极小的情况下因为不生成圆弧会发生局部的偏移量很大的情况,虽然有些算法使用截断进行了改进,但依然不是准确的结果。
发明内容
本发明的目的在于针对现有技术的不足之处,提供一种既能降低算法复杂度又能保证结果准确的带岛的多边形曲线偏移算法。
本发明提供的这种带岛的多边形曲线偏移算法,该算法包括以下步骤:
步骤一、对各多边形的时针方向进行定向;
步骤二、对多边形偏移方向和时针方向进行约定;
步骤三、对于多边形上任一顶点Pi进行凹点或凸点判定,如果为凹点采用法向-线偏移,如图为凸点则采用点偏移;
步骤四、判定局部无效边并去除;
步骤五、去除全局无效边。
在一个具体实施方式中,在步骤一中通过多边形在凸包上的极值点对多边形的时针方向进行定向。
进一步的,在步骤二中约定逆时针方向表示向多边形内部偏移、顺时针方向表示向多边形外部偏移。
在一个具体实施方式中,在步骤三中,Pi与相邻顶点Pi+1之间存在有向边ei,ei=Pi-Pi+1为ei的单位向量,为ei的单位法向量,通过边的连续性定义ei的前向边为ei-1,定义ei的后向边为ei+1
根据公式:对多边形上各顶点进行分类判定,
如果pconvex≤0,则称点P为多边形的凹点,
如果pconvex>0,则称点P为多边形的凸点,
凹点采用法向-线偏移的方式,凸点采用点偏移的方式。
进一步的,在步骤三中,
法向-线偏移的具体步骤为:对点凹Pi通过公式得到偏移后的两个控制点Qi,1和点Qi,2,以Pi为圆心,r为半径画圆,由过圆心和点Qi,1以及过圆心和点Qi,2的两条直线在圆周上截取的一端劣弧为点Pi的偏移曲线;
对凸点pi,偏移后的点qi为:ni为有向边ei的法向量,d为偏移距离的绝对值,φ为|ei|与|ei-1|的夹角。
进一步的,步骤四中判定局部无效边并去除的具体步骤为:
1)定义方向无效的边满足:pipi-1·qiqi-1<0,定义距离无效的顶点qi满足dist(qi,P)≥d,其中P为原始多边形;
2)建立两个链表存放所有无效边和临时无效边;
3)遍历多边形中所有的未遍历过的边
3.1如果所遍历的边是非圆弧边并且满足方向无效,将无效原始边插入临时链表;
3.2判断边的前后顶点是否满足距离无效,如果距离无效则将无效顶点所邻接的边按照顺序插入临时链表,并且向前(后)继续遍历顶点。同时标记边已经遍历,直到遍历的顶点均为有效的顶点;
3.3将临时无效边链表插入存放所有无效边的链表中。
4)遍历所有无效边的链表,建立结构体数组存放前向边、后向边和无效边;
4.1遍历所有结构体中的无效边,使其延长线和不断和有效的前向边、后向边求交,并且向有效的顶点方向截取;
4.2如果在前(后)向边上有交点,则使用交点代替无效顶点,同时去除掉所有的无效边的顶点;
4.3如果在前(后)向边上没有交点,则使用前向边延长线和后向边求交以及后向边的反向延长线与前向边求交得到交点,进而得到新的多边形;
5)将无效边链表的结果依次代替原始多边形的链表,得到新的多边形。
进一步的,在步骤五中去除全局无效边时,
首先,利用扫描线算法,对圆弧进行预处理,采用X轴作为主方向,将圆弧通过主方向上的极值点分成两个圆弧,使扫描线经过时能够将圆弧和折线同等对待;
其次,对于单个多边形,确定所有偏移多边形的自相交顶点,步骤为:
1)定义vLlist、vRlist、vlist分别存放左侧顶点、右侧顶点和自相交顶点,对于多边形中所有的边,左侧顶点插入vLlist,右侧顶点插入vRlist
2)对于vLlist、vRlist分别按照顶点在x轴上的投影坐标排序;
3)建立局部边链表elist,顶点链表指针pL,pR,p;
4)pL、pR在链表中遍历,其中pL一定是pR的前一个不重复的投影;
4.1对于满足满足小于pL并且大于pR的顶点所在边和原始链表中所有边进行求交,将交点插入vlist中,并且记录相对应的边;
4.2将vLlist、vRlist中不满足小于pL并且大于pR的顶点从局部边链表elist移除;
5)将原始多边形插入交点后重新序列化;
接着,重新定义多边形顶点的路由规则,规则为:a、对于原始多边形上的顶点方向不改变;b、对于自相交的顶点,跳转到相交的另一条边上的原始方向;根据该规则将偏移多边形划分成多个简单多边形;
然后,根据原始多边形与偏移后各简单多边形的相交情况将各简单多边形分为O-I多边形,O多边形和I多边形三类,
O-I多边形定义为:包含外多边形偏移边,与内部多边形偏移边有交,
O多边形:包含外多边形偏移边,与内部多边形偏移边无交,
I多边形:仅为内多边形偏移,并且只和内多边形偏移边有交;
最后将O-I多边形和O多边形保留逆时针方向的多边形,I多边形根据步骤四保留顺时针方向的多边形。
本发明在具体实施时首先对各多边形的时针方向进行定向;其次对多边形偏移方向和时针方向进行约定;接着对多边形上各顶点进行凹点或凸点的判定区分;然后对于判定为凹点的顶点采用法向-线偏移,对于判定为凸点的顶点采用点偏移;再判定局部无效边并去除;最后去除全局无效边即可得到偏移后的曲线。在整个过程中第一步检测曲线方向并且偏移所有的顶点,时间复杂度为O(n);判定去除局部无效边时,时间复杂度为O(nlogn);去除全局无效边具有O(n2/log(n))的时间复杂度,总而言之,整个偏移算法的时间复杂度可以被视为O(nlogn),降低了算法复杂度。
附图说明
图1为本发明一个优选实施例的算法过程框图。
图2为多边形顶点判定为凹点或凸点的示意图。
图3为顶点偏移路径示意图。
图4为多边形分类示意图。
图5为算例偏移示意图。
具体实施方式
如图1所示,本实施例提供的这种带岛的多边形曲线偏移算法,包括以下步骤:
(Ⅰ)对各多边形的时针方向进行定向;
由于单个多边形的遍历方式一定会存在顺时针方向和逆时针方向两种,可通过多边形在凸包上的极值点对于复杂多边形(包含圆弧段)的时针方向进行定向。其中凸包上的极值点可以认为是凸包在某个方向(例如x轴方向)上的投影的值的最大或者最小的点。
(Ⅱ)约定逆时针方向表示向多边形内部偏移、顺时针方向表示向多边形外部偏移,其偏移向量r可以取负数表示与时针方向表示的偏移方向相反。
(Ⅲ)A、对于多边形上任一顶点Pi进行凹点或凸点判定;
对于多边形上顶点Pi与相邻顶点Pi+1之间存在有向边ei,ei=Pi-Pi+1为ei的单位向量, 为ei的单位法向量,满足通过边的连续性定义ei的前向边为ei-1,定义ei的后向边为ei+1,这样对于多边形上每个顶点都存在由两个边得到的法向量,对于这两个单位法向和边上的方向法向我们通过公式(1)对于多边形的顶点进行分类。
如果pconvex>0,则称点P为多边形的凸点(如图2(a)所示),
如果pconvex≤0,则称点P为多边形的凹点(如图2(b)、2(c)所示);
A1、对于多边形上判断为凸点的顶点,我们采用点偏移的方式得到偏移后的图形,如图3(b)所示。因为凸点所在的角小于180°,所以偏移之后并没有圆弧而是退化成一个点。由于点一定在角平分线上,所以偏移点到原始点的向量应当满足v=ni-1+ni,然后因为偏移点到原始偏移点的长度应该等于d·sin-1i/2)。所以qi可以表示为:
其中如果使用两个等式,还可以免去三角函数值到角度的换算。
A2、对于多边形上判断为凹点的顶点,我们可以通过方式(3)得到偏移后的两个控制点,如图3(a)所示。因为凹点所在的角为优角,那么偏移后的圆弧的圆心角一定是小于180°的。因此通过这两个点,截取以偏移的顶点为圆心,r为半径的的圆所得到的劣弧就是凹点的准确的偏移曲线。
(Ⅳ)、判定局部无效边并去除;
定义方向无效的边为满足pipi-1·qiqi-1<0的边(因为圆弧一定是等距的并且方向是正确的,所以圆弧所在边一定是方向有效的)。并且定义距离无效的顶点qi为dist(qi,P)≥d,其中P为原始多边形,但是实际上并不需要偏移后的点与原始多边形所有边求交,只需要考虑到局部的情况,所以判断顶点是否距离无效的可以仅仅与一部分局部的方向无效边求距离。距离无效边被定义为两个顶点均是局部距离无效的点。因而我们算法的思路是首先找到方向无效的边然后通过向前和向后的迭代判断顶点的有效性,直到寻找到距离有效的顶点即有效边,即算法1。其伪代码如下:
算法1解释成具体步骤为:
①定义方向无效的边满足:pipi-1·qiqi-1<0,定义距离无效的顶点qi满足dist(qi,P)≥d,其中P为原始多边形;
②建立两个链表存放所有无效边和临时无效边;
③遍历多边形中所有的未遍历过的边
④如果所遍历的边是非圆弧边并且满足方向无效,将无效原始边插入临时链表;
⑤判断边的前后顶点是否满足距离无效,如果距离无效则将无效顶点所邻接的边按照顺序插入临时链表,并且向前(后)继续遍历顶点。同时标记边已经遍历,直到遍历的顶点均为有效的顶点;
⑥将临时无效边链表插入存放所有无效边的链表中。
⑦遍历所有无效边的链表,建立结构体数组存放前向边、后向边和无效边;
⑧遍历所有结构体中的无效边,使其延长线和不断和有效的前向边、后向边求交,并且向有效的顶点方向截取;
⑨如果在前(后)向边上有交点,则使用交点代替无效顶点,同时去除掉所有的无效边的顶点;
⑩如果在前(后)向边上没有交点,则使用前向边延长线和后向边求交以及后向边的反向延长线与前向边求交得到交点,进而得到新的多边形;
将无效边链表的结果依次代替原始多边形的链表,得到新的多边形。
在算法复杂度上,对于一个拥有n个顶点的多边形,计算所有偏移后的顶点到原始多边形的距离,直接计算算法复杂度是O(n3),即使通过边的连续性优化也会有O(n2·log(n))。但是我们算法所得到的结果算法复杂度只有O(n2),如果经过边的连续性优化复杂度可以减少到O(nlogn),并且结果是准确有效的。
在去除局部无效边的过程中,方向有效边的顶点可能是距离无效的,因此可以将所有的情况合并成一个过程。首先,无效边的延长线和不断和有效的前向边、后向边求交并且截取,如果有交则使用交点并且去除掉所有的无效边的顶点。在没有交点的情况下,则使用前向边延长线和后向边求交以及后向边的反向延长线与前向边求交得到交点,进而得到新的多边形。
(Ⅴ)、去除全局无效边;
第一步、进行自相交环的去除;
对于单个多边形而言,在去除掉局部无效边后需要进一步去除全局无效部分。一般来说全局无效边是一些偏移多边形上的自相交的环。所以我们首先需要算出所有偏移多边形的自相交顶点。在计算出所有自相交顶点时,我们采用了扫描线(Sweep Line)算法。扫描线算法能够用于简化计算的主要思想是如果两条线段在主方向上的投影没有重叠,那么这两条线段一定不会有交点。但是由于在上一章节中生成的偏移多边形中含有圆弧,因而传统的算法在如下的情况会出现不正确的结果。我们通过扫描线的特性,将会出现问题圆弧通过主方向上的极值点分成两个圆弧,这样在扫描线经过的时候就能够将圆弧和折线一样对待。
在进行了这样的预处理之后,圆弧可以看作是一段或者两段折线构成。类似于计算机图形学中多边形裁剪算法和多边形布尔运算的方法,我们采用x轴作为主方向,假使扫描线从左向右经过多边形,在某时刻扫描线穿过的边作为一个边的动态集合。在扫描线运动时如果有新的边穿过扫描线时,进行求交运算并且将新的边加入到边的集合。同样如果有边集中的边与扫描线不交,那么在边集中去除这条边。在扫描线从左到右穿过多边形后便能不重不漏的得到所有的交点,伪代码见算法2。
算法2解释成具体步骤为:
①定义vLlist、vRlist、vlist分别存放左侧顶点、右侧顶点和自相交顶点,对于多边形中所有的边,左侧顶点插入vLlist,右侧顶点插入vRlist;
②对于vLlist、vRlist分别按照顶点在x轴上的投影坐标排序;
③建立局部边链表elist,顶点链表指针pL,pR,p;
④pL、pR在链表中遍历,其中pL一定是pR的前一个不重复的投影;
⑤对于满足满足小于pL并且大于pR的顶点所在边和原始链表中所有边进行求交,将交点插入vlist中,并且记录相对应的边;
⑥将vLlist、vRlist中不满足小于pL并且大于pR的顶点从局部边链表elist移除;
⑦将原始多边形插入交点后重新序列化。
去除自相交的环之前我们需要重新定义多边形的自相交和裁剪方式。当然相对于多边形上的点而言,这个过程则仅仅是改变邻接关系、进行重新的路由。因此定义了两条关于顶点的路由规则如下:
①对于原始多边形上的顶点方向不改变;
②对于自相交的顶点,跳转到另一条边上的原始方向。
通过这两个规则我们可以将偏移多边形划分成多个简单多边形。然后对于每个多边形的有效性需要进行判断,即对含有岛的多边形进行裁剪。
第二步、对含有岛的多边形进行裁剪;
在计算出所有的交点并且进行重新连接后,在全局上可能会存在多个方向不一致的多个多边形。通过原始多边形和偏移后边的相交的情况,我们将这些多边形分成三类:
O-I多边形:包含外多边形偏移边,与内部多边形偏移边有交,如图4中的Loop 1、Loop 3和Loop 4;
O多边形:包含外多边形偏移边,与内部多边形偏移边无交,如图4中的Loop 2;
I多边形:仅为内多边形偏移,并且只和内多边形偏移边有交,如图4中的Loop 5。
对于O-I多边形和O多边形我们将保留逆时针方向的多边形,对于I多边形我们将通过算法1保留顺时针方向的多边形即得到偏移后的多边形。
从整个偏移过程来看,对于一个有n个边(包含内部多边形和外部多边形)的情形。第一步检测曲线方向并且偏移所有的顶点,时间复杂度是O(n)。第二步是去除局部无效边的情况,时间复杂度为O(nlogn)。第三部是删除全局无效边其中使用了修改扫描线的算法,具有O(n2/log(n))的时间复杂度。总而言之,偏移算法的时间复杂度可以被视为O(nlogn)。
表1为和2013年Lin Z的含有岛的多边形偏移算法的时间和误差的比较。其中误差在偏移多边形进行上采样,然后计算到原始多边形距离后得到的。表1:偏移曲线算法比较

Claims (7)

1.一种带岛的多边形曲线偏移算法,其特征在于,该算法包括以下步骤:
步骤一、对各多边形的时针方向进行定向;
步骤二、对多边形偏移方向和时针方向进行约定;
步骤三、对于多边形上任一顶点Pi进行凹点或凸点判定,如顶点为凹点采用法向-线偏移,如顶点为凸点则采用点偏移,得到偏移后多边形;
步骤四、对偏移后多边形进行判定局部无效边并去除;
步骤五、对偏移后多边形去除全局无效边。
2.如权利要求1所述的带岛的多边形曲线偏移算法,其特征在于:在步骤一中通过多边形在凸包上的极值点对多边形的时针方向进行定向。
3.如权利要求2所述的带岛的多边形曲线偏移算法,其特征在于:在步骤二中约定逆时针方向表示向多边形内部偏移、顺时针方向表示向多边形外部偏移。
4.如权利要求1所述的带岛的多边形曲线偏移算法,其特征在于:在步骤三中,
Pi与相邻顶点Pi+1之间存在有向边ei,ei=Pi-Pi+1为ei的单位向量,为ei的单位法向量,通过边的连续性定义ei的前向边为ei-1定义ei的后向边为ei+1
根据公式:对多边形上各顶点进行分类判定,
如果pconvex≤0,则称点P为多边形的凹点,
如果pconvex>0,则称点P为多边形的凸点,
凹点采用法向-线偏移的方式,凸点采用点偏移的方式。
5.如权利要求4所述的带岛的多边形曲线偏移算法,其特征在于:在步骤三中,
法向-线偏移的具体步骤为:对点凹Pi通过公式得到偏移后的两个控制点Qi,1和点Qi,2,以Pi为圆心,r为半径画圆,由过圆心和点Qi,1以及过圆心和点Qi,2的两条直线在圆周上截取的一端劣弧为点Pi的偏移曲线;
对凸点pi,偏移后的点qi为:ni为有向边ei的法向量,d为偏移距离的绝对值,φ为|ei|与|ei-1|的夹角。
6.如权利要求5所述的带岛的多边形曲线偏移算法,其特征在于:步骤四中判定局部无效边并去除的具体步骤为:
1)定义方向无效的边满足:pipi-1·qiqi-1<0,定义距离无效的顶点qi满足dist(qi,P)≥d,其中P为原始多边形;
2)建立两个链表存放所有无效边和临时无效边;
3)遍历多边形中所有的未遍历过的边
3.1如果所遍历的边是非圆弧边并且满足方向无效,将无效原始边插入临时链表;
3.2判断边的前后顶点是否满足距离无效,如果距离无效则将无效顶点所邻接的边按照顺序插入临时链表,并且向前(后)继续遍历顶点,同时标记边已经遍历,直到遍历的顶点均为有效的顶点;
3.3将临时无效边链表插入存放所有无效边的链表中;
4)遍历所有无效边的链表,建立结构体数组存放前向边、后向边和无效边;
4.1遍历所有结构体中的无效边,使其延长线和不断和有效的前向边、后向边求交,并且向有效的顶点方向截取;
4.2如果在前(后)向边上有交点,则使用交点代替无效顶点,同时去除掉所有的无效边的顶点;
4.3如果在前(后)向边上没有交点,则使用前向边延长线和后向边求交以及后向边的反向延长线与前向边求交得到交点,进而得到新的多边形;
5)将无效边链表的结果依次代替原始多边形的链表,得到新的多边形。
7.如权利要求6所述的带岛的多边形曲线偏移算法,其特征在于:步骤五中去除全局无效边时,
首先,利用扫描线算法,对圆弧进行预处理,采用X轴作为主方向,将圆弧通过主方向上的极值点分成两个圆弧,使扫描线经过时能够将圆弧和折线同等对待;
其次,对于单个多边形,确定所有偏移多边形的自相交顶点,步骤为:
1)定义vLlist、vRlist、vlist分别存放左侧顶点、右侧顶点和自相交顶点,对于多边形中所有的边,左侧顶点插入vLlist,右侧顶点插入vRlist;
2)对于vLlist、vRlist分别按照顶点在x轴上的投影坐标排序;
3)建立局部边链表elist,顶点链表指针pL,pR,p;
4)pL、pR在链表中遍历,其中pL一定是pR的前一个不重复的投影;
4.1对于满足满足小于pL并且大于pR的顶点所在边和原始链表中所有边进行求交,将交点插入vlist中,并且记录相对应的边;
4.2将vLlist、vRlist中不满足小于pL并且大于pR的顶点从局部边链表elist移除;
5)将原始多边形插入交点后重新序列化;
接着,重新定义多边形顶点的路由规则,规则为:a、对于原始多边形上的顶点方向不改变;b、对于自相交的顶点,跳转到所相交的另一条边上的原始方向;根据该规则将偏移多边形划分成多个简单多边形;
然后,根据原始多边形与偏移后各简单多边形的相交情况将各简单多边形分为O-I多边形,O多边形和I多边形三类,
O-I多边形定义为:包含外多边形偏移边,与内部多边形偏移边有交,
O多边形:包含外多边形偏移边,与内部多边形偏移边无交,
I多边形:仅为内多边形偏移,并且只和内多边形偏移边有交;
最后将O-I多边形和O多边形保留逆时针方向的多边形,I多边形根据步骤四保留顺时针方向的多边形。
CN201811495256.9A 2018-12-07 2018-12-07 带岛的多边形曲线偏移算法 Pending CN109636879A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811495256.9A CN109636879A (zh) 2018-12-07 2018-12-07 带岛的多边形曲线偏移算法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811495256.9A CN109636879A (zh) 2018-12-07 2018-12-07 带岛的多边形曲线偏移算法

Publications (1)

Publication Number Publication Date
CN109636879A true CN109636879A (zh) 2019-04-16

Family

ID=66071996

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811495256.9A Pending CN109636879A (zh) 2018-12-07 2018-12-07 带岛的多边形曲线偏移算法

Country Status (1)

Country Link
CN (1) CN109636879A (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113192158A (zh) * 2021-03-09 2021-07-30 刘梦祈 一种基于计算机几何偏移算法的3d模型放样方法
CN115063324A (zh) * 2022-08-16 2022-09-16 中国电子科技集团公司第二十八研究所 一种用于数据稀疏岛礁的边线平滑外推方法

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113192158A (zh) * 2021-03-09 2021-07-30 刘梦祈 一种基于计算机几何偏移算法的3d模型放样方法
CN115063324A (zh) * 2022-08-16 2022-09-16 中国电子科技集团公司第二十八研究所 一种用于数据稀疏岛礁的边线平滑外推方法
CN115063324B (zh) * 2022-08-16 2022-11-25 中国电子科技集团公司第二十八研究所 一种用于数据稀疏岛礁的边线平滑外推方法

Similar Documents

Publication Publication Date Title
Kallmann Shortest Paths with Arbitrary Clearance from Navigation Meshes.
US5125038A (en) Face and edge trim method for an automatic mesh generation system
Edelsbrunner Computing the extreme distances between two convex polygons
Vahedi et al. Caging polygons with two and three fingers
US10445908B1 (en) Computer handling of polygons
CN107944324A (zh) 一种二维码畸变校正方法及装置
CN109636879A (zh) 带岛的多边形曲线偏移算法
CN109582962A (zh) 分词方法及装置
Günther et al. The arc tree: an approximation scheme to represent arbitrary curved shapes
Martinez et al. Geodesic paths on triangular meshes
WO2020063814A1 (zh) 用于车辆传感器的数据融合方法及装置
Dean et al. An improved method for calculating the no-fit polygon
CN103020402B (zh) 建模方法和装置
CN112001987B (zh) 一种多边形的裁剪方法、装置、电子设备及存储介质
US20130238985A1 (en) Methods and devices for eliminating cracks within pages
CN115239884A (zh) 一种中组立三维模型的重构方法及装置
CN105652799B (zh) 基于边等距偏移的环切轨迹生成方法
CN111089592A (zh) 一种离散曲面中测地线计算方法
Yang et al. Topology Guaranteed B-Spline Surface/Surface Intersection
JP2683026B2 (ja) 線図形ベクトル化装置
Handa et al. Dimension reduction by Manifold Learning for Evolutionary Learning with redundant sensory inputs
JPH0727573B2 (ja) 弧の端点検出回路
JP3143465B2 (ja) 3次元モデル作成装置及び方法
Chen et al. Chaos-ant colony algorithm and its application in continuous space optimization
CN115979202A (zh) 一种基于gis的面积量测方法及系统

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication

Application publication date: 20190416

RJ01 Rejection of invention patent application after publication