[程式] 以某點為中心縮放

看板GameDesign作者時間17年前 (2007/04/13 20:26), 編輯推噓2(202)
留言4則, 2人參與, 最新討論串1/2 (看更多)
Hi, 我想請問一個座標變換的問題, 首先, 一個二維座標系統的變換矩陣分成三種: 1. 平移 [ 1 0 tx ] [ 0 1 ty ] [ 0 0 1 ] 2. 以原點為中心做旋轉 [ cos(theta) -sin(theta) 0 ] [ sin(theta) cos(theta) 0 ] [ 0 0 1 ] 3. 以原點為中心做縮放 [ sx 0 0 ] [ 0 sy 0 ] [ 0 0 1 ] 那請問什麼樣的變換矩陣才能讓形狀以某個點為中心做縮放? 謝謝! -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 220.132.133.199

04/19 11:52, , 1F
不知道這樣可不可以(要三個矩陣合起來)
04/19 11:52, 1F

04/19 11:53, , 2F
先把你的點平移到原點,再旋轉,再平移回去~
04/19 11:53, 2F

07/30 16:07, , 3F
以我的程度來說 樓上正解 如果要像上面一樣是一個參數化的
07/30 16:07, 3F

07/30 16:08, , 4F
矩陣的話,就把平移,縮放,平移回去三個程起來就是了
07/30 16:08, 4F
文章代碼(AID): #167tSAJ5 (GameDesign)
文章代碼(AID): #167tSAJ5 (GameDesign)