|
JavaTM 2 Platform Standard Ed. 5.0 |
|||||||||
ÀÌÀü Ŭ·¡½º ´ÙÀ½ Ŭ·¡½º | ÇÁ·¹ÀÓÀ¸·Î ÇÁ·¹ÀÓ ¾øÀÌ | |||||||||
°³¿ä: NESTED | Çʵå | constructor¡¡ ¡¡ | ¸Þ¼µå | »ó¼¼: Çʵå | constructor¡¡ ¡¡ | ¸Þ¼µå |
public interface PathIterator
PathIterator
ÀÎÅÍÆäÀ̽ºÀÇ Á¦°øÇÏ´Â µµ±¸¸¦ »ç¿ëÇϸé, Shape
ÀÎÅÍÆäÀ̽º¸¦ ±¸ÇöÇÏ´Â °´Ã¼´Â ÇÑ ¹ø¿¡ 1 ¼¼±×¸ÕÆ®(segment) ´ÜÀ§·Î °æ°èÀÇ ÆÐ½º¸¦ ²¨³»´Â °ÍÀ» È£Ãâ Ãø¿¡ Çã°¡ÇÏ´Â °ÍÀ¸·Î ±× °æ°èÀÇ Áö¿À¸ÞÆ®¸®¸¦ µ¹·ÁÁÙ ¼ö°¡ ÀÖ½À´Ï´Ù. ÀÌ ÀÎÅÍÆäÀ̽º´Â 1 Â÷¿¡¼ 3 Â÷±îÁöÀÇ º£Áö¿¡°î¼± (¶óÀÎ ¹× 2 Â÷ ¶Ç´Â 3 Â÷ º£Á¦½ºÇÁ¶óÀÎ)À» »ç¿ëÇÏ´Â °ÍÀ¸·Î ±×·¯ÇÑ °´Ã¼°¡ ±× °æ°èÀÇ ÆÐ½º¸¦ ²¨³¾ ¼ö ÀÖµµ·Ï ÇÕ´Ï´Ù.
º¹¼öÀÇ ¼ºê ÆÐ½º´Â ¡¸MOVETO¡¹¼¼±×¸ÕÆ®(segment)¸¦ »ç¿ëÇØ Áö¿À¸ÞÆ®¸®¸¦ ºÒ¿¬¼ÓÀ¸·Î ÇØ, ¾î´À ¼ºê ÆÐ½ºÀÇ ÃÖÈķκÎÅÍ ´ÙÀ½ÀÇ ¼ºê ÆÐ½ºÀÇ ¼±µÎ·Î À̵¿ÇÏ´Â °ÍÀ¸·Î Ç¥ÇöÇÒ ¼ö ÀÖ½À´Ï´Ù.
°¢ ¼ºê ÆÐ½º´Â ¼ºê ÆÐ½ºÀÇ ¸¶Áö¸· ¼¼±×¸ÕÆ®(segment)¸¦ ±× ¼ºê ÆÐ½ºÀÇ ¼±µÎÀÇ ¡¸MOVETO¡¹¼¼±×¸ÕÆ®(segment)¿Í °°Àº ÁÂÇ¥·Î ³¡³»´ÂÁö, ¶Ç´Â ¡¸CLOSE¡¹¼¼±×¸ÕÆ®(segment)¸¦ »ç¿ëÇØ ¸¶Áö¸· Á¡À¸·ÎºÎÅÍ ÃÖÃÊÀÇ Á¡±îÁö ¼±ºÐÀ» Ãß°¡ÇÏ´Â °ÍÀ¸·Î ¼öÀÛ¾÷À¸·Î Á¾·áÇÒ ¼ö ÀÖ½À´Ï´Ù
. ¡¸CLOSE¡¹¼¼±×¸ÕÆ®(segment)¸¦ »ç¿ëÇØ ÆÐ½º¸¦ ´Ý´Â ÀÌ¿Ü ¹æ¹ýÀ¸·Î À±°ûÀ» ¼öÀÛ¾÷À¸·Î ´ÝÀ¸¸é, ¼ºê ÆÐ½ºÀÇ Á¾Á¡¿¡¼ ´Ù¸¥ ¼±Á¾ Àå½ÄÀÌ »ç¿ëµÉ °¡´É¼ºÀÌ ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î, BasicStroke
°´Ã¼´Â ¡¸CLOSE¡¹¼¼±×¸ÕÆ®(segment)¸¦ °ËÃâÇßÀ» °æ¿ì¿¡ ÃÖÃÊÀÇ Á¡°ú ¸¶Áö¸· Á¡À» ¹±â À§Çؼ ¡¸JOIN¡¹¸¦ ¼±ÀÇ Àå½ÄÀ¸·Î¼ »ç¿ëÇÕ´Ï´Ù¸¸, ÃÖÃÊÀÇ ÁÂÇ¥¿Í °°Àº ÁÂÇ¥·Î ÆÐ½º¸¦ ³¡³»¸é, ¸¶Áö¸·¿¡ ¡¸CAP¡¹°¡ ¼±ÀÇ Àå½ÄÀ¸·Î¼ »ç¿ëµË´Ï´Ù.
Shape
,
BasicStroke
ÇÊµå °³¿ä | |
---|---|
static int |
SEG_CLOSE
¼±ÇàÇÏ´Â ¼ºê ÆÐ½º°¡ °¡Àå »õ·Î¿î SEG_MOVETO¿¡ ´ëÀÀÇÏ´Â Á¡±îÁöÀÇ ¼±ºÐÀ» Ãß°¡ÇÏ´Â °ÍÀ¸·Î ´ÝÇôÁöÁö ¾ÊÀ¸¸é ¾È µÇ´Â °ÍÀ» ÁöÁ¤ÇÏ´Â ¼¼±×¸ÕÆ®(segment)Çü Á¤¼öÀÔ´Ï´Ù. |
static int |
SEG_CUBICTO
°¡Àå »õ·Ó°Ô ÁöÁ¤µÈ Á¡À¸·ÎºÎÅÍ ·»´õ¸µ µÇ´Â 3 Â÷ ÆÄ¶ó¸ÞÆ®¸¯ °î¼±À» ÁöÁ¤ÇÏ´Â 3°³ÀÇ Á¡¼¼Æ®ÀÇ ¼¼±×¸ÕÆ®(segment)Çü Á¤¼öÀÔ´Ï´Ù. |
static int |
SEG_LINETO
°¡Àå »õ·Ó°Ô ÁöÁ¤µÈ Á¡À¸·ÎºÎÅÍ ·»´õ¸µ µÇ´Â ¼±ÀÇ Á¾Á¡À» ÁöÁ¤ÇÏ´Â Á¡ÀÇ ¼¼±×¸ÕÆ®(segment)Çü Á¤¼öÀÔ´Ï´Ù. |
static int |
SEG_MOVETO
»õ·Î¿î ¼ºê ÆÐ½ºÀÇ °³½Ã À§Ä¡¸¦ ÁöÁ¤ÇÏ´Â Á¡ÀÇ ¼¼±×¸ÕÆ®(segment)Çü Á¤¼öÀÔ´Ï´Ù. |
static int |
SEG_QUADTO
°¡Àå »õ·Ó°Ô ÁöÁ¤µÈ Á¡À¸·ÎºÎÅÍ ·»´õ¸µ µÇ´Â 2 Â÷ ÆÄ¶ó¸ÞÆ®¸¯ °î¼±À» ÁöÁ¤ÇÏ´Â Á¡ÀÇ Æä¾îÀÇ ¼¼±×¸ÕÆ®(segment)Çü Á¤¼öÀÔ´Ï´Ù. |
static int |
WIND_EVEN_ODD
ÆÐ½ºÀÇ ³»ºÎ¸¦ °áÁ¤Çϱâ À§Çؼ ¿ì±â±ÔÄ¢À» ÁöÁ¤ÇÏ´Â ±¼°î ±ÔÄ¢ Á¤¼öÀÔ´Ï´Ù. |
static int |
WIND_NON_ZERO
ÆÐ½ºÀÇ ³»ºÎ¸¦ °áÁ¤Çϱâ À§Çؼ ºñÁ¦·Î ±ÔÄ¢À» ÁöÁ¤ÇÏ´Â ±¼°î ±ÔÄ¢ Á¤¼öÀÔ´Ï´Ù. |
¸Þ¼µå °³¿ä | |
---|---|
int |
currentSegment (double[] coords)
¹Ýº¹ ó¸®ÀÇ ÇöÀçÀÇ ÆÐ½º ¼¼±×¸ÕÆ®(segment)ÀÇ ÁÂÇ¥ ¹× ÇüŸ¦ ¸®ÅÏÇÕ´Ï´Ù. |
int |
currentSegment (float[] coords)
¹Ýº¹ ó¸®ÀÇ ÇöÀçÀÇ ÆÐ½º ¼¼±×¸ÕÆ®(segment)ÀÇ ÁÂÇ¥ ¹× ÇüŸ¦ ¸®ÅÏÇÕ´Ï´Ù. |
int |
getWindingRule ()
ÆÐ½ºÀÇ ³»ºÎ¸¦ °áÁ¤ÇÏ´Â ±¼°î ±ÔÄ¢À» ¸®ÅÏÇÕ´Ï´Ù. |
boolean |
isDone ()
¹Ýº¹ 󸮰¡ ¿Ï·áÇß´ÂÁö ¾î¶°Çß´ÂÁö¸¦ ÆÇÁ¤ÇÕ´Ï´Ù. |
void |
next ()
À̵¿ÀÇ ¼ø¼ ¹æÇâÀ¸·Î ¾ÆÁ÷ Á¡ÀÌ ÀÖ´Â °æ¿ì¿¡ ±× ¹æÇâ¿¡ µû¶ó ÆÐ½ºÀÇ ´ÙÀ½ÀÇ ¼¼±×¸ÕÆ®(segment)¿¡ ¹Ýº¹ÀÚ¸¦ À̵¿ÇÕ´Ï´Ù. |
ÇʵåÀÇ »ó¼¼ |
---|
static final int WIND_EVEN_ODD
static final int WIND_NON_ZERO
static final int SEG_MOVETO
static final int SEG_LINETO
static final int SEG_QUADTO
(t=[0..1])
À¸·Î ÆÄ¶ó¸ÞÆ®¸¯ ÄÁÆ®·Ñ ¹æÁ¤½ÄÀ» Ǫ´Â °ÍÀ¸·Î º¸°£ µË´Ï´Ù. ÀÌ °î¼±ÀÇ ÆÄ¶ó¸ÞÆ®¸¯ ÄÁÆ®·Ñ ¹æÁ¤½ÄÀº ´ÙÀ½°ú °°ÀÌ µË´Ï´Ù.
P(t) = B(2,0) *CP + B(2,1) *P1 + B(2,2) *P2 0 <= t <= 1 B(n, m) = mth coefficient of nth degree Bernstein polynomial = C(n, m) * t^(m) * (1 - t)^(n-m) C(n, m) = Combinations of n things, taken m at a time = n! / (m! * (n-m)! )
static final int SEG_CUBICTO
(t=[0..1])
À¸·Î ÆÄ¶ó¸ÞÆ®¸¯ ÄÁÆ®·Ñ ¹æÁ¤½ÄÀ» Ǫ´Â °ÍÀ¸·Î º¸°£ µË´Ï´Ù. ÀÌ °î¼±ÀÇ ÆÄ¶ó¸ÞÆ®¸¯ ÄÁÆ®·Ñ ¹æÁ¤½ÄÀº ´ÙÀ½°ú °°ÀÌ µË´Ï´Ù.
P(t) = B(3,0) *CP + B(3,1) *P1 + B(3,2) *P2 + B(3,3) *P3 0 <= t <= 1 B(n, m) = mth coefficient of nth degree Bernstein polynomial = C(n, m) * t^(m) * (1 - t)^(n-m) C(n, m) = Combinations of n things, taken m at a time = n! / (m! * (n-m)! )ÀÌ ÇüÅÂÀÇ °î¼±Àº ÀϹÝÀûÀ¸·Î º£Áö¿¡°î¼±À¸·Î¼ ¾Ë·ÁÁ® ÀÖ½À´Ï´Ù.
static final int SEG_CLOSE
¸Þ¼µåÀÇ »ó¼¼ |
---|
int getWindingRule()
WIND_EVEN_ODD
,
WIND_NON_ZERO
boolean isDone()
true
, ±×·¸Áö ¾ÊÀº °æ¿ì´Â false
void next()
int currentSegment(float[] coords)
coords
- ÀÌ ¸Þ¼µå·ÎºÎÅÍ ¸®ÅϵÈ
µ¥ÀÌÅ͸¦ º¸°ü À¯ÁöÇÏ´Â ¹è¿
SEG_MOVETO
,
SEG_LINETO
,
SEG_QUADTO
,
SEG_CUBICTO
,
SEG_CLOSE
int currentSegment(double[] coords)
coords
- ÀÌ ¸Þ¼µå·ÎºÎÅÍ ¸®ÅϵÈ
µ¥ÀÌÅ͸¦ º¸°ü À¯ÁöÇÏ´Â ¹è¿
SEG_MOVETO
,
SEG_LINETO
,
SEG_QUADTO
,
SEG_CUBICTO
,
SEG_CLOSE
|
JavaTM 2 Platform Standard Ed. 5.0 |
|||||||||
ÀÌÀü Ŭ·¡½º ´ÙÀ½ Ŭ·¡½º | ÇÁ·¹ÀÓÀ¸·Î ÇÁ·¹ÀÓ ¾øÀÌ | |||||||||
°³¿ä: NESTED | Çʵå | constructor¡¡ ¡¡ | ¸Þ¼µå | »ó¼¼: Çʵå | constructor¡¡ ¡¡ | ¸Þ¼µå |
Copyright 2004 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms . Documentation Redistribution Policy µµ ÂüÁ¶ÇϽʽÿÀ.