Re: [問題] 關於方塊的轉向...

看板Rubiks (魔術方塊)作者 (puzzlez)時間18年前 (2007/09/05 09:35), 編輯推噓10(1002)
留言12則, 8人參與, 最新討論串2/3 (看更多)
※ 引述《bohsing (遜哥)》之銘言: : 之前好像也有人 po 過類似的文章... : 不過我最後還是沒搞懂... : 就是 x x' y y' z z'... 到底哪個是 R向 哪個是 U向 哪個是 F向啊... : 許老師的... 魚大的... Gan 的... : 好像定義並不一樣... 阿 我也搞不太清楚... : 難道沒有統一嗎?? : 更重要的是... 明明沒有特別說明哪個字母代表哪個轉向... : 可是版胞們都看懂了... 真是神奇...(從推文中 大家似乎都懂了) : 這是大家獨特的默契? 還是方塊板上共同的約定啊...? : 以前就想 po 這個問題... 後來就忘記了... : 直到剛剛到精華區找花式的文章 想轉花式 結果都敗在 轉向上><" : 以上~~ 請注意: 以下純屬臆測 希望有學過java的人 能夠替我證實一下 雖然我不懂java 但我覺得情況可能是這樣…… 首先我要強調一點的是: 程式的座標系統本來就不一定符合數學的習慣。 例如以前在學程式設計 2d繪圖的時候 原點是在「左上角」 而不是一般大家所熟悉的左下角 原點 ┌───────→x y 亦即: 假設這裡有一個點 ╰(x,y) 如果x的值增加,則點向右方移動; 如果y的值增加,則點向下方移動。 一般所熟知的平面座標系統是這樣: y 第二象限第一象限 ─────┼─────→x 第三象限第四象限 所以它基本上和數學上的座標是上下顛倒的 就連「第四象限」也和它不同 之所以會這樣,是因為電腦螢幕顯示方式的關係 電腦螢幕將文字(文字其實也是一種圖案)及圖案畫上去時 是以由左至右,由上至下的方式進行 就像這篇文章本身文字的排列方向一樣 如果「⊙」代表由螢幕垂直往使用者「面前指出」的話 眼睛 ←─── 電腦螢幕 那麼java程式的立體座標很有可能是這個樣子的: z ───────→x 註:z 軸垂直螢幕朝您的眼睛 y 這時我們在原點放一個魔術方塊就變成: 原點 z ───────→x(方塊R面) 註:z 軸垂直螢幕朝您的眼睛 │ (方塊U面) y (方塊F面) 所以xyz軸,對應至方塊則為RFU三面。 然而,這樣的座標和數學上的立體座標是不同的 數學上立體座標系統與「向量╳乘」的方式一樣 符合「右手定則」 (註:向量的乘法有兩種。一種是˙乘;一種是╳乘) 右手定則就是將右手打開 大拇指往右方指,不與四指並攏 那麼拇指方向代表x 四指方向代表y 掌心方向代表z 所以上述若要改為數學座標 必須改變其中一個方向軸(x、y、z均可) 以改變z軸為例: 原點 z ───────→x 註:z 軸垂直螢幕離開您的眼睛 ※此為數學座標 y 調整一下角度可以變這樣: 原點 y ───────→x 註:y 軸垂直螢幕朝您的眼睛 ※此為數學座標 z 把方塊放上去可以變這樣: 原點 y ───────→x(方塊R面) 註:y 軸垂直螢幕朝您的眼睛 │ (方塊U面) ※此為數學座標 z (方塊F面) 那麼,現在問題來了 到底我們要以程式座標為主 還是數學座標為主才對呢? 個人認為還是數學座標 會比較正統吧? 懂java的人請幫個忙吧! puzzlez 2007/09/05   ︿   ︿ | z | y (四指) | | +|---+ +|---+ / | /| / | /| +----+ ------〉 +----+ ------〉 | | + x | | + x(拇指) | / |/ | / |/ +/---+ +/---+ / / y z(掌心) java 所採用的座標系統 數學座標系統 卡氏右手立體座標系統 (Cartesian Right-Handed dimensional System) 板友之所以沒有問題的可能原因: 1. 有些人碰的公式,幾乎很少遇到xyz。(像我還在lbl) 2. 有很多人只專注在某人的網頁(例如許老師的),所以沒有搞混之虞。 3. 有些人看網頁之前就特別注意xyz的位置了。 4. 運氣很好,碰上的網頁都是用同一個系統。 5. 很多網站都有附動畫,所以不會搞錯。 6. 板友是個人才。 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 123.194.17.138 ※ 編輯: puzzlez 來自: 123.194.17.138 (09/05 09:40)

09/05 11:27, , 1F
推!! 請懂的人也說一下吧
09/05 11:27, 1F
※ 編輯: puzzlez 來自: 123.194.17.138 (09/05 13:46)

09/05 14:20, , 2F
原本視窗系統就是以左上角為原點
09/05 14:20, 2F

09/05 14:21, , 3F
與java無關
09/05 14:21, 3F

09/05 14:23, , 4F
只有一些東西像openGL才以左下角為原點
09/05 14:23, 4F

09/05 14:46, , 5F
改成java「所採用」的座標系統,就沒語病了吧?
09/05 14:46, 5F
※ 編輯: puzzlez 來自: 123.194.17.138 (09/05 14:48)

09/05 14:52, , 6F
好認真啊 XD
09/05 14:52, 6F

09/05 14:58, , 7F
樓上放長假哦~XD 怎麼沒人打那天的板聚文啊?
09/05 14:58, 7F
※ 編輯: puzzlez 來自: 123.194.17.138 (09/05 15:06)

09/05 18:24, , 8F
好深奧XD
09/05 18:24, 8F

09/05 20:58, , 9F
推推推 懂啦 感謝!!!!!~
09/05 20:58, 9F

09/06 17:44, , 10F
推推 這一篇值三銀XD
09/06 17:44, 10F

09/06 18:12, , 11F
死小鬼查那個作啥?-.-"
09/06 18:12, 11F

09/06 20:53, , 12F
推研究精神...
09/06 20:53, 12F
文章代碼(AID): #16tWVKUd (Rubiks)
討論串 (同標題文章)
本文引述了以下文章的的內容:
以下文章回應了本文
完整討論串 (本文為第 2 之 3 篇):
文章代碼(AID): #16tWVKUd (Rubiks)