BBSˮľÇ廪վ¡Ã¾«»ªÇø

·¢ÐÅÈË: zixia (¶ÀÊØ¿Õ·¿¤Î±ÈÌØÏÉ×Ó), ÐÅÇø: Java 
±ê  Ìâ: À´×Ô JAVA µÄ´«Ëµ14.1 
·¢ÐÅÕ¾: BBS Ë®Ä¾Ç廪վ (Tue May 12 20:59:11 1998) 
 
                À´ ×Ô Java µÄ ´« Ëµ (14)  
                                ×÷Õß £º Çå »ª ´ó Ñ§ ½Ì ÊÚ £º Íõ ¿Ë ºê 
                        ½Ì Ñ§ ¸Ù Òª 
 
Äã ÏÖ ÔÚ ÒÑ ¾­ ¿É ÒÔ ÔÚ Java ³Ì Ðò Àï Ð´ ¸÷ ÖÖ ¸÷ Ñù µÄ ×Ö ÁË £¬ ÄǠô ÓР
û ÓРÏë ¹ý ÔÙ ¼Ó µã Í¼ ÐΠ, ÈàÄ㠵ĠÖ÷ Ò³ ¿´ ÉϠȥ ¸ü ¼Ó ÓÅ ÃÀ ÄØ £¿ Õâ Ò» ½Ú 
ÎÒ ÃÇ ½« ¼Ì Ðø Ñ§ Ï° È砺Πʹ ÓàGraphics Àà Ìá ¹© µÄ ¸÷ ÖÖ »æ Í¼ ·½ ·¨ £¬ ·¢ »Ó 
Ä㠵Ġ´´ Ôì Á¦ £¬ »­ ³ö Æ¯ ÁÁ µÄ Í¼ ÐΠ¡£ 
 ¶à ±ß ÐΠ
ÄÜ ¹» »­ ¾Ø ÐΠ¡¢ ÍÖ Ô² ºÍ »¡ ËÆ ºõ »¹ ²» ÄÜ Âú ×ã ×÷ Í¼ µÄ Ðè Òª ¡£ Õâ Ò» ½Ú Àï 
½« ½é ÉÜ ¶à ±ß ÐΠµÄ »æ Í¼ ·½ ·¨ £¬ ¶ø Êµ ¼Ê ÉÏ »æ ÖÆ ¶à ±ß ÐΠ¾Í ÊÇ ¸ø ¶¨ Á½ ×é 
×ø ±ê £¬ Ò» ×é x ×ø ±ê £¬ Ò» ×é y ×ø ±ê £¬ °´ Ë³ Ðò ½« ¸ø ¶¨ µÄ Õâ Ò» ×é ×ø ±ê Á¬ 
½Ó Æð À´ ¾Í ¿É ÒÔ »æ ³ö Ò» ¸ö ¶à ±ß ÐΠ£¬ »æ ÖÆ ¶à ±ß ÐΠµÄ »ù ±¾ ·½ ·¨ ¸ñ Ê½ Èç 
Ï £º 
¡¡ ¡¡ ¡¡ drawPolygon ( int x[ ], int y[ ], int n ) 
¡¡ ¡¡ ¡¡ fillPolygon ( int x[ ], int y[ ], int n ) 
 Õâ Á½ ¸ö ·½ ·¨ ÖР£¬ ²Î Êý ÖРx[ ] ¡¢ y[ ] ·Ö ±ð ÊÇ ¶à ±ß ÐΠ¶¥ µã µÄ x ×ø ±ê 
ºÍ y ×ø ±ê £¬ n ±í Ê¾ ¶à ±ß ÐΠµÄ ¶¥ µã Êý ¡£ drawPolygon ²¢ ²» ÄÜ ×Ô ¶¯ ÐΠ³É 
·â ±Õ Çø Óò £¬ Ëù ÒÔ Òª »æ ÖÆ ·â ±Õ ¶à ±ß ÐΠ£¬ ±Ø Ðë È· ±£ µÚ Ò» ¸ö ¶¥ µã ºÍ ×î 
ºó Ò» ¸ö ¶¥ µã ×ø ±ê Ïà Í¬ ¡£ fillPolygon Ôò ÎÞ Ðè Õâ Ñù ×ö ¡£ 
 Èç ¹û Ïë Ôڠͼ ÖРµÄ Áí Ò» ¸ö Çø Óò »­ Ò» ¸ö Í¬ Ñù µÄ ¶à ±ß ÐΠ£¬ Äã »á Ôõ 
ô ×ö ÄØ £¿ ÖØ ¸´ Ç° Ã栵Ġÿ Ò» Ìõ Ö¸ Áî £¬ ²¢ ÐÞ ¸Ä Ã¿ ¸ö µã µÄ ×ø ±ê ¡£ Å¶ £¡ 
¿É Ç§ Íò ±ð ÄÇ Ñù ×ö ¡£ ÏÖ ÔÚ ¾Í ½é ÉÜ Ò» ÖÖ ¿É ÒÔ Çá Çá ËÉ ËÉ ½â ¾ö Õâ ¸ö ÎÊ Ìâ 
µÄ ·½ ·¨ --copyArea ¡£ Æäâ Ñù ×ö µÄ ¡£ Àý Èç £º 
¡¡ ¡¡ ¡¡ Image getImage ( "http://xxx . yyy . edu /Applet / classes / Image1.gif "); 
¡¡ ¡¡ ¡¡ Image getImage ( "file:/D:/image/ ¡± , " example.gif " );  
 ±ê ×¼ ¸ñ Ê½ Èç Ï £º 
¡¡ ¡¡ ¡¡ copyArea ( int x0 , int y0 , int width , int height , int x1 , itn y1 ) 
 Ç° Ã栵ĠËÄ ¸ö ²Î Êý Ó¦ ¸Ã ¶¼ ºÜ Êì Ï¤ ÁË £¬ Ëü ÃÇ Ö¸ ¶¨ ÁË Òª ¸´ ÖÆ µÄ ¾Ø 
ÐÎ Çø Óò £¬ ×î ºó Á½ ¸ö ²Î Êý ±í Ê¾ Ëù Òª ¸´ ÖÆ µÄ Çø Óò ¾à Ô­ Î» ÖàµÄ x ¡¢ y Æ« 
ÒÆ Á¿ ¡£ µ± x1 ºÍ y1 Îª ¸º £¬ ¸´ ÖÆ µ½ Ô­ Î» ÖàµÄ ×ó ±ß »ò ÉÏ ±ß ¡£ ·´ Ö® Èô x1 
ºÍ y1 Îª Õý £¬ Ôò ¸´ ÖÆ µ½ ÓÒ ±ß ºÍ Ï ±ß ¡£ 
 Äã Ïë ÊÔ ÊÔ Õâ ¸ö ·½ ·¨ ÓР¶à ºÃ ÓàÂ𠣿 ÊÔ ÊÔ ÏÂ Ãæ µÄ ³Ì Ðò °É  
³Ì Ðò 16.4 ¡¡ ¡¡ // poly.java 
¡¡ ¡¡ import java.awt.Graphics; 
¡¡ ¡¡ import java.awt.Color; 
¡¡ ¡¡ public class poly extends java.applet.Applet 
¡¡ ¡¡ { int poly1_x[ ] = {10,20,80,90,50,10}; // Ö¸ ¶¨ µÚ Ò» ¸ö ¶à ±ß ÐΠµÄ x ¡¢ y ×ø 
±ê 
¡¡ ¡¡ ¡¡ ¡¡ ¡¡ ¡¡ int poly1_y[ ] = {20,10,10,20,60,20}; 
¡¡ ¡¡ ¡¡ ¡¡ ¡¡ ¡¡ int poly1_L url ); 
¡¡ ¡¡ ¡¡ Image getImage ( URL url , String name ); 
¡¡ ¡¡ ¡¡ URL ÊÇ Uniform Resource Locator £¨ Í³ Ò» ×Ê Ô´ ¶¨ Î» Æ÷ £© µÄ Ëõ Ð´ 
£¬ Ëü ÊÇ WWW ÉÏ ÓàÀ´ Ö¸ Ê¾ Internet ÐŠϢ ×Ê Ô´ Î» ÖàµÄ ·½ ·¨ ¡£ Java ¶¨ Òå 
µÄ URL ¶Ô Ïó Ö¸ ¶¨ ÁË Ò» ¸ö Íø Âç ×Ê Ô´ µÄ Î» Öà¡£ getImage ·½ ·¨ ·µ »Ø Ò» ¸ö 
Image ¶Ô Ïó ¡£ µ± È» £¬ ÎÒ ÃÇ ¿É ÒÔ °Ñ ÎÄ ¼þ Ãû ¼° Æä Î» ÖàÕû ¸ö ¿´ ×ö Ò» ¸ö 
URL ¶Ô Ïó À´ Ö¸ Ê¾ Ëù Òª ¼Ó ÔØ µÄ Í¼ ÐΠÎÄ ¼þ ¡£ Õâ ÖÖ Çé ¿ö ¾Í ²É ÓàµÚ Ò» ÖÖ 
¸ñ Ê½ ¡£ Í¬ Ñù Ò² ¿É ÒÔ Óàͼ ÐΠÎÄ ¼þ µÄ Î» ÖàºÍ ÎÄ ¼þ Ãû ·Ö ±ð Ö¸ ¶¨ Ëü £¬ ¿É 
¼û µÚ ¶þ ÖÖ ¸ñ Ê½ ¾Í ÊÇ Õptnum = 6; // Ö¸ ¶¨ µÚ Ò» ¸ö ¶à ±ß ÐΠµÄ ±ß Êý 
¡¡ ¡¡ ¡¡ ¡¡ ¡¡ ¡¡ int poly2_x[ ] = {110,120,180,190,150,110}; // Ö¸ ¶¨ µÚ ¶þ ¸ö ¶à 
±ß ÐΠµÄ x ¡¢ y ×ø ±ê 
¡¡ ¡¡ ¡¡ ¡¡ ¡¡ ¡¡ int poly2_y[ ] = {20,10,10,20,60,20}; 
¡¡ ¡¡ ¡¡ ¡¡ ¡¡ ¡¡ int poly2_ptnum = 6; // Ö¸ ¶¨ µÚ ¶þ ¸ö ¶à ±ß ÐΠµÄ ±ß Êý 
¡¡ ¡¡ ¡¡ ¡¡ public void paint(Graphics g) 
¡¡ ¡¡ ¡¡ ¡¡ { 
¡¡ ¡¡ ¡¡ ¡¡ ¡¡ ¡¡ g.drawPolygon(poly1_x,poly1_y,poly1_ptnum); // ÒÔ Ê¡ È± µÄ 
ÑÕ É« »­ µÚ Ò» ¸ö ¶à ±ß ÐΠ
¡¡ ¡¡ ¡¡ ¡¡ ¡¡ ¡¡ g.setColor(Color.pink); 
¡¡ ¡¡ ¡¡ ¡¡ ¡¡ ¡¡ g.fillPolygon(poly2_x,poly2_y,poly2_ptnum); // Óà·Û É« Ìî ³ä 
µÚ ¶þ ¸ö ¶à ±ß ÐΠ
¡¡ ¡¡ ¡¡ ¡¡ ¡¡ ¡¡ g.copyArea(108,8,85,60,-50,50); // °Ñ µÚ ¶þ ¸ö ¶à ±ß ÐΠ¿½ ±´ µ½ 
¾à Ô­ Î» ÖàÏò ×ó 50 £¬ Ïò ÓÒ 50 µÄ Î» Öà
¡¡ ¡¡ ¡¡ ¡¡ } 
¡¡ ¡¡ } 
¡¡ ¡¡ ¡¡ ¸Ã ³Ì Ðò µÄ HTML ÎÄ ¼þ Èç Ï Ëù Ê¾ £º  
±à ¼­ Íê ÒÔ ºó £¬ Ë³ Àû Í¨ ¹ý ±à Ò렾͠¿É ÒÔ ÔË ÐРÁË £¬ ÔË ÐР½á ¹û Èç Í¼ 16.7 
Ëù Ê¾ £º  
  
ͼ 16.7 ³Ì Ðò 16.4 ÔË ÐР½á ¹û  
 ÏÖ Ô Õ⠾䠻° ¾Í ¿É ÒÔ ÓàgetImage À´ ¼Ó Ôؠͼ Æ¬ ÁË ¡£ Æä ±ê ×¼ ¸ñ Ê½ Îª £º 
¡¡ ¡¡ ¡¡ Image getImage ( URڠͼ ÖРÓРÈý ¸ö ×ê Ê¯ ÐΠ״ µÄ ¶à ±ß ÐΠ£¬ ¶ø ÎÒ ÃÇ Ö» ÓàÁË Á½ ´Î »­ 
¶à ±ß ÐΠµÄ ·½ ·¨ £¬ ÖР¼ä ÄÇ ¸ö ×ê Ê¯ ¾Í ÊÇ ÓàcopyArea »­ ³ö À´ µÄ ¡£ 
 ¼Ó ÔØ ÏÖ ³É µÄ Í¼ Æ¬ 
 Ò» Ö¡ ¸´ ÔÓ µÄ Í¼ ÐΠ»­ Ãæ £¬ ÎÒ ÃÇ ²» ¿É ÄÜ ÔÚ ³Ì Ðò Ö´ ÐРʱ Í¨ ¹ý µ÷ Óà
¸÷ ÖÖ »æ Í¼ ·½ ·¨ Êµ Ê± µØ »­ ³ö À´ ¡£ ´ó ²¿ ·Ö µÄ Í¼ ÐΠ¶¼ ÊÇ Ôç ÔÚ ¿ª ·¢ ³Ì Ðò 
ǰ ¾Í ÓàÆä Ëû »æ Í¼ Èí ¼þ »æ ÖÆ ºÃ ÁË £¬ ³Ì Ðò Ö´ ÐРʱ ¡£ Ö± ½Ó °Ñ Í¼ Æ¬ ¼Ó ÔØ 
½ø À´ ²¢ ·Å ÔÚ ÊÊ µ± µÄ Î» Öà¡£ Õâ Ò» ½Ú ÎÒ ÃÇ ½« Ñ§ Ï° È砺Πʹ ÓàJava Í¼ ÐΠ
¹¦ ÄÜ ÔÚ Ö÷ Ò³ Àï ¼Ó Èë ¸÷ Ê½ ¸÷ Ñù µÄ Í¼ Æ¬ ¡£ Java Ö§ ³Ö WWW ÉÏ ×î Á÷ ÐРµÄ 
ͼ Ïó ¸ñ Ê½ --JPEG ºÍ GIF ¡£ Í¨ ³£ JPEG ¸ü ÊÊ ÓÚ ×Ô È» É« ²Ê µÄ Í¼ Æ¬ £¬ Èç ÕÕ 
Ƭ £¬ ¶ø GIF Ôò ±È ½Ï ÊÊ ºÏ ×° ÊΠͼ Æ¬ ¡¢ »¨ ±ß ºÍ Ð¡ ¶¯ »­ ¡£ 
 Ê× ÏÈ À´ ¿´ ¿´ Java Èç ºÎ ÔØ Èë ÐΠ³É µÄ Í¼ ÐΠÎÄ ¼þ ¡£ Æä Êµ ºÜ ¼ò µ¥ £¬ 
Ö» Òª ¸ø ¶¨ Òª ¼Ó ÔØ µÄ Í¼ ÐΠÎÄ ¼þ µÄ Î» ÖàºÍ ÎÄ ¼þ Ãû £¬ ¾Í ¿É ÒԠͨ ¹ý 
getImage Õâ ¸ö ·½ ·¨ À´ °Ñ Í¼ Æ¬ ¼Ó ÔØ µ½ ³Ì Ðò ÖР¡£ Õâ Àï Ëù Ëµ µÄ ÎÄ ¼þ Î» Öà
²» ½ö ½ö ÊÇ Ö¸ ÎÄ ¼þ ÔÚ ±¾ µØ Ó² ÅÌ µÄ ´æ ·Å Â· ¾¶ £¬ Java ³Ì Ðò »¹ ¿É ÒÔ ¸ù ¾Ý 
Ö¸ ¶¨ µÄ URL £¬ Ö± ½Ó ¼Ó ÔØ Íø Âç ÉÏ µÄ Í¼ ÐΠÎÄ ¼þ £¬ Ò² ¾Í ÊǠ˵ ¼Ó ÔØ µÄ Í¼ 
ÐΠ¿É ÒÔ ÔÚ ±¾ »ú Ó² ÅÌ ÉÏ £¬ Ò² ¿É ÒÔ ÔÚ Íø Âç ÉÏ ¡£ ¶Ô ÓÚ ±à ³Ì Õß ¶ø ÑÔ £¬ Á½ 
Õß µÄ Ê¹ Óàһ Ñù ¼ò µ¥ ¡£ 
 ÔÚ Applet ÖР¼Ó Ôؠͼ Æ¬ ¾Í ²» µÃ ²» Ê¹ ÓàImage Õâ ¸ö Àà £¬ ºÍ Ç° Ãæ Óà
¹ý µÄ Ðí ¶à Àà Ò» Ñù £¬ Image Ò² ÔÚ java.awt ³Ì Ðò °ü Àï ¡£ Ëù ÒÔ £¬ Èç ¹û Òª ±à 
д Ò» ¸ö °ü º¬ ÓРͼ Æ¬ µÄ Applet £¬ ¾Í Ó¦ ¸Ã ¼Ç ×¡ ÔÚ ³Ì Ðò ¿ª Í· ¼Ó ÉÏ Õâ ¾ä 
»° £º 
¡¡ ¡¡ ¡¡ import java.awt.Image; 
д ÉÏ 
-- 
 
        °®ÇéÀ´µÃ¿ìÈ¥µÃÒ²¿ì£¬Ö»ÓÐÖíÈâ¾íÊÇÓÀºãµÄ. 
 
¡ù À´Ô´:¡¤BBS Ë®Ä¾Ç廪վ bbs.net.tsinghua.edu.cn¡¤[FROM: 166.111.5.75] 

BBSˮľÇ廪վ¡Ã¾«»ªÇø