|
·ÖÀർº½ |
 |
|
|
|
PACS ÖÐʹÓÃJ2meÖÐÈÎÒâ½Ç¶ÈͼƬÐýת |
|
×ÊÔ´´óС£º10.79 KB |
×ÊÔ´ÀàÐÍ£ºÎĵµ |
ÏÂÔØ»ý·Ö£º 1 |
|
|
|
×ÊÔ´½éÉÜ |
|
J2meÖÐÈÎÒâ½Ç¶ÈͼƬÐýת(Ò»)(×ªÔØ)2007-09-23 12:00ÔÎÄλÖãºhttp://mobile.csdn.net/page/4367e2f2-01b3-4ab9-8ba0-7f6cf90b7974
×÷Õߣºpandonix
ÈÕÆÚ£º2007Äê9ÔÂ20ÈÕ
°æÈ¨ÉùÃ÷£º¿ÉÒÔÈÎÒâ×ªÔØ£¬×ªÔØÊ±ÇëÎñ±ØÒÔ³¬Á´½ÓÐÎʽ±êÃ÷ÎÄÕÂÔʼ³ö´¦ºÍ×÷ÕßÐÅÏ¢¼°±¾ÉùÃ÷
ÔÎĵØÖ·£º
http://pandonix.javaeye.com/
¡¡¡¡±¾ÎÄÖ÷ÒªÌÖÂÛÔÚJ2meÖÐÈçºÎʵÏÖÈÎÒâ½Ç¶ÈµÄͼƬÐýת¡£Æäʵ£¬ÔçÔÚ¼¸Äêǰ£¬minisoyouµÄBB¾ÍÒѾ¸ø³öÁËʵÏÖËã·¨£¬ÏàÐÅ×öj2meÓÎÏ·¿ª·¢µÄÅóÓÑÃÇÒ²¶¼Êղعý¸ÃËã·¨¡£±¾ÎÄ´ÓͼÏñÐýתµÄ»ù±¾ÀíÂÛ³ö·¢£¬ÏêϸÌÖÂÛÈçºÎʹÓÃʵÏÖºÍÓÅ»¯¸ÃËã·¨£¬Ï£Íû¶ÔÐýתËã·¨¸ÐÐËȤµÄÅóÓÑÓаïÖú¡£
¡¡¡¡»ù±¾ÐýתËã·¨£º
¡¡¡¡ÌÖÂÛλͼÐýתËã·¨£¬Ê×ÏȵÃ˵˵×î»ù±¾µÄÐýתËã·¨£¬¼´£ºµãµÄÐýת¡£ÏàÐÅѧ¹ý¼ÆËã»úͼÐÎѧµÄÅóÓÑÃÇ£¬¶Ô¸ÃËã·¨²»»áİÉú¡£
¡¡¡¡¼ÙÉ裬P(x,y)Ðýתt½Ç¶Èºó£¬µÃµ½P¡¯(x¡¯,y¡¯)£¬PÓëP¡¯Ö®¼äµÄ¹ØÏµÈçÏ£º
(x¡¯,y¡¯) = (x cos(t) + y sin(t),y cos(t) - x sin(t))
¡¡¡¡Î»Í¼Ðýת£º
¡¡¡¡¸ù¾ÝÒÔÉÏËã·¨£¬¿ÉÒÔÖ±¹ÛµÄÏ뵽λͼÐýתËã·¨£¬¼´±éÀúλͼÖеÄËùÓÐÏñËØµã£¬¶Ôÿ¸öÏñËØµã½øÐÐÐýת±ä»»¡£
¡¡¡¡µ«ÊÇÔÚj2meÖÐÕæÕýʵÏÖλͼµÄÐýת£¬»¹ÐèÒª½â¾öÒÔϼ¸µãÎÊÌ⣺
¡¡¡¡1¡¢ÈçºÎ»ñȡͼƬµÄÏñËØÊý×飬Çҵõ½µÄÏñËØÖµÊǰüº¬ÁËalpha¸ßλµÄ£¬»»¾ä»°Ëµ£¬ÒªÖ§³Ö͸Ã÷£»
¡¡¡¡2¡¢ÓÉÓÚÊÇÈÎÒâ½Ç¶ÈÐýת£¬ÐýתºóµÄͼÏñ³ß´çÈçºÎ¼ÆË㣻
¡¡¡¡3¡¢ÐýתËã·¨¿ÉÒÔÓÅ»¯£¬Ìá¸ß¼ÆËãËÙ¶È£»
¡¡¡¡4¡¢ÐýתµÃµ½µÄÏñËØÊý×飬ÈçºÎ»æÖƵ½canvasÉÏ£»
¡¡¡¡5¡¢ÐýתºóÄÜ·ñÖ±½ÓµÃµ½Ò»¸öImage¶ÔÏó£»
¡¡¡¡6¡¢ÐýתËã·¨¶¼ÊÇ»ùÓÚСÊýÔËËãµÄ£¬ÔÚCLDC1.0µÄÉ豸ÉÏ£¬ÈçºÎʵÏÖÐýת£»
¡¡¡¡7¡¢ÐýתºóµÄͼÏñÊÇ·ñ´æÔÚÊ§Õæ£»
¡¡¡¡J2meÖеÄÏñËØ²Ù×÷
¡¡¡¡ÊìϤj2meµÄÅóÓѶÔÓÚÎÊÌâÒ»µÄ»Ø´ðÓ¦¸ÃÊǿ϶¨µÄ¡£ÎÒÃÇÓÐÁ½ÖÖ·½·¨»ñÈ¡ÏñËØÊý×飬һÖÖÊÇʹÓÃmidp2.0ÖеÄgetRGB·½·¨£¬ÁíÒ»ÖÖÊÇʹÓÃNokiaUIÖеÄgetPixels·½·¨£¬Á½ÖÖ·½·¨¸÷ÓÐÓÅȱµã¡£ÆäÖУ¬getRGB·½·¨²¢·ÇËùÓÐmidp2.0¶¼ÊÖ»ú¶¼Ö§³Ö£¬±¾ÈËÔÚNokia6600ÉÏÃæÊ¹Óø÷½·¨¾Í³öÏÖÎÊÌ⣬³ý´ËÖ®Í⣬getRGBÖ»ÄÜ»ñÈ¡µ½8888¸ñʽµÄARGBÏñËØÖµ£¬¼´Í¨³£ËµµÄ256É«¡£¶øNokiaUIÖØÔØÁËÈý¸ögetPixels·½·¨£¬²»½öÖ§³Ö8888¸ñʽ£¬»¹Ö§³Ö4444¸ñʽ£¬¼´£¬¿ÉÒÔʹÓÃshortÊý×éÀ´´æ´¢ÏñËØÖµ£¬¶øÎÞÐëʹÓÃintÊý×é¡£
¡¡¡¡ÓÉÓÚgetRGB·½·¨ºÜ¼òµ¥£¬²Î¿¼APIÎĵµ¾ÍÄÜʹÓã¬ËùÒÔ£¬ÔÚ´ËÖ»ÁгöNokiaUIÖÐÈçºÎ»ñÈ¡ÏñËØÊý×飺
java ´úÂë
public short[] pixelsProduce(Image src)
{
int w = src.getWidth();
int h = src.getHeight();
short[] _pixels = new short[w * h];
//´´½¨¿É±äͼÏñ
Image img = DirectUtils.createImage(w, h, 0);
Graphics g = img.getGraphics();
DirectGraphics dg = DirectUtils.getDirectGraphics(g);
//ÏȽ«Ôͼ»æÖƵ½´´½¨ºÃµÄ¿É±äͼÏñÉÏ
dg.drawImage(src,0,0,0,0);
//ÔÙ»ñÈ¡¸Ã¿É±äͼÏñµÄÏñËØÊý×é
dg.getPixels(_pixels,0, w, 0, 0, w, h,4444);
return _pixels;
}
¡¡¡¡½â¾öÁË»ñȡͼƬÏñËØÊý×éµÄÎÊÌ⣬»æÖÆÐýתºóµÄÏñËØÊý×éµÄÎÊÌâÒ²ÓÈжø½âÁË¡£Midp2.0ÖУ¬¿ÉÒÔʹÓÃdrawRGB£¬¶øNokiaUIÖУ¬ÔòʹÓÃdrawPixels¡£µ±È»£¬Èç¹û¿¼Âǵ½»æÖƵÄЧÂÊ£¬¿ÉÒÔ½«ÏñËØÊý×éת»¯ÎªImage¶ÔÏó£¬ÕâÑùËäÈ»´´½¨Ê±ºÄ·ÑÁËʱ¼ä£¬µ«ÊÇÔÚ»æÖÆÊ±£¬È´±ÈÖ±½Ó»æÖÆÏñËØÊý×é¸ü¼ÓÓÐЧÂÊ¡£Îª´Ë£¬Midp2.0ÖУ¬¿ÉʹÓÃImage.createRGBImage·½·¨£¬¶øNokiaUIÖУ¬Ôò¿ÉÒÔ²ÉÓÃÒÔÏ·½·¨À´»ñÈ¡Image¶ÔÏó£º
java ´úÂë
public Image createImg(short[] pixels,int _width,int _height)
{
//´´½¨¿É±äͼÏñ
Image img = DirectUtils.createImage(_width, _height, 0);
Graphics g = img.getGraphics();
DirectGraphics dg = DirectUtils.getDirectGraphics(g);
//½«ÏñËØÊý×黿֯µ½´´½¨ºÃµÄ¿É±äͼÏñÉÏ
dg.drawPixels(pixels, true, 0, _width, 0, 0, _width, _height, 0,4444);
return img;
|
|
ÏÂÔØµØÖ· |
|
|
|
|
|