chaimzane 发表于 2013-1-23 02:56:00

贴身效果

zazzle,www.zazzle.com 一个在线印品制作的网站,用Ajax做的。虽然慢(因为每个动作都需要服务器来做),但是效果确实不错。
 

http://www.agoit.com/upload/attachment/62873/36911b3f-7812-39b1-b2f4-af91bdf6683a.jpg
他的那个图片的 贴身效果,服务器端不知道怎么弄的,还是比较强的。
 
在flash里面 貌似可以实现,但是结果却不尽人意。
 
如果在 flash 里面实现的话,除了用DisplacementMapFilter恐怕别无她法了。
 
 
<?xml version="1.0"?><!-- containers\layouts\HDivBoxSimple.mxml --><mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"   fontSize="12" layout="absolute" width="850" height="600"   applicationComplete="applicationCompleteHandler()">    <mx:Script>      <!                        private var testClass:Class;                        private function creationCompleteHnadler():void {                image.filters = ;                image.transform.colorTransform = getColorTran();                           }                        private function getFilter():DisplacementMapFilter {                var channel:uint = 1;                trace(channel);                var mapBitmap:BitmapData = getTestBitmapData();                                                var mapPoint:Point = new Point(-image.x,-image.y);                var componentX:uint = 2;                var componentY:uint = 4;                var scaleX:Number = ss.value;                var scaleY:Number = ss.value;                var mode:String = DisplacementMapFilterMode.COLOR;                var color:uint = 0;                var alpha:Number = 0.5;                              var displacementMapFilter:DisplacementMapFilter = new DisplacementMapFilter(                        mapBitmap,                        mapPoint,                        componentX,                        componentY,                        scaleX,                        scaleY,                        mode,                        color,                        alpha                  );                                    return displacementMapFilter;            }                        private function getColorTran():ColorTransform {                var clolor:ColorTransform = new ColorTransform(1,1,1,1,                                                                -10,-10,-10,0);                                                                              return clolor;            }                        private function getTestBitmapData():BitmapData {                return BitmapAsset(new testClass()).bitmapData.clone();            }                        private function applicationCompleteHandler():void {                return;                var bitmap:Bitmap = new Bitmap(getTestBitmapData());                //bitmap.alpha = 0.3;                stage.addChild(bitmap);            }                        private function mouseDownHandler():void {                stage.addEventListener(MouseEvent.MOUSE_UP,stageMouseUpHandler);                stage.addEventListener(MouseEvent.MOUSE_MOVE,stageMouseMoveHandler);                image.startDrag();            }                        private function stageMouseMoveHandler(e:MouseEvent):void {                //creationCompleteHnadler();            }                        private function stageMouseUpHandler(e:MouseEvent):void {                stage.removeEventListener(MouseEvent.MOUSE_UP,stageMouseUpHandler);                              image.stopDrag();                creationCompleteHnadler();            }      ]]>    </mx:Script>    <mx:Canvas>      <mx:Image id="image0" source="@Embed(source='designall.dll.jpg')"/>      <mx:Image id="image"source="@Embed(source='ttt.png')"            mouseDown="mouseDownHandler()"            creationComplete="creationCompleteHnadler()" x="97" y="93" width="206" height="194"/>    </mx:Canvas>    <mx:HSlider id="ss" x="108" y="506"         value="20"         minimum="0" maximum="100" change="creationCompleteHnadler()"/></mx:Application>  
 
页: [1]
查看完整版本: 贴身效果