2011年11月21日 星期一

學習日誌_week10_NIT100101

學習日誌_week10_NIT100101

2011/11/15(二)
課程名稱:整合多媒體設計
一、課程摘要

 二、網路資源彙編

↓[[論文搜尋相關網頁]]

1.期中專題報告-每人各有特色
2.線上進行互評。
3.期末論文閱讀與彙整說明。


Google 學術搜尋網
http://scholar.google.com.tw/
臺灣博碩士論文知識加值系統
http://ndltd.ncl.edu.tw/cgi-bin/gs32/gsweb.cgi/ccd=m.L3ug/webmge?mode=basic
臺中教育大學圖書館電子資源整合系統-ERMG Login(可查國內外博碩士論文)
http://libsun.ntcu.edu.tw/cgi-bin/smartweaver/browse.cgi?o=der&p=/smartweaver/login.html
全國文獻傳遞服務系統(Nationwide Document Delivery Service)
http://ndds.stpi.narl.org.tw/
國家圖書館 期刊文獻資訊網
http://www.ncl.edu.tw/journal/journal_docu01.htm
中部聯盟館跨校讀者管理系統
http://laumt.lib.cyut.edu.tw/


↓[[FLASH學習相關網站]]
Adobe - 台灣官網
http://www.adobe.com/tw/
Adobe繁體官網Flash AS3指令查詢步驟:(找了很久)
說明→Flash→Flash CS5 & CS5.5 說明系統→ActionScript 3.0 和組件
→適用於 Adobe Flash Platform 的 ActionScript 3.0 參考
http://help.adobe.com/zh_TW/FlashPlatform/reference/actionscript/3/index.html?filter_flash=cs5&filter_flashplayer=10.2&filter_air=2.6
IG 社群--FLASH學習
http://7-12.idv.tw/forums/index.php
wonderfl build flash online
http://wonderfl.net/
飛肯設計學苑FLASH/PV3D學習
http://www.flycan.com.tw/board/
呂聰賢 FLASH MX 2004 影片教學(AS2)
http://video.ks.edu.tw/soft/04ani/flashmx2004ad/index.htm
呂聰賢 FLASH MX 2003 影片教學(AS2)
http://163.30.179.11/elearning/04ani/flashmx/index.ht

↓[[PV3D學習網站]]

PV3D官方文件
http://pv3d.org/
flab3d.com,Flash 3D研究所
http://www.flab3d.com/
伊沙熊的學習筆記本:pv3d-樂多日誌
http://blog.roodo.com/esabear/tag/64743/pv3d

↓[[體感應用相關網頁]]
How as3Kinect Works: Features and Challenges
http://answers.oreilly.com/topic/2564-how-as3kinect-works-features-and-challenges/
OpenNI --Heresy's Space
http://kheresy.wordpress.com/tag/openni/
OpenNI - 官網
http://75.98.78.94/default.aspx
國家高速網路與計算中心「科學視算與互動媒體實驗室」(Visualization and Interactive Media Laboratory, VIML)
http://viml.nchc.org.tw/home/
as3kinect官網
http://www.as3kinect.org/
Kinect, openNI + ActionScript 3.0 測試
http://weichih.wordpress.com/2011/04/11/kinect-openni-actionscript-3-0-測試/
Kinect for flash試玩心得(附安裝教學) 
http://blog.roodo.com/sayaku/archives/15616381.html
用 Kinect 操作 PC,玩遊戲、看照片、播簡報
http://www.techbang.com.tw/posts/5886-fun-kinect-pc-can-also
在 WIndows 上安裝 Kinect(含 MMD 使用 Kinect 簡易教學)
http://kheresy.wordpress.com/2010/12/25/use_kinect_on_windows/
身體就是控制器,微軟Kinect是怎麼做到的? | T客邦
http://www.techbang.com.tw/posts/2936-get-to-know-how-it-works-kinect

↓[[學校、系所]]

教學科技研究室 http://itech.ntcu.edu.tw/ 帳密提示→name:kodenanpa   PW:kakokumezi+kodenanpa
投稿資料FTP  ftp://210.240.189.243/  帳密提示→name:watashiwa+koki+pepas  PW:kakokumezi
作業繳交FTP ftp://210.240.189.214/   帳密提示→name:kodenanpa   PW:kakokumezi+kodenanpa


↓[[材料區]]
教育部創用CC資訊網 http://isp.moe.edu.tw/ccedu//

EndNote X5相關教學 http://rapid.lib.ncu.edu.tw:8080/eDB/database/Endnote/EndNote_intro.html

三、文獻資源彙編

1.紀明良(2011)。多人腦波遊戲系統架構設計探究。國立台中教育大學數位內容科技學系碩士論文。
2.蔡秉昆(2011)。3D虛擬實境繪本電子書輔助月亮迷思概念課程學習效益之研究。國立台中教育大學數位內容科技學系碩士論文。
3.邱智偉(2010)。線上多人擴增實境系統架構設計探究。國立台中教育大學數位內容科技學系碩士論文。
4.李誌偉(2010)。悅趣化數位學習應用於國小資訊教學成效之研究。國立台中教育大學數位內容科技學系碩士論文。
5.黃昭儒(2011)。可觸式擴增實境導覽系統輔助博物館文物導覽學習效益之研究國立台中教育大學數位內容科技學系碩士論文。
6.楊佩真(2011)。情境式遊戲學習應用在國小學童加減法學習成效之研究。國立台中教育大學數位內容科技學系碩士論文。
7.鄭仁傑(2010)。虛擬實驗室建構之研究-以大學普物牛頓第二運動定律為例。國立台中教育大學科學應用與推廣學系碩士論文。

四、學習心得:
期中專題報告,大家各有特色,很難說誰好誰壞。在製作ppt及錄影的過程中大家一定又學到了很多。這一週我將原as3kinect上的demo程式改成不需要用到PV3D類別,還是花了不少時間才成功。為了不枉費之前的努力,下週會自製一個小小的體感遊戲(希望能成功),到時候再和大家分享。

(附上修改完成的程式碼)
package
{
 import flash.display.MovieClip
 import flash.display.BitmapData;
 import flash.display.Bitmap;
 import flash.display.Shape;
 import flash.events.Event;
 import flash.utils.ByteArray;
 //import flash.text.TextField;

 import org.as3kinect.as3kinect;
 import org.as3kinect.as3kinectWrapper;
 import org.as3kinect.events.as3kinectWrapperEvent;

 public class test01 extends MovieClip{

  private var as3w:as3kinectWrapper;
  private var _canvas:BitmapData;
  private var _bmp:Bitmap;
  private var _lines:Shape;
public function test01()

  {
   as3w = new as3kinectWrapper();

   as3w.addEventListener(as3kinectWrapperEvent.ON_DEPTH, got_depth);
   as3w.addEventListener(as3kinectWrapperEvent.ON_SKEL, got_skel);


   //change photo on depth_cam
   //_canvas = new BitmapData(640, 480, true, 0xFF000000);
   _canvas = new BitmapData(as3kinect.IMG_WIDTH, as3kinect.IMG_HEIGHT, false, 0xFF000000);

   _bmp = new Bitmap(_canvas);
  viewer01.addChild(_bmp);

    
   //draw initial skeleton
   //create a shape object in memory in order to draw skeleton
   _lines= new Shape();
   viewer01.addChild(_lines);

   //head[0,1],neck[2,3],r_shoulder[4,5],l_shoulder[6,7],torso[8,9],r_elbow[10,11],l_elbow[12,13],r_hand[14,15]
   //l_hand[16,17],r_hip[18,19],l_hip[20,21],r_knee[22,23],r_knee[24,25],r_foot[26,27]t,l_foot[28,29]   
   var hdx:Number=320;
   var hdy:Number=40;
   var nkx:Number=320;
   var nky:Number=90;
   var rsx:Number=380;
   var rsy:Number=140;
   var lsx:Number=260;
   var lsy:Number=140;
   var tox:Number=320;
   var toy:Number=230;
   var rex:Number=480;
   var rey:Number=140;
   var lex:Number=160;
   var ley:Number=140;
   var rhx:Number=480;
   var rhy:Number=40;
   var lhx:Number=160;
   var lhy:Number=40;
   var rhpx:Number=380;
   var rhpy:Number=260;
   var lhpx:Number=260;
   var lhpy:Number=260;
   var rkx:Number=380;
   var rky:Number=360;
   var lkx:Number=260;  
   var lky:Number=360;
   var rfx:Number=390;
   var rfy:Number=440;
   var lfx:Number=250;
   var lfy:Number=440;
   drawSkel(hdx,hdy,nkx,nky,rsx,rsy,lsx,lsy,tox,toy,rex,rey,lex,ley,rhx,rhy,lhx,lhy,rhpx,rhpy,lhpx,lhpy,rkx,rky,lkx,lky,rfx,rfy,lfx,lfy);

   this.addEventListener(Event.ENTER_FRAME, refresh_data);
   
  }
  private function refresh_data(event:Event = null):void{
   as3w.getDepthBuffer();
   as3w.getSkeleton();
  }

  private function got_depth(event:as3kinectWrapperEvent):void{

   as3w.byteArrayToBitmapData(event.data, _canvas);

  }
  private function got_skel(event:as3kinectWrapperEvent):void{
   var skel:Object = event.data;
    
   var hdx:Number = skel.head.x;
   var hdy:Number = skel.head.y;
   var nkx:Number= skel.neck.x;
   var nky:Number= skel.neck.y;

   var rsx:Number= skel.r_shoulder.x;
   var rsy:Number = skel.r_shoulder.y;
   var lsx:Number = skel.l_shoulder.x;
   var lsy:Number = skel.l_shoulder.y;
   var tox:Number = skel.torso.x;
   var toy:Number = skel.torso.y;

   var rhx:Number = skel.r_hand.x;
   var rhy:Number = skel.r_hand.y;
   var lhx:Number = skel.l_hand.x;
   var lhy:Number = skel.l_hand.y;
   var rex:Number = skel.r_elbow.x;
   var rey:Number = skel.r_elbow.y;
   var lex:Number = skel.l_elbow.x;
   var ley:Number = skel.l_elbow.y;

   var rhpx:Number = skel.r_hip.x;
   var rhpy:Number = skel.r_hip.y;
   var lhpx:Number=  skel.l_hip.x;
   var lhpy :Number= skel.l_hip.y;
   var rkx:Number = skel.r_knee.x;
   var rky:Number = skel.r_knee.y;
   var lkx:Number = skel.l_knee.x;
   var lky:Number = skel.l_knee.y;    
   var rfx:Number = skel.r_foot.x;
   var rfy:Number = skel.r_foot.y;
   var lfx:Number = skel.l_foot.x;
   var lfy:Number = skel.l_foot.y;

   drawSkel(hdx,hdy,nkx,nky,rsx,rsy,lsx,lsy,tox,toy,rex,rey,lex,ley,rhx,rhy,lhx,lhy,rhpx,rhpy,lhpx,lhpy,rkx,rky,lkx,lky,rfx,rfy,lfx,lfy);
  }





  //function of drawing a skeleton
  private function drawSkel(...skel_pos):void
  {
   _lines.graphics.clear();
   //draw lines on _lines
   _lines.graphics.lineStyle(10,0xFF0000,1);

   //body
   _lines.graphics.moveTo(skel_pos[0],skel_pos[1]);
   _lines.graphics.lineTo(skel_pos[2],skel_pos[3]);
   _lines.graphics.lineTo(skel_pos[4],skel_pos[5]);
   _lines.graphics.lineTo(skel_pos[8]+30,skel_pos[9]);
   _lines.graphics.lineTo(skel_pos[18],skel_pos[19]);
   _lines.graphics.lineTo(skel_pos[20],skel_pos[21]);
   _lines.graphics.lineTo(skel_pos[8]-30,skel_pos[9]);
   _lines.graphics.lineTo(skel_pos[6],skel_pos[7]);
   _lines.graphics.lineTo(skel_pos[2],skel_pos[3]);

   //hand
   //_lines.graphics.lineStyle(10,0x00FF00,1);
   _lines.graphics.moveTo(skel_pos[4],skel_pos[5]);
   _lines.graphics.lineTo(skel_pos[10],skel_pos[11]);
   _lines.graphics.lineTo(skel_pos[14],skel_pos[15]);
   _lines.graphics.moveTo(skel_pos[6],skel_pos[7]);
   _lines.graphics.lineTo(skel_pos[12],skel_pos[13]);
   _lines.graphics.lineTo(skel_pos[16],skel_pos[17]);
   //leg
   _lines.graphics.moveTo(skel_pos[18],skel_pos[19]);
   _lines.graphics.lineTo(skel_pos[22],skel_pos[23]);
   _lines.graphics.lineTo(skel_pos[26],skel_pos[27]);
   _lines.graphics.moveTo(skel_pos[20],skel_pos[21]);
   _lines.graphics.lineTo(skel_pos[24],skel_pos[25]);
   _lines.graphics.lineTo(skel_pos[28],skel_pos[29]);


  }

 }
}

沒有留言:

張貼留言