0
儘管互聯網上有很多關於它的教程,但我找不到合適的解決方案!我畫了一條線p1=(0,0); p2=(0,j)
,然後我做了一個translation(h,k)
和一個rotation(a)
。什麼是p2
的新座標?轉換矩陣 - 旋轉和轉換後的新點座標
這裏是我帶着尋找變換矩陣後,但它似乎並不工作通式:
x' = (x*cos(a)) + (y*-sin(a)) + h
y' = (x*sin(a)) + (y*cos(a)) + k
所以我p2
:
x' = (j*-sin(ofDegToRad(a))) + h
y' = (j*cos(ofDegToRad(a))) + k
我在做什麼錯?
編輯:
上傳與下面的答案的代碼,但它仍然沒有工作(?)。我已經把圖片用的代碼Here
小樣本當我打印的價值,它說x = -141.5, y = 254.9
我想獲得我行的終點(如果起始點爲的中間窗口)
謝謝您的回答,但它是還是行不通。我在我的問題上添加了一小段示例代碼,以防我沒有正確詢問問題! – drn
我不清楚你到底在改變什麼。如果您正在改變細分受衆羣而不僅僅是終點節點,那麼您就可以完成這兩點,這些點都是我在回答中編輯的。 – lurker
我很抱歉打擾你,但仍然有問題。例如,如果我的p1在(0,0),然後我將它翻譯爲(150,150),然後旋轉它1.7radians - 答案應該給我點(150,150)。然而,當我應用'x:(150 * cos(1.7)) - (150 * sin(1.7))'的公式時,結果是'-173.768'!對於y:'(150 * sin(1.7))+(150 * cos(1.7))= 129.42' – drn