WebScrap

February 21, 2010

Func UIのサンプル:画像の鏡面表示

Func UIで画像を鏡面表示$gp_imageではkeepaspect:trueにしてあると画像が自動で縮小されるが、画像の基準点を指定することはできない。なのであらかじめ表示座標を取得して、縮小された分だけ下にずらすようにして鏡面表示にしている。素材画像はfunc_ui_mirror.zipに。


  • (General)
    • On Playback New Track
      $hash(NOWPLAYING.ART,$albumart(%path%,cover_front))
      $updatewindow('NOWPLAYING',event:open)
  • MAIN
    • Load
      // init
      $hash(NOWPLAYING.W,300)
      $hash(NOWPLAYING.H,$calc(%NOWPLAYING.W%*1.5))
      $hash(NOWPLAYING.ART.WH,240)
      
      $window('NOWPLAYING',10,10,%NOWPLAYING.W%,%NOWPLAYING.H%,parent:%_id%,embed:true)
  • NOWPLAYING
    • Load
      // init
      $style(%_id%,clear)
    • Open 
      // clear
      $clearobject(%_id%,event:open)
      
      // object
      $gp_image(%_id%,%NOWPLAYING.ART%,$calc({%NOWPLAYING.W%-%NOWPLAYING.ART.WH%}/2),,%NOWPLAYING.ART.WH%,%NOWPLAYING.ART.WH%,keepaspect:true,mempos:true,dmode:calconly)
      $gp_image(%_id%,%NOWPLAYING.ART%,$calc({%NOWPLAYING.W%-%NOWPLAYING.ART.WH%}/2),%_mp_top%,%NOWPLAYING.ART.WH%,%NOWPLAYING.ART.WH%,keepaspect:true,cache:false)
      $gp_image(%_id%,%NOWPLAYING.ART%,$calc({%NOWPLAYING.W%-%NOWPLAYING.ART.WH%}/2),$calc(%_mp_bottom%-1),%NOWPLAYING.ART.WH%,%NOWPLAYING.ART.WH%,flip:y,keepaspect:true,cache:false)
      $gp_image(%_id%,/images\overlay.png,$calc({%NOWPLAYING.W%-%NOWPLAYING.ART.WH%}/2),%_mp_top%,%NOWPLAYING.ART.WH%,%NOWPLAYING.ART.WH%,keepaspect:true)
      $gp_image(%_id%,/images\overlay_reflect.png,$calc({%NOWPLAYING.W%-%NOWPLAYING.ART.WH%}/2),%NOWPLAYING.ART.WH%,%NOWPLAYING.ART.WH%,%NOWPLAYING.ART.WH%,keepaspect:true)
      
      // update
      $updatewindow(%_id%,event:open)

0 Coment:

Post a Comment