CN101923502B - Ring-cutting subdivision method of simple polygon in computer graphics - Google Patents

Ring-cutting subdivision method of simple polygon in computer graphics Download PDF

Info

Publication number
CN101923502B
CN101923502B CN200910234276A CN200910234276A CN101923502B CN 101923502 B CN101923502 B CN 101923502B CN 200910234276 A CN200910234276 A CN 200910234276A CN 200910234276 A CN200910234276 A CN 200910234276A CN 101923502 B CN101923502 B CN 101923502B
Authority
CN
China
Prior art keywords
limit
chain
segment
summit
ring
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.)
Expired - Fee Related
Application number
CN200910234276A
Other languages
Chinese (zh)
Other versions
CN101923502A (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.)
Southeast University
Original Assignee
Southeast 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 Southeast University filed Critical Southeast University
Priority to CN200910234276A priority Critical patent/CN101923502B/en
Priority to PCT/CN2010/073893 priority patent/WO2011057490A1/en
Publication of CN101923502A publication Critical patent/CN101923502A/en
Application granted granted Critical
Publication of CN101923502B publication Critical patent/CN101923502B/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • G06T17/20Finite element generation, e.g. wire-frame surface description, tesselation

Abstract

The invention discloses a ring-cutting subdivision method of simple polygon in computer graphics, comprising: 1) connecting the first vertex of the polygon with four vertexes of an outsourcing diamond of the polygon, wherein for the n<th> vertex of the polygon, n=1; 2) setting n to be n+1, if the n<th> vertex and the first vertex are coincident and the (n-1)<th> vertex and the first vertex are connected into an edge, performing 3); otherwise, performing 2.1),i.e. taking the directed edge from the (n-1)<th> vertex to the n<th> vertex as a probe, if the probe and certain additional edge are overlapped, deleting the overlapped additional edge, carrying out collineation processing, and returning to 2); otherwise, performing 2.2), and if the probe passes through certain additional edge, respectively processing three edges on two sides of the probe, deleting the additional edge, and repeating 2.2); if the n<th> vertex and the first vertex are coincident, respectively processing three edges on two sides of the probe, and performing 3); if the probe is provided with a front collineation vertex, carrying out collineation processing, and otherwise carrying out conventional processing; returning to 2); and 3), correcting the direction of the equilateral polygon.

Description

Ring-cutting subdivision method of simple polygon in the computer graphical
Technical field:
The present invention is applied to computer graphical processing, pattern-recognition, curved surface approaches and the data processing of aspect such as mesh of finite element generation.
Background technology:
The polygon decomposition problem all has very important practical value in a lot of fields.The subdivision method that is proposed at present roughly has following several kinds: triangulation, quadrilateral subdivision (are seen " computational geometry-algorithm and application ", publishing house of Tsing-Hua University, 2005; The 68th page) or protruding subdivision (see " computational geometry in the C language " " Computational geometry in C ", China Machine Press, 2005; The 58th page); What though the optimal algorithm of at present known triangulation can be for linear session, but unusual complicacy, and be off-line.Complexity working time of other subdivision methods all is higher than O (N).And protruding subdivision then possibly need to add extra steiner point and extra limit (seeing " computational geometry-algorithm and application ", publishing house of Tsing-Hua University, 2005, the 232 pages).
Therefore, seek one more easy, particularly online, the linear session subdivision method be always the computational geometry field an open difficult problem (The Open Problems Project, Http:// maven.smith.edu/~orourke/TOPP/P10.html#Problem.10).
Beginning in 2007; I take up the research of this problem; Through the exploration more than 2 years; Finally invented ring-cutting subdivision method of simple polygon in a kind of online computer graphical; Be a series of bulge loops (each summit can be connected with every other summit straight line on the ring or inside) and scrobicular ring (only having a summit can or encircle inside on ring is connected with every other summit straight line) with the simple polygon subdivision exactly, form polygonal a kind of bifurcation subdivision (dimorphic partition), be O's (N) the working time under its worst case.And polygonal ring-cutting subdivision is in case completion can directly be converted into triangulation with scrobicular ring and bulge loop in linear session.
Summary of the invention:
Technical matters: the purpose of this invention is to provide ring-cutting subdivision method of simple polygon in a kind of computer graphical, along with the embedding one by one of polygon vertex, online, accomplish polygonal subdivision with linear session.
Technical scheme: the technical scheme that ring-cutting subdivision method of simple polygon adopts in the computer graphical of the present invention is following:
Step 1.1: set up the XOY plane coordinate, can contain polygonal rhombus one of the polygonal outer setting of treating subdivision, the coordinate on 4 structure summits of rhombus is respectively (a; 0), (0, a), (a, 0) and (0;-a); A is greater than the horizontal scale and the vertical real number of yardstick sum, and horizontal scale is the greater of absolute value of left side or the right side X coordinate of the minimum outsourcing rectangle of polygon, and vertically yardstick is the greater of absolute value of upside or the downside Y coordinate of the minimum outsourcing rectangle of polygon; Rhombus constitutes a ring, and ring is a downstream direction with the counter clockwise direction; , one by one the 1st summit is connected with 4 structure summits of rhombus as the 1st summit with arbitrary summit on the polygon, rhombus is decomposed into 4 than circlet, as initial subdivision set; With in two adjacent on polygon summits with the 1st summit any one as the 2nd summit, suppose that the trend with the 1st summit and the 2nd summit order is polygonal downstream direction;
Step 1.2: one by one the n summit is embedded the subdivision set along polygonal downstream direction, n=2,3,4 ..., N, N+1, N are polygonal number of vertices, the N+1 summit overlaps with the 1st summit;
Step 1.3: if according to the 1st summit, the 2nd summit, the 3rd summit ..., the polygonal trend that forms of the order on 1 summit, N summit to the is clockwise; Then polygonal each summit travel direction is reversed and handle; The upper reaches adjacent vertex that is about to former setting is modified to the downstream adjacent vertex, and the downstream adjacent vertex of former setting is modified to upper reaches adjacent vertex;
The above-mentioned method that the n summit is embedded the subdivision set is:
Step 1.2.1: with the directed edge from n summit, n-1 summit to the is probe, different with the 1st summit as if the n summit, then execution in step 1.2.2; Otherwise; If with the n-1 summit is that then polygon is closed, and this additional side is updated to polygonal limit when having the terminal point of an additional side to be the 1st summit in all additional sides of starting point; Embed and finish, described additional side is by any two directed edges that non-conterminous summit forms; Otherwise,
Step 1.2.2: article one directed edge that is positioned at the probe right side with from the n-1 summit is limit, the 1st right, is the 1st first-in-chain(FIC) with the downstream side on limit, the 1st right, is the 1st last-of-chain with the upstream edge of probe; With i as follow-up counter; I=1, if article one be positioned at limit, the 1st right the left side the additional side with the probe overlapping, then the downstream side with this additional side is the conllinear limit; And delete overlapping additional side, execution in step 1.2.6; Otherwise,
Step 1.2.3: respectively as the beginning and the ending of i segment, described segment is the directed edge of a series of tandem arrays with i first-in-chain(FIC), i last-of-chain; If the i segment is monolateral shape, protruding chain or recessed chain segment, then the i segment is carried out the segment pinching and confirm the alignment probe limit, and hit the limit as i, then execution in step 1.2.5 with the alignment edge that is obtained; As if the i segment is left spill, then execution in step 1.2.4; Otherwise the i segment is right spill, if probe is crossing with the upstream edge of i last-of-chain, then hits the limit with said upstream edge as i; Execution in step 1.2.5; Otherwise,, then hit the limit as i with alignment edge if there is alignment edge to being that the upstream edge of first-in-chain(FIC), i last-of-chain is that the segment of last-of-chain carries out the segment pinching and confirms the alignment probe limit with the i first-in-chain(FIC); Otherwise the upstream edge with the i last-of-chain is that i hits the limit, then execution in step 1.2.5; The last-of-chain of above-mentioned monolateral shape segment is the downstream side of first-in-chain(FIC); Angle<the π of all intermediate vertexs of above-mentioned protruding chain segment; The intermediate vertex of said segment is all summits between the starting point of the starting point of first-in-chain(FIC) and last-of-chain on the segment, and the angle on said summit is to be the angle in two adjacent directed edges left sides of linking with this summit on the segment; Angle >=the π of all intermediate vertexs of above-mentioned recessed chain segment; Above-mentioned left spill segment removes the angle<π of the terminal point of first-in-chain(FIC), the angle >=π of all the other intermediate vertexs on the segment; Above-mentioned right spill segment is except that the angle<π of the starting point of the upstream edge of last-of-chain, the angle >=π of all the other intermediate vertexs on the segment;
Step 1.2.4: if probe intersects with the i first-in-chain(FIC), be that i hits the limit then with the i first-in-chain(FIC), execution in step 1.2.5; Otherwise, be that first-in-chain(FIC), i last-of-chain are that the segment of last-of-chain carries out the segment pinching and confirms the alignment probe limit to downstream side with the i first-in-chain(FIC), if there is alignment edge, then hits the limit as i, otherwise hit the limit as i with the i first-in-chain(FIC) with alignment edge,
Step 1.2.5:, then hit the limit as the conllinear limit, execution in step 1.2.6 with i if i hits the starting point and probe conllinear on limit; Otherwise; Hit the limit as playing initial line, medial side and termination limit with limit, the i right, i first-in-chain(FIC) and i respectively; With the unbounded mode the three limits chain of rings is carried out on the right side of probe; The downstream side, i last-of-chain and the probe that hit the limit with i respectively again carry out the three limits chain of rings with the unbounded mode to the left side of probe as playing initial line, medial side and a termination limit; The new downstream side that hits the limit with the i behind the three limit chains of rings is the i+1 last-of-chain; If hitting the limit with i, probe intersects; The downstream side that then hits the reverse edge on limit with i is the i+1 first-in-chain(FIC), is limit, the i+1 right with the downstream side of the reverse edge of probe, deletes i and hits the limit; As new i, return to step 1.2.3 with i+1; Otherwise; To the reverse edge with probe is that to hit the limit be that the segment of last-of-chain carries out the segment correction for first-in-chain(FIC), i; With newly connect from the additional side on n summit as the right flank limit; Again to being that first-in-chain(FIC), right flank limit are that the segment of last-of-chain carries out the segment correction with the i+1 last-of-chain, with newly connect from the additional side of the starting point of i+1 last-of-chain as the left wing limit; Respectively with the upstream edge on downstream side, left wing limit and the right flank limit on right flank limit as playing initial line, medial side and a termination limit, thereby with the unbounded mode the place ahead of probe is carried out that three limits are a chain of guarantees that the place ahead of popping one's head in is a triangle, embed and finish; The method of above-mentioned segment correction is: if segment is protruding chain; Be that ring limit, last-of-chain are that the bilateral chain of rings is carried out on the stop ring limit then with first-in-chain(FIC); Otherwise if segment is left spill; Be new first-in-chain(FIC) to the downstream side with first-in-chain(FIC) then, last-of-chain is that new segment that new last-of-chain constituted carries out postponing from the recessed chain of upper type and makes it to become monolateral shape or recessed chain, otherwise if segment is right spill; Then to being new first-in-chain(FIC) with first-in-chain(FIC), the upstream edge of last-of-chain is that the new segment of new last-of-chain carries out postponing from the recessed chain of mode down and makes it to become monolateral shape or recessed chain; Finish the segment correction; The method of the above-mentioned bilateral chain of rings is: with the upstream edge on stop ring limit is the ring inner edge, has connected the starting point of encircling the limit and the starting point on stop ring limit, with formed additional side as sealing the limit; If play the ring limit is an additional side and a ring limit long enough; And two rings that work the both sides of encircling the limit then can have been deleted the ring limit playing bigger scrobicular ring of formation under the prerequisite that the terminal point that can form a bigger bulge loop under the situation of being deleted on the ring limit or play the ring limit is not the 1st summit; In like manner; If the ring inner edge also is additional side and ring inner edge long enough; And two rings of the both sides of ring inner edge then can be deleted the ring inner edge forming a bigger bulge loop under the ring inner edge situation of being deleted or not being to form a bigger scrobicular ring under the prerequisite on the 1st summit in the starting point of ring inner edge; Bilateral a chain of the end; Above-mentioned rise ring limit long enough be meant the length on ring limit be at least the ring limit terminal point to the starting point on stop ring limit distance half the or to work the length of encircling the limit be half of length of sealing the limit at least; Above-mentioned ring inner edge long enough is that the length of finger ring inner edge has been that the length half the or the ring inner edge of distance of starting point to the starting point of encircling inner edge on ring limit is length half that seals the limit at least at least; Above-mentioned bulge loop refers to the angle<π on all summits in ring; Above-mentioned scrobicular ring refers in ring except the angle<π on three adjacent summits only being arranged, the angle >=π on all the other all summits;
Step 1.2.6: respectively with limit, the i right, i first-in-chain(FIC) and conllinear limit as playing initial line, medial side and a termination limit; With the bounded mode the three limits chain of rings is carried out on the right side of probe; Again respectively with conllinear limit, i last-of-chain and probe as initial line, medial side and a termination limit; It is a chain of with the bounded mode three limits to be carried out in the left side of probe, if there is the new additional side of downstream direction on the conllinear summit, then with this additional side as follow-up conllinear limit; If the n summit overlaps with the starting point that i hits the limit, then n returns on the summit to the 1st summit and polygon is closed, and the position of coordinating probe and conllinear limit concerns the embedding end; Otherwise; To the downstream side with the probe reverse edge is that first-in-chain(FIC), conllinear limit are that the segment of last-of-chain obtains the limit, middle part and as limit in the right side; Reverse edge with probe has been that the limit is that the bilateral chain of rings is carried out on the stop ring limit in ring limit, the right side then; And connecting n summit and conllinear summit as continuing the limit, the reverse edge of above-mentioned directed edge is end points and limit that direction with it opposite identical with said directed edge; To being that first-in-chain(FIC), probe are that the segment of last-of-chain obtains the limit, middle part and as limit in the left side, be that ring limit, the limit of continuing are that the bilateral chain of rings is carried out on the stop ring limit with limit in the left side with the conllinear limit, the embedding end; The above-mentioned method that segment is obtained the limit, middle part is: if segment is left spill, then the upstream edge with last-of-chain is the limit, middle part, and with first-in-chain(FIC) be encircle the limit, the limit, middle part is that the bilateral chain of rings is carried out on the stop ring limit, obtains end; Otherwise if the downstream side of first-in-chain(FIC) is the upstream edge of last-of-chain, then the downstream side with first-in-chain(FIC) is the limit, middle part, obtains end; Otherwise the downstream side with first-in-chain(FIC) has been that ring limit, last-of-chain are that the bilateral chain of rings is carried out on the stop ring limit, serves as the limit, middle part with the bilateral a chain of new downstream side of first-in-chain(FIC) afterwards, obtains end;
The a chain of method in three above-mentioned limits is:
Step 1.2.5.1: to being that first-in-chain(FIC), medial side are that the segment of last-of-chain carries out the segment correction, playing the start position of initial line new additional side arranged if revise the back to play initial line, then with new additional side as new initial line, otherwise be new initial line with an initial line; Again to be first-in-chain(FIC) with the medial side, to stop the limit be that the segment of last-of-chain carries out the segment correction, if revise the additional side that the start position of back medial side has new downstream direction, then with said additional side as limit in new, otherwise be newly middle limit with the medial side; If an initial line is identical with medial side or medial side is identical with the termination limit or the angle >=π of new middle limit starting point then finishes; As if twice correction result all is recessed chain, then execution in step 1.2.5.2; Otherwise,, then finish if a chain of mode in three limits is the bounded mode; Otherwise being the unbounded mode, if twice correction result all is monolateral shape, has been that ring limit, termination limit are that the bilateral chain of rings is carried out on the stop ring limit with new initial line then, finishes; If a preceding correction result is monolateral shape, a back correction result is recessed chain, to be first-in-chain(FIC) with limit in new, to stop the limit be that the segment of last-of-chain carries out postponing from the recessed chain of upper type, finish; Otherwise a preceding correction result is recessed chain, and a back correction result is monolateral shape, to new initial line be first-in-chain(FIC), new in the limit be that the segment of last-of-chain carries out postponing from the recessed chain of mode down, finish;
Step 1.2.5.2: with limit in new is the 1st strange flanging, and the starting point of new initial line is a upper extreme point, and the starting point that stops the limit is a lower extreme point, and j is a cycle counter, and j=1 carries out the processing of alternately postponing of two recessed chains;
Step 1.2.5.3: if the three limit chains of rings are unbounded modes, and the starting point that j takes turns strange flanging is angle >=π that lower extreme point or j take turns strange flanging starting point, finishes; If the starting point that the three limit chains of rings are bounded mode and j takes turns the upstream edge of strange flanging is that upper extreme point then finishes; Otherwise to take turns strange flanging with j is that first-in-chain(FIC), termination limit are the segment of last-of-chain, postpones to carry out recessed chain from upper type, and takes turns even flanging with the additional side of new connection as j;
Step 1.2.5.4: if the three limit chains of rings are unbounded modes, and the starting point that j takes turns even flanging is angle >=π that upper extreme point or j take turns even flanging starting point, finishes; If the starting point that the three limit chains of rings are bounded mode and j takes turns the downstream side of even flanging is that lower extreme point then finishes; Otherwise to being that first-in-chain(FIC), j take turns the segment that even flanging is a last-of-chain with new initial line, postpone, and take turns strange flanging as j+1 with the downstream side of the additional side of new connection to descend mode to carry out recessed chain certainly; With the j of j+1 as a new round, execution in step 1.2.5.3; The method that above-mentioned recessed chain is postponed is: if from the postponing of upper type, then the upstream edge with first-in-chain(FIC) serves as to observe the limit, otherwise serves as to observe the limit with the downstream side of last-of-chain; Starting point to observe the limit is an observation point, carries out the visible range that observation point is confirmed in the segment pinching, and cuts edge as upper reaches class with the directed edge of the upper reaches reference position of visible range, and the downstream side of the directed edge of the downstream final position of visible range is cut edge as the downstream class; For from the postponing of upper type, be that the bilateral chain of rings is carried out on the stop ring limit to observe that the limit be the ring limit, the downstream class is cut edge, for descend postponing of mode certainly, then with the side cut of upper reaches class be encircle the limit, the observation limit is that the bilateral chain of rings is carried out on the stop ring limit; Behind the bilateral chain of rings, if the starting point of the upstream edge on stop ring limit is identical with the starting point that plays the ring limit, then the new segment that constitutes of the starting point from starting point to the stop ring limit of encircling the limit is monolateral shape, otherwise is recessed chain;
Above-mentioned segment pinching confirms that the method on alignment probe limit is:
Step 2.1: the upstream edge that with the first-in-chain(FIC) is order the 1st limit, last-of-chain is backward the 1st limit, and k is a cycle counter, k=1,
Step 2.2: if the terminal point on order k limit is positioned at the probe left side starting point on order k limit be positioned at the probe right side or with the probe conllinear; Be alignment edge then with order k limit; Finish; Otherwise if the terminal point on backward k limit is positioned at the probe left side starting point on backward k limit be positioned at the probe right side or with the probe conllinear, be alignment edge then with backward k limit, finish; Otherwise the starting point on backward k limit is positioned at the probe right side if the terminal point on backward k limit is with the probe conllinear, and then the downstream side with backward k limit is an alignment edge; Otherwise if order k limit is identical with backward k limit or order k limit is the upstream edge on backward k limit, then seeking all over whole sequence does not have alignment edge yet, finishes; Otherwise if segment is recessed chain, and the starting point on the order k limit terminal point that is positioned at left side or the backward k limit of probe is positioned at the right side of probe, then alignment edge can not be arranged, and finishes; Otherwise with the downstream side on order k limit serves as that the upstream edge on order k+1 limit, backward k limit is backward k+1 limit, with k+1 as new k, execution in step 2.2;
Above-mentioned segment pinching confirms that the method for the visible range of observation point is:
Step 3.1: the upstream edge that with the first-in-chain(FIC) is order the 1st limit, last-of-chain is backward the 1st limit; If observation point is in left side, order the 1st limit, the directed edge of the upper reaches reference position of visible range is order the 1st limit; If observation point is in left side, backward the 1st limit, the directed edge of the downstream final position of visible range is backward the 1st limit; If the upper and lower position of visible range is all definite, then finish; Otherwise with k is cycle counter, k=1,
Step 3.2: with the downstream side on order k limit serves as that the upstream edge on order k+1 limit, backward k limit is backward k+1 limit, with k+1 as follow-up k; Not in left side, order k limit, then the directed edge of downstream final position is order k-1 limit, finishes if observation point is positioned at left side, order the 1st limit; Otherwise if observation point is positioned at left side, order the 1st limit and left side, backward k limit simultaneously, then the directed edge of downstream final position is backward k limit, finishes; Otherwise if observation point is positioned at left side, order k limit and left side, backward the 1st limit simultaneously, then the directed edge of upper reaches reference position is order k limit, finishes; Not in left side, backward k limit, then the directed edge of upper reaches reference position is backward k-1 limit, finishes otherwise if observation point is positioned at left side, backward the 1st limit; Otherwise execution in step 3.2.
Beneficial effect:
Ring-cutting subdivision method of simple polygon is online disposal route in 1 computer graphical
The method of handling is one by one with polygonal the 1st summit V 1, the 2nd summit V 2..., N summit V NThe set of embedding subdivision, termination condition is n summit V nReturn to the 1st summit V 1As long as, obtain the 1st summit and just begin the subdivision process, need not to obtain by the time after all summits.
The time complexity of ring-cutting subdivision method of simple polygon is O (N) in 2 computer graphicals
In whole subdivision process, the processing of cycle repeats has:
The polygon vertex of the embedding one by one V of the 1st level nMajor cycle loopMain, comprise:
The probe E of the 2nd level pWith hit limit H UiLimit cutting circulation loopCut when intersecting further comprises:
The probe E of the 3rd level pOn segment, seek and hit limit H UiAsk and hand over circulation loopHit,
The probe E of the 3rd level pThe connection circulation loopLink of the consistent protruding or consistent recess reason of both sides;
The polygonal correction for direction circulation loopClockwise of the 1st level;
More than various circulations need different working times separately:
2.1 outermost major cycle loopMain is under the situation of not considering the subordinate level, working time, complexity was O (N);
2.2 the time complexity of the limit of the 2nd level cutting circulation loopCut is a more complicated, for different summits, the quantity of the additional side that probe is passed through is many more, and working time is long more; Total time complexity equals the summation of each summit cutting number of times; According to method of the present invention, additional side cutting (Figure 24 a~24i), suppose and go up summit V all will be carried out in summit of every under specific circumstances embedding uM is arranged uBar additional side, following summit V dM is arranged dThe bar additional side, then worst case is m u=m d=m (if m u≠ m d, for the additional side that has more, the cutting of an additional side of every completion need embed two summits at least, makes time complexity reduce); Set summit V dBe the n summit, V then on the n+1 summit N+1Embed after the subdivision set accomplishes, the quantity of the new additional side that possibly passed through by the formed probe in next summit that produces is m/2+1 (seeing Figure 13 a, 13b, the method for 14a, the bilateral chain of rings of 14b) at most, so:
N+1 summit V N+1Embedding the total cutting number of times in back is m time;
N+2 summit V N+2Embedding the total cutting number of times in back is m+m time;
N+3 summit V N+3Embedding the total cutting number of times in back is 2m+m/2+1 time;
N+4 summit V N+4Embedding the total cutting number of times in back is 2m+m/2+1+m/2+1 time;
N+5 summit V N+5Embedding the total cutting number of times in back is 2m+m+2+m/4+1 time;
N+6 summit V N+6Embedding the total cutting number of times in back is 2m+m+2+m/4+1+m/4+1 time;
……
N+2m summit V N+2mEmbedding the total cutting number of times in back does 2 &Sigma; i = 0 m m 2 i + 2 m - 2 = 2 ( 2 - 2 - m ) m + 2 m - 2 < 6 m Inferior;
Follow-up more summit embeds and is cut the influence that m is counted on the limit before the total cutting number of times in back is then no longer gone into;
The total number of vertex of ∵ is N>=[(2m+1)+(2m+2)-1]+2m=6m+2, m≤(N-2)/and 6<N/6,6m<N;
The time complexity of ∴ limit cutting circulation loopCut is O (6m)=O (N) under worst case;
2.3 the asking of the 3rd level hands over circulation loopHit to adopt the segment pinching to confirm the method on alignment probe limit (Figure 18 a~18c); Each operation time is by the number decision on summit on the segment; Do not taking place under the situation of cutting process; Total time complexity is the adding up of number on summit on all rings that are cut open, and promptly is O (N); But under the situation of cutting repeatedly; When a big ring is broken down into two less rings, different as if the number of vertex of the little ring that is decomposed out, then spent operation times only with both in the less ring of number of vertex relevant; And be the twice (the every circulation primary of segment pinching need be carried out order respectively and judged that with backward each once) of its number of vertices; And have nothing to do with the more ring of number of vertex, therefore, worst case is that two little rings respectively are half of original big ring number of vertex; When the summit of new embedding gets into the little ring of a certain side, ask and hand over circulation loopHit to search for once again little ring, produced additional operation time; If the number of vertices on the big ring is n, the number of vertices on the little ring is n/2, and the cap number of times on the then big ring is at most n, and the cap number of times on the little ring is at most n/2; In like manner; If little ring is by the decomposition of going forward one by one once again; Then newly-increased operation times is at most n/4 ..., on ring, be less than 4 summits and all become triangle; If summit after this is positioned within the little ring that decomposes that gone forward one by one, then ask the influence of handing over circulation loopHit no longer to receive big before ring number of vertices n; So for the little ring of probe either side, the friendship cycle index summation of asking that adds up of the little ring of all decomposition of going forward one by one is:
&Sigma; i = 1 n n 2 i = n ( 1 - 1 2 n ) < n ,
Itself and asking separately of big ring are handed over cycle index n addition, then ask and hand over cycle index summation<2n;
∵ will encircle greatly to go forward one by one and decompose in the time of cannot decomposing again, and needing an other n summit, then total number of vertex at least should be n summit sum, i.e. 2n≤N of n the summit on the big ring and the decomposition of going forward one by one at least;
The time complexity of asking friendship circulation loopHit of ∴ the 3rd level also is O (2n)=O (N) under worst case;
2.4 the time complexity of the connection circulation loopLink of the 3rd level; With the ring shape and whether connected relevant repeatedly; For the connection that forms bulge loop, only need the time of constant at every turn, and for the connection that forms scrobicular ring; Then possibly be the time of constant, also possibly be equivalent to the number of vertices that forms scrobicular ring; When scrobicular ring decomposition situation does not take place; Recessed chain for from upper type is postponed, and is positioned at last-of-chain (Figure 16 b) if the downstream class is cut edge, and then needs the constant time; Be positioned at segment middle part (Figure 17 b) if the downstream class is cut edge, then the number of times of the location under the worst case is the number of vertices of segment; Same principle also is suitable for from the following recessed chain of mode postpone (Figure 16 c, 17d); Therefore, total connection round-robin time complexity is O (N); And be cut and cause under the situation that ring decomposes in that the limit has taken place; Can be divided into tie-time and repetition tie-time first total working time; Tie-time is O (N) first; Repeat then repetitive operation (this repetitive operation has comprised two situation that recessed chain is alternately postponed, Figure 15 a, 15b) of tie-time because big scrobicular ring is broken down into little scrobicular ring; Ask the analysis of handing in the circulation according to above-mentioned, when big ring is broken down into the little ring that two number of vertices equate, need the number of times of computing maximum; So, under worst case, connect required total operation times once again and be: &Sigma; i = 1 n N 2 i = N ( 1 - 1 2 N ) < N
The time complexity that ∴ connects circulation loopLink for first with repetition tie-time sum: O (N)+O (N)=O (N);
2.5 outermost polygon correction for direction circulation loopClockwise, complexity working time that its direction reverses is O (N);
Though more than various circulations be in different circulating levels; But various round-robin number of times are by the decision of the geometric relationship of polygon self; Not by the decision of round-robin level, and the summation of various round-robin time complexities is exactly the time complexity of ring-cutting subdivision method; Because every kind of round-robin time complexity all is linear, therefore, they be linear also, promptly the time complexity of ring-cutting subdivision method is O (N).
Ring-cutting subdivision method of simple polygon is simpler than other known linear session subdivision methods in 3 computer graphicals
1991; By " the linear session subdivision of simple polygon " Triangulating a SimplePolygon in Linear Time method of Bernard Chazelle invention, be published in authoritative academic journal " discrete and computational geometry " (Discrete&Computational Geometry, 6 (5) of computational geometry circle; The 485th~524 page; 1991), this method is not only quite complicated, indigestion, and is off-line;
Ring-cutting subdivision Faxian of the present invention so is easily understood than the method for Bernard Chazelle, realizes easily;
Ring-cutting subdivision method of simple polygon can be handled the polygon that apex coordinate is a random value in real time in 4 computer graphicals
When the summit of simple polygon clocklike constitutes recessed chain or the protruding chain of big section continuously, might accumulate a large amount of additional sides at some position, make follow-up some summits need spend considerable time when embedding and carry out cutting process; If apex coordinate is random random value, then cutting process is spread out, and this graphics process for routine is very favorable, thereby can realize real-time processing.
Description of drawings
Fig. 1 is polygonal outsourcing rhombus Q 0The setting synoptic diagram.
Fig. 2 is by the 1st summit V 1Formed initial subdivision set.
Fig. 3 is clockwise polygonal instance.
Fig. 4 is probe E pThe instance overlapping with the additional side.
Fig. 5 is monolateral shape segment C C1And starting point is n-1 summit V N-1Whole directed edge G eThe formation instance of (3 or 4).
Fig. 6 a, 6b, 6c and 6d are respectively the synoptic diagram of protruding chain, recessed chain, left spill and right spill segment.
Fig. 7 a, 7b are respectively that right spill segment obtains and hits limit H UiThe time the both sides synoptic diagram that decomposites of original state and right flank.
Fig. 8 a, 8b are respectively that left spill segment obtains and hits limit H UiThe time the both sides synoptic diagram that decomposites of original state and left wing.
Fig. 9 is probe E pWith hit limit H UiThe instance that intersects.
Figure 10 is to probe E pThe place ahead carry out a chain of instance that constitutes 2 additional sides in three limits.
Figure 11 is at probe E pThere is collinear point V in the place ahead cThe time constitute the instance of 3 additional sides.
Figure 12 is n summit V nReturn to the 1st summit V 1And hit limit H UiStarting point be the 1st summit V 1Instance.
Figure 13 a is respectively when the bilateral chain of rings, plays ring limit R uCan be formed a bigger bulge loop instance by deletion;
Figure 13 b is when the bilateral chain of rings, plays ring limit R uWith ring inner edge R iAll can be formed the instance of a bigger bulge loop by deletion;
Figure 14 a is when the bilateral chain of rings, plays ring limit R uCan be formed the instance of a bigger scrobicular ring by deletion;
Figure 14 b is when the bilateral chain of rings, ring inner edge R iCan be formed the instance of a bigger scrobicular ring by deletion.
Figure 15 a, 15b are on three limits when a chain of, the instance of postponing and handling that replaces about carrying out with bounded, unbounded mode respectively.
Figure 15 c is on three limits of bounded mode when a chain of, and twice segment correction result is the instance of two monolateral shapes.
Figure 15 d is on three limits of unbounded mode when a chain of, and twice segment correction result is the instance of two monolateral shapes.
Figure 15 e is on three limits of unbounded mode when a chain of, and twice segment correction result is respectively the instance of monolateral shape, recessed chain.
Figure 15 f is on three limits of unbounded mode when a chain of, and twice segment correction result is respectively the instance of recessed chain, monolateral shape.
Figure 16 a, 16b, 16c are respectively the instances of the segment correction of protruding chain segment, left spill segment, right spill segment.
Figure 16 d, 16e are respectively in the segment makeover process, the instance that does not deal with of monolateral segment segment, recessed chain segment.
Figure 17 a, 17b postpone from the recessed chain of upper type for being the result of new recessed chain.
Figure 17 c, 17d postpone from the recessed chain of following mode for being the result of new monolateral shape.
Figure 18 a, 18b implement the instance that the alignment probe limit is confirmed in the segment pinching to protruding chain segment, recessed chain segment.
Figure 18 c is when implementing between the definite probe of segment pinching target area to recessed chain segment, does not have the instance of alignment edge.
Figure 19 a is segment pinching when confirming the visible range of observation point, directly obtains the instance of visible range;
Figure 19 b is segment pinching when confirming the visible range of observation point, and an end becomes visible instance by invisible.
Figure 19 c is segment pinching when confirming the visible range of observation point, and an end becomes sightless instance by visible.
Figure 20 a, 20b are the initial setting up of the complete ring-cutting subdivision instance of polygon polygon;
Figure 20 c~20f is the 2nd summit V of polygon polygon 2~the 3 summit V 3Embed the synoptic diagram of subdivision set;
Figure 21 a~21f is the 4th summit V of polygon polygon 4~the 10 summit V 10Embed the synoptic diagram of subdivision set;
Figure 22 a~22f is the 11st summit V of polygon polygon 11~the 13 summit V 13Embed the synoptic diagram of subdivision set;
Figure 23 a~23d is the 14th summit V of polygon polygon 14~the 15 summit V 15Embed the synoptic diagram of subdivision set;
Figure 23 e, 23f are the closed results of polygon polygon.
Figure 24 a~24i is the number change synoptic diagram that is cut the limit number under the worst case.
Annotate: the trend of the reference character of each directed edge order is consistent with the direction of the directed edge that is marked among the figure.
Embodiment
Embodiment 1
With reference to Fig. 1, in step 1.1, by a>horizontal scale X Max+ vertical yardstick Y Max, confirm the numerical value of a, set up the rhombus Q outside the polygon 0Note during actual program; Although a can be infinity in theory, employed computerese has qualification to effective numerical range, in addition; Half of data structure is used in the directed edge suggestion, when carrying out direction distinguishing, need consider the influence of numerical evaluation round-off error;
With reference to Fig. 2, in step 1.1, selected the 1st summit V 1, the 2nd summit V 2, connect the 1st summit V 1Each summit with rhombus;
With reference to Fig. 3, with n summit V nWhen embedding the subdivision set, because of n summit V nWith the 1st summit V 1Overlap and with N summit V NAdditional side E for starting point NTerminal point be the 1st summit V 1, N summit E then NBe polygonal limit, embed and finish; When execution in step 1.3 because polygon be clockwise (can be by crossing rhombus Q 0The additional side on a certain structure summit obtain polygonal peripheral summit, the upstream and downstream adjacent vertex by described peripheral summit comes decision diamond Q again 0Above-mentioned structure summit whether in polygonal left side, rhombus Q for example 0The 2nd structure summit P was arranged 2Additional side E 2N, said additional side E 2NTerminal point be N summit V N, and the 2nd structure summit P 2Be positioned at V from the N summit NUpper reaches adjacent vertex V N-1Through N summit V NThe V to the N summit NDownstream adjacent vertex V 1Within the angle of formed left side), handle so need travel direction to reverse, with N summit V NDemarcation is the 1st summit V 1The downstream adjacent vertex, with the 1st summit V 1Demarcation is the 2nd summit V 2The downstream adjacent vertex, with the 2nd summit V 2Demarcation is the 3rd summit V 3The downstream adjacent vertex, with the 3rd summit V 3Demarcation is the 4th summit V 4The downstream adjacent vertex, And with the 1st summit V 1Demarcation is N summit V NUpper reaches adjacent vertex, with the 2nd summit V 2Demarcation is the 1st summit V 1Upper reaches adjacent vertex, with the 3rd summit V 3Demarcation is the 2nd summit V 2Upper reaches adjacent vertex, with the 4th summit V 4Demarcation is the 3rd summit V 3Upper reaches adjacent vertex ...
With reference to Fig. 4, with n summit V nWhen embedding the subdivision set, from n-1 summit V N-1Selecting article one directed edge that is positioned at the probe right side in the directed edge for starting point is the 1st right limit E R1, with the 1st right limit E R1Downstream side be the 1st first-in-chain(FIC) E H1, be the 1st last-of-chain E with the upstream edge of probe T1, as follow-up counts, i=1 is because be positioned at the 1st right limit E with i R1Article one additional side E in left side cWith probe E pOverlapping, so with overlapping limit E cDownstream side be conllinear limit H a, delete overlapping limit E then c, carry out collineation processing by step 1.2.6 again.
With reference to Fig. 5, Fig. 6 a~6d, when execution in step 1.2.1, from all with n-1 summit V N-1Directed edge G for starting point eIn select be positioned at the probe E pArticle one limit on right side is the 1st right limit E R1, with the 1st right limit E R1Downstream side be the 1st first-in-chain(FIC) E H1, with probe E pUpstream edge be the 1st last-of-chain E T1, the segment of having created a monolateral shape (Fig. 5) is the 1st segment C C1The segment of other shape have protruding chain (Fig. 6 a), recessed chain (Fig. 6 b), left spill (Fig. 6 c), right spill (Fig. 6 d).
With reference to Fig. 7 a, Fig. 7 b, carry out ring cutting at execution in step 1.2.3 and cut when handling i segment C CiBe right spill and probe E pWith i last-of-chain E TiUpstream edge non-intersect, so to i first-in-chain(FIC) E HiBe first-in-chain(FIC), i last-of-chain E TiUpstream edge be that the segment of last-of-chain carries out the segment pinching and confirms between the probe target area, and it is hit limit H as i Ui
With reference to Fig. 8 a, Fig. 8 b, when execution in step 1.2.4, i segment C CiBe left spill and probe E pWith i first-in-chain(FIC) E HiNon-intersect, so to i first-in-chain(FIC) E HiBe first-in-chain(FIC), i last-of-chain E TiUpstream edge be that the segment of last-of-chain carries out the segment pinching and confirms between the probe target area, but alignment edge do not exist, so with i first-in-chain(FIC) E HiHit limit H as i Ui
With reference to Fig. 9, when execution in step 1.2.5, hit limit H with i UiDownstream side H DiBe i+1 last-of-chain E Ti+1, because probe E pHit limit H with i UiIntersect, so hit limit H with i UiReverse edge E HrDownstream side E HrdBe i+1 first-in-chain(FIC) E Hi+1, with probe E pReverse edge E PrDownstream side E PrdBe i+1 right limit E Ri+1, and delete i and hit limit H Ui, as new i, return to step 1.2.3 and carry out the next round ring cutting and cut processing with i+1.
With reference to Figure 10, when execution in step 1.2.5, because probe E pHit limit H with i UiNon-intersect, thus to the probe E pReverse edge E PrFor first-in-chain(FIC), i hit limit H UiFor the segment of last-of-chain carries out the segment correction, with newly connect from the additional side on n summit as right flank limit W r, again to i+1 last-of-chain E Ti+1Be first-in-chain(FIC), right flank limit W rFor the segment of last-of-chain carries out the segment correction, with newly connect from the additional side of the starting point of i+1 last-of-chain as the limit W of left wing lRespectively with right flank limit W rDownstream side W Rd, the limit W of left wing lWith right flank limit W rUpstream edge W RuAs playing initial line, medial side and termination limit, the three limits chain of rings is carried out in the place ahead of probe with the unbounded mode.
With reference to Figure 11, carry out in the collineation processing process at execution in step 1.2.6, earlier to probe E pTo carry out three limits of bounded mode respectively a chain of in both sides, then to i right limit E RiBe first-in-chain(FIC), conllinear limit H aFor the segment of last-of-chain obtains the limit, middle part, because of this segment is left spill, so with last-of-chain H aUpstream edge H AuBe the limit, middle part, and with first-in-chain(FIC) E RiFor carrying out the bilateral chain of rings for the stop ring limit in a ring limit, limit, middle part; Be limit M in the right side with the limit, middle part then u, probe E pReverse edge E PrFor playing limit M in ring limit, the right side uFor carrying out the bilateral chain of rings in the stop ring limit, and connect n summit V nWith conllinear summit V cAs the limit E that continues xTo with conllinear limit H aBe first-in-chain(FIC), probe E pFor the segment of last-of-chain obtains the limit, middle part, not the downstream side H of left spill and first-in-chain(FIC) because of this segment AdNot the upstream edge of last-of-chain, so with the downstream side H of first-in-chain(FIC) AdFor a ring limit, last-of-chain carry out the bilateral chain of rings for the stop ring limit, the downstream side with the first-in-chain(FIC) after the bilateral chain of rings is the limit, middle part then; Then with the limit, middle part as limit M in the left side d, with limit M in the left side dFor a ring limit, limit E continues xFor carrying out the bilateral chain of rings in the stop ring limit.
With reference to Figure 12, when execution in step 1.2.6, n summit V nBe that i hits limit H UiStarting point (also must be the 1st summit V 1), polygon is closed.
With reference to Figure 13 a, when the bilateral chain of rings, with stop ring limit R dUpstream edge be ring inner edge R i, to have connected ring limit R uStarting point and stop ring limit R dThe additional side that forms of starting point as sealing limit R r, because play ring limit R uBe an additional side and a ring limit R uA long enough and a ring limit R uTwo rings of both sides playing a ring limit R uCan be formed a bigger bulge loop by under the situation of deleting, so can have been deleted ring limit R uBecause of ring inner edge R iNot the additional side, so ring inner edge R iCannot delete.
With reference to Figure 13 b, when the bilateral chain of rings, different with Figure 14 a is ring inner edge R iAlso be additional side and ring inner edge R iLong enough and ring inner edge R iTwo rings of both sides at ring inner edge R iCan be formed a bigger bulge loop by under the situation of deleting, so ring inner edge R iAlso can be deleted.
With reference to Figure 14 a, when the bilateral chain of rings, with stop ring limit R dUpstream edge be ring inner edge R i, to have connected ring limit R uStarting point and stop ring limit R dThe additional side that forms of starting point as sealing limit R r, because play ring limit R uBe an additional side and a ring limit R uA long enough and a ring limit R uTerminal point be not the 1st summit V 1And play ring limit R uTwo rings of both sides playing a ring limit R uCan be formed a bigger scrobicular ring by under the situation of deleting, so can have been deleted ring limit R uBecause of ring inner edge R iNot the additional side, so ring inner edge R iCannot delete.
With reference to Figure 14 b, when the bilateral chain of rings, play ring limit R uNot the additional side, so play ring limit R uCannot delete; Because of ring inner edge R iBe additional side and ring inner edge R iLong enough and ring inner edge R iTerminal point be not the 1st summit V 1And ring inner edge R iTwo rings of both sides at ring inner edge R iCan be formed a bigger scrobicular ring by under the situation of deleting, so ring inner edge R iAlso can be deleted.
With reference to Figure 15 a, in a chain of process in three limits of bounded mode, to play an initial line S uBe first-in-chain(FIC), medial side S mThe segment of creating for last-of-chain carries out the segment correction, to play initial line S uBe new initial line S NuAgain to medial side S mBe first-in-chain(FIC), termination limit S dThe segment of creating for last-of-chain carries out the segment correction, with medial side S mThe additional side of new downstream direction of start position as limit S in new NmBecause play initial line S uNot medial side S mAnd medial side S mNot to stop limit S dAnd limit S in new NmAngle<the π of starting point and twice correction result all are recessed chains, and execution in step 1.2.5.2 is with limit S in new NmBe the 1st to take turns strange flanging O 1, new initial line S NuStarting point be upper extreme point P u, stop limit S dStarting point be lower extreme point P d, execution in step 1.2.5.3 takes turns strange flanging O with the 1st 1Be recessed first-in-chain(FIC), termination limit S dBe recessed last-of-chain, postpone, and take turns even flanging E as the 1st with the additional side of new connection to carry out recessed chain from upper type 1Execution in step 1.2.5.4 is with new initial line S NuFor recessed first-in-chain(FIC), the 1st is taken turns even flanging E 1Be recessed last-of-chain, postpone to descend mode to carry out recessed chain certainly, and with the downstream side of the additional side of new connection as the 2nd strange flanging O that takes turns 2Take turns execution in step 1.2.5.3 with the 2nd, because the strange flanging O that the three limit chains of rings are bounded modes and the 2nd takes turns 2The starting point of upstream edge be upper extreme point P uSo, finish.
With reference to Figure 15 b, in a chain of process in three limits of unbounded mode, to play an initial line S uBe first-in-chain(FIC), medial side S mThe segment of creating for last-of-chain carries out the segment correction, to play initial line S uBe new initial line S NuAgain to medial side S mBe first-in-chain(FIC), termination limit S dThe segment of creating for last-of-chain carries out the segment correction, because medial side S mStart position the new updrift side rather than the additional side of downstream direction are arranged, so with medial side S mAs limit S in new NmBecause play initial line S uNot medial side S mAnd medial side S mNot to stop limit S dAnd limit S in new NmAngle<the π of starting point and twice correction result all are recessed chains, and execution in step 1.2.5.2 is with limit S in new NmBe the 1st to take turns strange flanging O 1, new initial line S NuStarting point be upper extreme point P u, stop limit S dStarting point be lower extreme point P d, execution in step 1.2.5.3 takes turns strange flanging O with the 1st 1Be recessed first-in-chain(FIC), termination limit S dBe recessed last-of-chain, postpone, and take turns even flanging E as the 1st with the additional side of new connection to carry out recessed chain from upper type 1Execution in step 1.2.5.4 is with new initial line S NuFor recessed first-in-chain(FIC), the 1st is taken turns even flanging E 1Be recessed last-of-chain, postpone, and take turns strange flanging O as the 2nd with the downstream side of the additional side of new connection to descend mode to carry out recessed chain certainly 2Take turns execution in step 1.2.5.3 with the 2nd, take turns strange flanging O with the 2nd 2Be recessed first-in-chain(FIC), termination limit S dBe recessed last-of-chain, postpone, and take turns even flanging E as the 2nd with the additional side of new connection to carry out recessed chain from upper type 2Execution in step 1.2.5.4 takes turns even flanging E because the three limit chains of rings are unbounded modes and the 2nd 2Starting point be upper extreme point P uSo, finish.
With reference to Figure 15 c, in a chain of process in three limits of bounded mode,, obtain new initial line S through twice segment correction Nu, new middle limit S NmThough play initial line S uNot medial side S mAnd medial side S mNot to stop limit S dAnd limit S in new NmAngle<the π of starting point, but twice segment correction result is not two recessed chains.
With reference to Figure 15 d, in a chain of process in three limits of unbounded mode,, obtain new initial line S through twice segment correction Nu, new middle limit S NmBecause play initial line S uNot medial side S mAnd medial side S mNot to stop limit S dAnd limit S in new NmAngle<the π of starting point, and twice correction result all be monolateral shape, so with new initial line S NuFor playing the ring limit, stopping limit S dFor carrying out the bilateral chain of rings in the stop ring limit.
With reference to Figure 15 e, in a chain of process in three limits of unbounded mode, the situation of similar Figure 15 d, but correction result is monolateral shape for the first time, correction result is recessed chain for the second time, so respectively with limit S in new NmBe recessed first-in-chain(FIC), termination limit S dBe recessed last-of-chain, postpone to carry out recessed chain from upper type.
With reference to Figure 15 f, in a chain of process in three limits of unbounded mode, the situation of similar Figure 15 d, but correction result is recessed chain for the first time, correction result is monolateral shape for the second time, so respectively with new initial line S NuBe recessed first-in-chain(FIC), new middle limit S NmBe recessed last-of-chain, postpone to descend mode to carry out recessed chain certainly.
With reference to Figure 16 a, in the segment makeover process, segment is protruding chain, with first-in-chain(FIC) E hFor playing ring limit, last-of-chain E tFor carrying out the bilateral chain of rings (correction result is monolateral shape) in the stop ring limit.
With reference to Figure 16 b, in the segment makeover process, segment is left spill, with first-in-chain(FIC) E hDownstream side be recessed first-in-chain(FIC), last-of-chain E tBe recessed last-of-chain, to carry out recessed chain postpone (correction result is monolateral shape) from upper type.
With reference to Figure 16 c, in the segment makeover process, segment is right spill, with first-in-chain(FIC) E hBe recessed first-in-chain(FIC), last-of-chain E tUpstream edge be recessed last-of-chain, carry out recessed chain postpone (correction result is recessed chain) to descend mode certainly.
With reference to Figure 16 d, Figure 16 e, in the segment makeover process, segment is monolateral shape or recessed chain, does not deal with.
With reference to Figure 17 a, Figure 17 b, in the recessed chain of upper type is postponed process, with first-in-chain(FIC) E hUpstream edge for observing limit W, and to first-in-chain(FIC) E h, last-of-chain E tThe visible range that observation point is confirmed in the segment pinching is carried out on two limits forming, is upper reaches class side cut T with the directed edge of the upper reaches reference position of visible range u, the downstream side of the directed edge of the downstream final position of visible range is downstream class side cut T dBe ring limit R to observe limit W then u, downstream class side cut T dBe stop ring limit R dCarry out the bilateral chain of rings (result that postpones is recessed chain).
With reference to Figure 17 c, Figure 17 d, in the recessed chain that descends mode is certainly postponed process, with last-of-chain E tDownstream side for observing limit W, and to first-in-chain(FIC) E h, last-of-chain E tThe visible range that observation point is confirmed in the segment pinching is carried out on two limits forming, is upper reaches class side cut T with the directed edge of the upper reaches reference position of visible range u, the downstream side of the directed edge of the downstream final position of visible range is downstream class side cut T dThen with upper reaches class side cut T uFor playing ring limit R u, to observe limit W be stop ring limit R dCarry out the bilateral chain of rings (result that postpones is monolateral shape).
With reference to Figure 18 a, confirm in the process on alignment probe limit in the segment pinching, with the first limit E on both sides Nip1Be order the 1st limit E F1, both sides the second limit E Nip2Upstream edge be backward the 1st limit E B1Through the circulation of step 2.2, can be in the hope of probe E pAlignment edge be backward the 3rd limit E B3
With reference to Figure 18 b, confirm in the process on alignment probe limit in the segment pinching, with the first limit E on both sides Nip1Be order the 1st limit E F1, both sides the second limit E Nip2Upstream edge be backward the 1st limit E B1Through the circulation of step 2.2, can be in the hope of probe E pAlignment edge be the order the 5th limit E F5
With reference to Figure 18 c, confirm in the process on alignment probe limit in the segment pinching, with the first limit E on both sides Nip1Be order the 1st limit E F1, both sides the second limit E Nip2Upstream edge be backward the 1st limit E B1Through the circulation of step 2.2, the angle>=π of the starting point on backward the 3rd limit and probe E pStarting point be positioned at simultaneously the order the 3rd limit E F3, backward the 3rd limit E B3The left side, and E F3Terminal point be positioned at the probe E pThe right side, alignment edge can not be arranged.
With reference to Figure 19 a, confirm in the process of visible range of observation point, with the first limit E on both sides in the segment pinching Nip1Be order the 1st limit E F1, both sides the second limit E Nip2Upstream edge be backward the 1st limit E B1Observation point V EyeBe positioned at order the 1st limit E simultaneously F1Left side and backward the 1st limit E B1The left side, then the directed edge of upper reaches reference position is order the 1st limit E F1, the directed edge of the downstream final position of visible range is backward the 1st limit E B1
With reference to Figure 19 b, confirm in the process of visible range of observation point, with the first limit E on both sides in the segment pinching Nip1Be order the 1st limit E F1, both sides the second limit E Nip2Upstream edge be backward the 1st limit E B1Observation point V EyeThe E in left side, backward the 1st limit B1, the directed edge of the downstream final position of visible range is backward the 1st limit E B1Through the circulation of step 3.2, observation point V EyeBe positioned at order the 4th limit E simultaneously F4Left side and backward the 1st limit E B1The left side, then the directed edge of upper reaches reference position is order the 4th limit E F4
With reference to Figure 19 c, confirm in the process of visible range of observation point, with the first limit E on both sides in the segment pinching Nip1Be order the 1st limit E F1, both sides the second limit E Nip2Upstream edge be backward the 1st limit E B1Observation point V EyeThe left side E on order the 1st limit F1, the directed edge of the upper reaches final position of visible range is E F1Through the circulation of step 3.2, observation point V EyeBe positioned at order the 1st limit left side but left side E not on order the 4th limit F4, then the directed edge of downstream final position is order the 4th limit E F4Upstream edge E F3
Embodiment 2
Initialization: with reference to Figure 20 a, 20b, 15 apex coordinates of polygon Polygon are respectively: V 1(1.72,10.72), V 2(2.0,6.0), V 3(7.0,4.0), V 4(11.6,3.2), V 5(5.0 ,-2.0), V 6(3.88 ,-3.32), V 7(3.68 ,-4.48), V 8(3.14 ,-3.64), V 9(2.0 ,-3.52), V 10(0.0 ,-4.0), V 11(4.0 ,-2.4), V 12(1.71,2.8), V 13(4.25 ,-0.81), V 14(5.92,3.05), V 15(3.61,0.56), the 16th summit V 16It is the reproduction on the 1st summit; By a>horizontal scale X Max+ vertical yardstick Y Max=|-11.6|+10.72=22.32, get a=30, it is respectively P that 4 structure summits are set outside polygon Polygon 1(30,0), P 2(0,30), P 3(30,0), P 4The rhombus Q of (0 ,-30) 0The 1st summit V 1Respectively with rhombus Q 04 the structure summits be connected;
With the 2nd summit V 2Embedding subdivision set: with reference to Figure 20 c, 20d, by step 1.2.1, from the 1st summit V 1To the 2nd summit V 2Constitute probe E p, because of the 2nd summit V 2With the 1st summit V 1Overlap, so select the E that pops one's head in that is positioned at from the 2nd summit pArticle one directed edge on right side is the 1st right limit E R1, and with the 1st right limit E R1Downstream side be the 1st first-in-chain(FIC) E H1, with probe E pUpstream edge be the 1st last-of-chain E T1, because do not have and probe E pOverlapping additional side, thus execution in step 1.2.3, to the 1st first-in-chain(FIC) E H1, the 1st last-of-chain E T1Monolateral shape the 1st segment C that is constituted C1Carry out the segment pinching and confirm the alignment probe limit, the alignment edge that is obtained is hit limit H as the 1st U1, execution in step 1.2.5 then is because the 2nd summit V 2With the 1st summit V 1Do not overlap, and the 1st hits limit H U1Two end points all not with the probe E pSo conllinear is respectively with the 1st right limit E R1, the 1st first-in-chain(FIC) E H1With the 1st hit limit H U1As playing initial line, medial side and a termination limit, with the unbounded mode to probe E pTo carry out three limits a chain of on the right side owing to be that first-in-chain(FIC), medial side are that the segment of last-of-chain is monolateral shape to play initial line, and medial side is identical with the termination limit, so the three limit chains of rings do not change; Hit limit H with the 1st respectively again U1Downstream side, the 1st last-of-chain E T1With probe E pAs playing initial line, medial side and termination limit; With the unbounded mode the three limits chain of rings is carried out in the left side of probe; Because it is identical with medial side to play initial line, and be first-in-chain(FIC) with the medial side, segment that the termination limit is last-of-chain is monolateral shape, this time the three limit chains of rings also do not change; Hit limit H with the 1st U1Downstream side be the 2nd last-of-chain E T2, because of probe E pDo not hit limit H with the 1st U1Intersect, so to the E that pops one's head in pReverse edge E PrFor first-in-chain(FIC), the 1st hits limit H U1For the protruding chain segment of last-of-chain carries out the segment correction, be that ring limit, last-of-chain are that bilateral the 1st right limit E that deleted when a chain of is carried out on the stop ring limit with first-in-chain(FIC) R1, with newly connect from the additional side on the 2nd summit as right flank limit W rAgain to the 2nd last-of-chain E T2Be first-in-chain(FIC), right flank limit W rFor the protruding chain segment of last-of-chain carries out the segment correction, equally at bilateral the 2nd last-of-chain E that deleted when a chain of T2, with newly connect from the 2nd last-of-chain E T2The additional side of starting point as the limit W of left wing lRespectively with right flank limit W rDownstream side, the limit W of left wing lWith right flank limit W rUpstream edge as playing initial line, medial side and a termination limit, it is a chain of with the unbounded mode three limits to be carried out in the place ahead of probe, this time three limit chains of rings do not change;
With the 3rd summit V 3Embedding subdivision set: with reference to Figure 20 e, 20f, with above-mentioned with the 2nd summit V 2It is similar to embed the subdivision aggregation process, has connected respectively from the 3rd summit V 3To the 3rd structure summit P 3Right flank limit W rWith from the 4th structure summit P 4To the 3rd summit V 3The limit W of left wing l, difference is when carrying out the bilateral chain of rings, the 2nd last-of-chain E T2Can not be deleted;
With the 4th summit V 4Embedding subdivision set: with reference to Figure 21 a, 21b, with the 1st right limit E R1Downstream side be the 1st first-in-chain(FIC) E H1, with probe E pUpstream edge be the 1st last-of-chain E T1, its special feature is that article one is positioned at the 1st right limit E R1The additional side E in left side cWith probe E pOverlapping, so with this additional side E cDownstream side be conllinear limit H a, and delete overlapping additional side E c, execution in step 1.2.6 then is respectively with the 1st right limit E R1, the 1st first-in-chain(FIC) E H1With conllinear limit H aAs playing initial line, medial side and termination limit, with the bounded mode the three limits chain of rings is carried out on the right side of probe, cause at the 2nd summit V 2With the 3rd structure summit P 3Between connected the additional side; Again respectively with conllinear limit H a, the 1st last-of-chain E T1With probe E pAs playing initial line, medial side and termination limit, with the bounded mode the three limits chain of rings is carried out in the left side of probe, do not change; To with the probe E pReverse edge E PrDownstream side E PrdBe first-in-chain(FIC), conllinear limit H aFor the segment of last-of-chain obtains the limit, middle part and as limit M in the right side u, then with probe E pReverse edge E PrFor playing limit M in ring limit, the right side uFor carrying out the bilateral chain of rings in the stop ring limit, and connect the 4th summit V 4With conllinear summit P 3As the limit E that continues xTo with conllinear limit H aBe first-in-chain(FIC), probe E pFor the segment of last-of-chain obtains the limit, middle part and as limit M in the left side d, then with limit M in the left side dFor a ring limit, limit E continues xFor carrying out the bilateral chain of rings in the stop ring limit;
With the 5th summit V 5The set of embedding subdivision: with reference to Figure 21 c, 21d, its special feature is when execution in step 1.2.5, probe E pHit limit H at probe with the 1st U1Intersect, thereby need deletion the 1st to hit limit H U1, twice execution in step 1.2.3; Embedding subdivision aggregation process and the 2nd summit V with the 6th~9 summit 2, the 3rd summit V 3Similar, connect two new additional sides at every turn, and possibly delete one to two additional side;
With the 10th summit V 10Embedding subdivision set: with reference to Figure 21 e, 21f, with the 5th summit V 5Embed the subdivision collection class seemingly, hit limit H in deletion the 1st U1Afterwards, execution in step 1.2.3 for the second time, thereby with the 10th summit V 10Respectively with the 1st structure summit P 1, the 4th structure summit P 4Link;
With the 11st summit V 11Embedding subdivision set:, take turns the 1st respectively and deleted the 1st and hit limit H with reference to Figure 22 a, 22b U1, the 2nd takes turns and has deleted the 2nd and hit limit H U2Afterwards, the 3rd take turns hit limit H U3Starting point V 5With probe E pConllinear, when execution in step 1.2.6, need be with the bounded mode to probe E pTo carry out three limits respectively a chain of in both sides, wherein the three limit chains of rings to the left side have caused alternately postponing of two recessed chains; Similar the 4th summit V of subsequent step 4Embed the process of subdivision set;
Embedding subdivision set with the 12nd~15 summit: with reference to Figure 22 c~22f, 23a~23d, with the 2nd summit V 2, the 3rd summit V 3Embedding subdivision aggregation process similar;
With the 16th summit V 16Embedding subdivision set: with reference to Figure 19 e, 19f, though the 16th summit V 16With the 1st summit V 1Overlap, but the 15th summit V 15To the 1st summit V 1There is not the additional side, therefore need be with probe E pAs probe E pExecution in step 1.2.3~step 1.2.5 takes turns through the 1st respectively and has deleted the 1st and hit limit H U1, the 2nd takes turns and has deleted the 2nd and hit limit H U2Afterwards, the 3rd take turns hit limit H U3Starting point be the 1st summit V 1, polygon is closed, respectively with the bounded mode to probe E pTo carry out three limits respectively a chain of in both sides, accomplish the embedding subdivision aggregation process on all summits;
Polygonal correction for direction: because according to the 1st summit, the 2nd summit, the 3rd summit ..., the polygonal trend that forms of the order on 1 summit, the 15th summit to the is anticlockwise, need not to revise the upstream and downstream neighbouring relations;
Above step has been accomplished the ring-cutting subdivision of the polygon Polygon of embodiment 2.

Claims (3)

1. ring-cutting subdivision method of simple polygon in the computer graphical is characterized in that:
Step 1.1: set up the XOY plane coordinate, can contain polygonal rhombus one of the polygonal outer setting of treating subdivision, the coordinate on 4 structure summits of rhombus is respectively (a; 0), (0; A), (a, 0) with (0 ,-a); A is a real number; A is greater than horizontal scale and vertical yardstick sum, and horizontal scale is the greater of absolute value of left side or the right side X coordinate of polygonal minimum outsourcing rectangle, and vertically yardstick is the greater of absolute value of upside or the downside Y coordinate of polygonal minimum outsourcing rectangle; Rhombus constitutes a ring, and ring is a downstream direction with the counter clockwise direction; As the 1st summit, 4 structure summits with the 1st summit and rhombus are connected one by one, and rhombus is decomposed into 4 than circlet with arbitrary summit on the polygon, gather as initial subdivision than circlet with said 4; With in two adjacent on polygon summits with the 1st summit any one as the 2nd summit, be polygonal downstream direction with the trend of the 1st summit and the 2nd summit order;
Step 1.2: one by one the n summit is embedded the subdivision set along polygonal downstream direction, n=2,3,4 ..., N, N+1, N are polygonal number of vertices, the N+1 summit overlaps with the 1st summit;
Step 1.3: if according to the 1st summit, the 2nd summit, the 3rd summit ..., the polygonal trend that forms of the order on 1 summit, N summit to the is clockwise; Then polygonal each summit travel direction is reversed and handle; The upper reaches adjacent vertex that is about to former setting is modified to the downstream adjacent vertex, and the downstream adjacent vertex of former setting is modified to upper reaches adjacent vertex;
The above-mentioned method that the n summit is embedded the subdivision set is:
Step 1.2.1: with the directed edge from n summit, n-1 summit to the is probe, different with the 1st summit as if the n summit, then execution in step 1.2.2; Otherwise; If with the n-1 summit is that then polygon is closed, and this additional side is updated to polygonal limit when having the terminal point of an additional side to be the 1st summit in all additional sides of starting point; Embed and finish, described additional side is by any two directed edges that non-conterminous summit forms; Otherwise,
Step 1.2.2: article one directed edge that is positioned at the probe right side with from the n-1 summit is limit, the 1st right, is the 1st first-in-chain(FIC) with the downstream side on limit, the 1st right, is the 1st last-of-chain with the upstream edge of probe; With i as follow-up counter; I=1, if article one be positioned at limit, the 1st right the left side the additional side with the probe overlapping, then the downstream side with this additional side is the conllinear limit; And delete overlapping additional side, execution in step 1.2.6; Otherwise,
Step 1.2.3: respectively as the beginning and the ending of i segment, described segment is the directed edge of a series of tandem arrays with i first-in-chain(FIC), i last-of-chain; If the i segment is monolateral shape, protruding chain or recessed chain segment, then the i segment is carried out the segment pinching and confirm the alignment probe limit, and hit the limit as i, then execution in step 1.2.5 with the alignment edge that is obtained; As if the i segment is left spill, then execution in step 1.2.4; Otherwise the i segment is right spill, if probe is crossing with the upstream edge of i last-of-chain, then hits the limit with said upstream edge as i; Execution in step 1.2.5; Otherwise,, then hit the limit as i with alignment edge if there is alignment edge to being that the upstream edge of first-in-chain(FIC), i last-of-chain is that the segment of last-of-chain carries out the segment pinching and confirms the alignment probe limit with the i first-in-chain(FIC); Otherwise the upstream edge with the i last-of-chain is that i hits the limit, then execution in step 1.2.5; The last-of-chain of above-mentioned monolateral shape segment is the downstream side of first-in-chain(FIC); Angle<the π of all intermediate vertexs of above-mentioned protruding chain segment; The intermediate vertex of said segment is all summits between the starting point of the starting point of first-in-chain(FIC) and last-of-chain on the segment, and the angle on said summit is to be the angle in two adjacent directed edges left sides of linking with this summit on the segment; Angle >=the π of all intermediate vertexs of above-mentioned recessed chain segment; Above-mentioned left spill segment removes the angle<π of the terminal point of first-in-chain(FIC), the angle >=π of all the other intermediate vertexs on the segment; Above-mentioned right spill segment is except that the angle<π of the starting point of the upstream edge of last-of-chain, the angle >=π of all the other intermediate vertexs on the segment;
Step 1.2.4: if probe intersects with the i first-in-chain(FIC), be that i hits the limit then with the i first-in-chain(FIC), execution in step 1.2.5; Otherwise, be that first-in-chain(FIC), i last-of-chain are that the segment of last-of-chain carries out the segment pinching and confirms the alignment probe limit to downstream side with the i first-in-chain(FIC), if there is alignment edge, then hits the limit as i, otherwise hit the limit as i with the i first-in-chain(FIC) with alignment edge,
Step 1.2.5:, then hit the limit as the conllinear limit, execution in step 1.2.6 with i if i hits the starting point and probe conllinear on limit; Otherwise; Hit the limit as playing initial line, medial side and termination limit with limit, the i right, i first-in-chain(FIC) and i respectively; With the unbounded mode the three limits chain of rings is carried out on the right side of probe; The downstream side, i last-of-chain and the probe that hit the limit with i respectively again carry out the three limits chain of rings with the unbounded mode to the left side of probe as playing initial line, medial side and a termination limit; The new downstream side that hits the limit with the i behind the three limit chains of rings is the i+1 last-of-chain; If hitting the limit with i, probe intersects; The downstream side that then hits the reverse edge on limit with i is the i+1 first-in-chain(FIC), is limit, the i+1 right with the downstream side of the reverse edge of probe, deletes i and hits the limit; As new i, return to step 1.2.3 with i+1; Otherwise; To the reverse edge with probe is that to hit the limit be that the segment of last-of-chain carries out the segment correction for first-in-chain(FIC), i; With newly connect from the additional side on n summit as the right flank limit; Again to being that first-in-chain(FIC), right flank limit are that the segment of last-of-chain carries out the segment correction with the i+1 last-of-chain, with newly connect from the additional side of the starting point of i+1 last-of-chain as the left wing limit; Respectively with the upstream edge on downstream side, left wing limit and the right flank limit on right flank limit as playing initial line, medial side and a termination limit, thereby with the unbounded mode the place ahead of probe is carried out that three limits are a chain of guarantees that the place ahead of popping one's head in is a triangle, embed and finish; The method of above-mentioned segment correction is: if segment is protruding chain; Be that ring limit, last-of-chain are that the bilateral chain of rings is carried out on the stop ring limit then with first-in-chain(FIC); Otherwise if segment is left spill; Be new first-in-chain(FIC) to the downstream side with first-in-chain(FIC) then, last-of-chain is that new segment that new last-of-chain constituted carries out postponing from the recessed chain of upper type and makes it to become monolateral shape or recessed chain, otherwise if segment is right spill; Then to being new first-in-chain(FIC) with first-in-chain(FIC), the upstream edge of last-of-chain is that the new segment of new last-of-chain carries out postponing from the recessed chain of mode down and makes it to become monolateral shape or recessed chain; Finish the segment correction; The method of the above-mentioned bilateral chain of rings is: with the upstream edge on stop ring limit is the ring inner edge, has connected the starting point of encircling the limit and the starting point on stop ring limit, with formed additional side as sealing the limit; If play the ring limit is an additional side and a ring limit long enough; And two rings that work the both sides of encircling the limit then can have been deleted the ring limit playing bigger scrobicular ring of formation under the prerequisite that the terminal point that can form a bigger bulge loop under the situation of being deleted on the ring limit or play the ring limit is not the 1st summit; In like manner; If the ring inner edge also is additional side and ring inner edge long enough; And two rings of the both sides of ring inner edge then can be deleted the ring inner edge forming a bigger bulge loop under the ring inner edge situation of being deleted or not being to form a bigger scrobicular ring under the prerequisite on the 1st summit in the starting point of ring inner edge; Bilateral a chain of the end; Above-mentioned rise ring limit long enough be meant the length on ring limit be at least the ring limit terminal point to the starting point on stop ring limit distance half the or to work the length of encircling the limit be half of length of sealing the limit at least; Above-mentioned ring inner edge long enough is that the length of finger ring inner edge has been that the length half the or the ring inner edge of distance of starting point to the starting point of encircling inner edge on ring limit is length half that seals the limit at least at least; Above-mentioned bulge loop refers to the angle<π on all summits in ring; Above-mentioned scrobicular ring refers in ring except the angle<π on three adjacent summits only being arranged, the angle >=π on all the other all summits;
Step 1.2.6: respectively with limit, the i right, i first-in-chain(FIC) and conllinear limit as playing initial line, medial side and a termination limit; With the bounded mode the three limits chain of rings is carried out on the right side of probe; Again respectively with conllinear limit, i last-of-chain and probe as initial line, medial side and a termination limit; It is a chain of with the bounded mode three limits to be carried out in the left side of probe, if there is the new additional side of downstream direction on the conllinear summit, then with this additional side as follow-up conllinear limit; If the n summit overlaps with the starting point that i hits the limit, then n returns on the summit to the 1st summit and polygon is closed, and the position of coordinating probe and conllinear limit concerns the embedding end; Otherwise; To the downstream side with the probe reverse edge is that first-in-chain(FIC), conllinear limit are that the segment of last-of-chain obtains the limit, middle part and as limit in the right side; Reverse edge with probe has been that the limit is that the bilateral chain of rings is carried out on the stop ring limit in ring limit, the right side then; And connecting n summit and conllinear summit as continuing the limit, the reverse edge of above-mentioned directed edge is end points and limit that direction with it opposite identical with said directed edge; To being that first-in-chain(FIC), probe are that the segment of last-of-chain obtains the limit, middle part and as limit in the left side, be that ring limit, the limit of continuing are that the bilateral chain of rings is carried out on the stop ring limit with limit in the left side with the conllinear limit, the embedding end; The above-mentioned method that segment is obtained the limit, middle part is: if segment is left spill, then the upstream edge with last-of-chain is the limit, middle part, and with first-in-chain(FIC) be encircle the limit, the limit, middle part is that the bilateral chain of rings is carried out on the stop ring limit, obtains end; Otherwise if the downstream side of first-in-chain(FIC) is the upstream edge of last-of-chain, then the downstream side with first-in-chain(FIC) is the limit, middle part, obtains end; Otherwise the downstream side with first-in-chain(FIC) has been that ring limit, last-of-chain are that the bilateral chain of rings is carried out on the stop ring limit, serves as the limit, middle part with the bilateral a chain of new downstream side of first-in-chain(FIC) afterwards, obtains end;
The a chain of method in three above-mentioned limits is:
Step 1.2.5.1: to being that first-in-chain(FIC), medial side are that the segment of last-of-chain carries out the segment correction, playing the start position of initial line new additional side arranged if revise the back to play initial line, then with new additional side as new initial line, otherwise be new initial line with an initial line; Again to be first-in-chain(FIC) with the medial side, to stop the limit be that the segment of last-of-chain carries out the segment correction, if revise the additional side that the start position of back medial side has new downstream direction, then with said additional side as limit in new, otherwise be newly middle limit with the medial side; If an initial line is identical with medial side or medial side is identical with the termination limit or the angle >=π of new middle limit starting point then finishes; As if twice correction result all is recessed chain, then execution in step 1.2.5.2; Otherwise,, then finish if a chain of mode in three limits is the bounded mode; Otherwise being the unbounded mode, if twice correction result all is monolateral shape, has been that ring limit, termination limit are that the bilateral chain of rings is carried out on the stop ring limit with new initial line then, finishes; If a preceding correction result is monolateral shape, a back correction result is recessed chain, to be first-in-chain(FIC) with limit in new, to stop the limit be that the segment of last-of-chain carries out postponing from the recessed chain of upper type, finish; Otherwise a preceding correction result is recessed chain, and a back correction result is monolateral shape, to new initial line be first-in-chain(FIC), new in the limit be that the segment of last-of-chain carries out postponing from the recessed chain of mode down, finish;
Step 1.2.5.2: with limit in new is the 1st strange flanging, and the starting point of new initial line is a upper extreme point, and the starting point that stops the limit is a lower extreme point, and j is a cycle counter, and j=1 carries out the processing of alternately postponing of two recessed chains;
Step 1.2.5.3: if the three limit chains of rings are unbounded modes, and the starting point that j takes turns strange flanging is angle >=π that lower extreme point or j take turns strange flanging starting point, finishes; If the starting point that the three limit chains of rings are bounded mode and j takes turns the upstream edge of strange flanging is that upper extreme point then finishes; Otherwise to take turns strange flanging with j is that first-in-chain(FIC), termination limit are the segment of last-of-chain, postpones to carry out recessed chain from upper type, and takes turns even flanging with the additional side of new connection as j;
Step 1.2.5.4: if the three limit chains of rings are unbounded modes, and the starting point that j takes turns even flanging is angle >=π that upper extreme point or j take turns even flanging starting point, finishes; If the starting point that the three limit chains of rings are bounded mode and j takes turns the downstream side of even flanging is that lower extreme point then finishes; Otherwise to being that first-in-chain(FIC), j take turns the segment that even flanging is a last-of-chain with new initial line, postpone, and take turns strange flanging as j+1 with the downstream side of the additional side of new connection to descend mode to carry out recessed chain certainly; With the j of j+1 as a new round, execution in step 1.2.5.3; The method that above-mentioned recessed chain is postponed is: if from the postponing of upper type, then the upstream edge with first-in-chain(FIC) serves as to observe the limit, otherwise serves as to observe the limit with the downstream side of last-of-chain; Starting point to observe the limit is an observation point, carries out the visible range that observation point is confirmed in the segment pinching, and cuts edge as upper reaches class with the directed edge of the upper reaches reference position of visible range, and the downstream side of the directed edge of the downstream final position of visible range is cut edge as the downstream class; For from the postponing of upper type, be that the bilateral chain of rings is carried out on the stop ring limit to observe that the limit be the ring limit, the downstream class is cut edge, for descend postponing of mode certainly, then with the side cut of upper reaches class be encircle the limit, the observation limit is that the bilateral chain of rings is carried out on the stop ring limit; Behind the bilateral chain of rings, if the starting point of the upstream edge on stop ring limit is identical with the starting point that plays the ring limit, then the new segment that constitutes of the starting point from starting point to the stop ring limit of encircling the limit is monolateral shape, otherwise is recessed chain.
2. ring-cutting subdivision method of simple polygon in the computer graphical as claimed in claim 1 is characterized in that, the segment pinching confirms that the method on alignment probe limit is:
Step 2.1: the upstream edge that with the first-in-chain(FIC) is order the 1st limit, last-of-chain is backward the 1st limit, and k is a cycle counter, k=1,
Step 2.2: if the terminal point on order k limit is positioned at the probe left side starting point on order k limit be positioned at the probe right side or with the probe conllinear; Be alignment edge then with order k limit; Finish; Otherwise if the terminal point on backward k limit is positioned at the probe left side starting point on backward k limit be positioned at the probe right side or with the probe conllinear, be alignment edge then with backward k limit, finish; Otherwise the starting point on backward k limit is positioned at the probe right side if the terminal point on backward k limit is with the probe conllinear, and then the downstream side with backward k limit is an alignment edge; Otherwise if order k limit is identical with backward k limit or order k limit is the upstream edge on backward k limit, then seeking all over whole sequence also can not have alignment edge, finishes; Otherwise if segment is recessed chain, and the starting point on the order k limit terminal point that is positioned at left side or the backward k limit of probe is positioned at the right side of probe, then alignment edge can not be arranged, and finishes; Otherwise with the downstream side on order k limit serves as that the upstream edge on order k+1 limit, backward k limit is backward k+1 limit, with k+1 as new k, execution in step 2.2.
3. ring-cutting subdivision method of simple polygon in the computer graphical as claimed in claim 1 is characterized in that, the segment pinching confirms that the method for the visible range of observation point is:
Step 3.1: the upstream edge that with the first-in-chain(FIC) is order the 1st limit, last-of-chain is backward the 1st limit; If observation point is in left side, order the 1st limit, the directed edge of the upper reaches reference position of visible range is order the 1st limit; If observation point is in left side, backward the 1st limit, the directed edge of the downstream final position of visible range is backward the 1st limit; If the upper and lower position of visible range is all definite, then finish; Otherwise with k is cycle counter, k=1,
Step 3.2: with the downstream side on order k limit serves as that the upstream edge on order k+1 limit, backward k limit is backward k+1 limit, with k+1 as follow-up k; Not in left side, order k limit, then the directed edge of downstream final position is order k-1 limit, finishes if observation point is positioned at left side, order the 1st limit; Otherwise if observation point is positioned at left side, order the 1st limit and left side, backward k limit simultaneously, then the directed edge of downstream final position is backward k limit, finishes; Otherwise if observation point is positioned at left side, order k limit and left side, backward the 1st limit simultaneously, then the directed edge of upper reaches reference position is order k limit, finishes; Not in left side, backward k limit, then the directed edge of upper reaches reference position is backward k-1 limit, finishes otherwise if observation point is positioned at left side, backward the 1st limit; Otherwise execution in step 3.2.
CN200910234276A 2009-11-16 2009-11-16 Ring-cutting subdivision method of simple polygon in computer graphics Expired - Fee Related CN101923502B (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN200910234276A CN101923502B (en) 2009-11-16 2009-11-16 Ring-cutting subdivision method of simple polygon in computer graphics
PCT/CN2010/073893 WO2011057490A1 (en) 2009-11-16 2010-06-12 Tangent ring partition method of simple polygons in computer graphs

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN200910234276A CN101923502B (en) 2009-11-16 2009-11-16 Ring-cutting subdivision method of simple polygon in computer graphics

Publications (2)

Publication Number Publication Date
CN101923502A CN101923502A (en) 2010-12-22
CN101923502B true CN101923502B (en) 2012-10-24

Family

ID=43338455

Family Applications (1)

Application Number Title Priority Date Filing Date
CN200910234276A Expired - Fee Related CN101923502B (en) 2009-11-16 2009-11-16 Ring-cutting subdivision method of simple polygon in computer graphics

Country Status (2)

Country Link
CN (1) CN101923502B (en)
WO (1) WO2011057490A1 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104658018B (en) * 2013-11-18 2018-01-09 北京四维图新科技股份有限公司 A kind of method and mapping arrangements for decomposing ring set polygon
CN105843163B (en) * 2016-03-19 2018-08-07 浙江大学 The circular cutter rail connection method in the section of type containing lake in a kind of island

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5335319A (en) * 1990-11-20 1994-08-02 Daikin Industries, Ltd. Polygon division method and apparatus
CN1996392A (en) * 2006-08-14 2007-07-11 东南大学 Figure reconstruction method in 3D scanning system
CN1996383A (en) * 2006-12-21 2007-07-11 西北工业大学 Subdivision method for polygon with inner hole in image treatment process
CN101373543A (en) * 2008-09-28 2009-02-25 武汉大学 Method for rapidly cutting three-dimensional gridding model

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10255062A (en) * 1997-03-14 1998-09-25 Brother Ind Ltd Polygon dividing method
JP3179392B2 (en) * 1997-11-17 2001-06-25 日本電気アイシーマイコンシステム株式会社 Image processing apparatus and image processing method
JP4912756B2 (en) * 2006-06-05 2012-04-11 株式会社日立製作所 Polygon data dividing method and polygon data dividing device

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5335319A (en) * 1990-11-20 1994-08-02 Daikin Industries, Ltd. Polygon division method and apparatus
CN1996392A (en) * 2006-08-14 2007-07-11 东南大学 Figure reconstruction method in 3D scanning system
CN1996383A (en) * 2006-12-21 2007-07-11 西北工业大学 Subdivision method for polygon with inner hole in image treatment process
CN101373543A (en) * 2008-09-28 2009-02-25 武汉大学 Method for rapidly cutting three-dimensional gridding model

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
翟仁健,武芳,薛本新.基于边优先的任意多边形最优三角剖分.《测绘科学》.2008,第33卷(第1期),122-125. *

Also Published As

Publication number Publication date
WO2011057490A1 (en) 2011-05-19
CN101923502A (en) 2010-12-22

Similar Documents

Publication Publication Date Title
Balaguer et al. The historical reference in restoration ecology: re-defining a cornerstone concept
Dodd The core model
Bird Pearls of functional algorithm design
CN101923502B (en) Ring-cutting subdivision method of simple polygon in computer graphics
Le Bras et al. Double-wheel graphs are graceful
WO2019055096A3 (en) Three-dimensional graphics image processing
Annanto et al. Numerical analysis of stress and displacement on the index finger of the prosthetic hand due to hook position
Tabuce New remains of Chambius kasserinensis from the Eocene of Tunisia and evaluation of proposed affinities for Macroscelidea (Mammalia, Afrotheria)
Soens et al. Seawalls at work: Envirotech and labor on the North Sea coast before 1800
Idris et al. Malaysia’s contemporary political and economic relations with Iran
Iordan Software Architecture and Design Patterns for Efficient Development of a Software Dedicated to Euler Graph Study
Chun et al. Towards a splitter theorem for internally 4-connected binary matroids IV
Moshkov Greedy algorithm with weights for decision tree construction
Yeh Mathematics, virtual reality, and programming
Wijewardena The Problem of Overcoming Middle Income Trap: Getting Integrated to Global Economy is the Way-out
Schorn Degeneracy in geometric computation and the perturbation approach
CN110502819A (en) The computer-implemented method of concrete-bridge strip member outer closure stirrup
Yadav On poset theoretic view point of combinatorics
Waraich The politics of wastefulness and ‘the poetics of waste’: Ruby Chishti’s sartorial interventions
Khandhawit et al. Chomp on graphs and subsets
Kleinman et al. Towards a Human-in-the-Loop System for Authoring Game AI using Behavior Languages
Woodward List programming
Connell et al. Digital Fabrication and Aunt Sarah: Enabling Quadratic Explorations Via Technology
CN104217082B (en) Grid reconstruction method based on LS PREPOST
Mecham FIRST-WORLD SOLUTIONS FOR FIRST-YEAR PROBLEMS

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20121024

Termination date: 20151116

EXPY Termination of patent right or utility model