台灣最大程式設計社群網站
線上人數
1799
 
會員總數:246276
討論主題:189810
歡迎您免費加入會員
討論區列表 >> CSS/HTML5/Bootstarp >> 大大們,請問這題spider~~
[]  
[我要回覆]
1
回應主題 加入我的關注話題 檢舉此篇討論 將提問者加入個人黑名單
大大們,請問這題spider~~
價值 : 100 QP  點閱數:1215 回應數:7
樓主

遠仔
門外漢
0 82
1372 260
發送站內信

PIC
FLA
AS

這題好像有部份類似我先前發問的球問題@@,因為小弟發現偶完全對mouseX,mouseY理解錯誤
所以這題裡有這二個屬性,小弟再拿出來詢問一下,麻煩~~>"<

想請問:
//1.mouseX 說明為:當前鼠標相對於顯示物件註冊點的横向距離,想請問這裡的顯示物件註冊點是指spider顯示物件嗎?
//2.如果是又為何要再減一次spider.x呢?
//3.Math.atan(dy/dx),請看圖片1
//4.條件用dx>0,是因分母不能為0的關係嗎?
//因為如果我把#50的dy/dx改成dx/dy,則條件要改為dy>0,但後面也要改成(90-p):(270-p)

本篇文章發表於2012-08-26 22:42
1樓
回應

香帥
檢舉此回應
1.那是主時間軸的座標,以左上角為0,0,註冊是指spider顯示物件的註冊點是對的,通常註冊點都在左上角或正中間,他的註冊點在蜘蛛的屁股
2.又為何要再減一次spider.x?
因為要計算移動的量 dx,即滑鼠移動到哪,蜘蛛要跟著移動,如以下這行,算出移動量後,再除以speed
spider.x += dx/speed;
3.算出角度p後,蜘蛛跟著以下公式旋轉
var rotateAngle:Number = (dx>0) ? (90+p):(270+p);
4.條件用dx>0,是因分母不能為0的關係嗎?
這是不對的,那是在計算蜘蛛是旋轉角度用的,不是因分母不能為0的關係,有移動dx就不會為0

本篇文章回覆於2012-08-30 23:01
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
2樓
作者回應

遠仔
檢舉此回應
3.算出角度p後,蜘蛛跟著以下公式旋轉
var rotateAngle:Number = (dx>0) ? (90+p):(270+p);

指說當dx>0度,也就是 dx在Y軸的右邊,位於第一或第四象限,就原角度+90度,否則就原角度+270度(此時dx在第二或第四象限)?
是這樣麼?@@,那我要怎麼知道要+90 或 270 或是 0度 或180度呢?
本篇文章回覆於2012-08-31 17:44
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
3樓
回應

香帥
檢舉此回應
指說當dx>0度,也就是 dx在Y軸的右邊,這是不對的
是說滑鼠移到蜘蛛的右邊
dx<0,是滑鼠移到蜘蛛的左邊
跟象限沒關係
本篇文章回覆於2012-08-31 19:33
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
4樓
作者回應

遠仔
檢舉此回應
喔喔,這樣我就理解了~~
帥大再請問~~
當我用dy>0 & dy<0當條件,怎麼寫都寫不出來哩?
這裡dy>0,滑鼠是移到上方還下方?(因FLASH Y軸相反)
小弟2種都嚐試寫看看,但都寫不出來 >"<
本篇文章回覆於2012-08-31 21:18
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
5樓
最有價值解答

香帥
檢舉此回應
改dy可以
var rotateAngle:Number = (dy>0) ? (90+p):(270+p);
也依樣可執行
這裡dy>0,滑鼠是移到下方
本篇文章回覆於2012-09-01 00:47
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
6樓
作者回應

遠仔
檢舉此回應
怪了,用dy>0都會卡卡的,帥大這正常嗎@@?
本篇文章回覆於2012-09-01 19:06
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
7樓
作者回應

遠仔
檢舉此回應
OHOH,我知道了,感謝帥大~~~@@
本篇文章回覆於2012-09-01 19:43
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
   
1

回覆
如要回應,請先登入.