2012-08-08 111 views
1

如何計算三角形2的點D?將座標從一個三角形轉換爲具有不同透視圖的三角形

我有三角形1中的以下座標:在三角形1 一個(0,0)B(0,78)C(18,39)

點d位於(0,39)

現在我通過移動座標b和c來改變我的三角形的視角。 形成被稱爲三角形2具有座標的新三角形: 一個(0,0)B(11,72)C(37,42)

,你可以看到點d不在行一個<的中間 - > b,因爲透視/偏離的變化。

我該如何計算d點?我有三角形的座標ABC 1 & 2.

中的程序代碼最好回答,而不是使用數學的跡象,因爲我不是一個英雄在閱讀數學:)

+0

歡迎來到計算器。純粹的代碼寫入請求是堆棧溢出的主題 - 但我們會很樂意幫助您自己寫!告訴我們[你試過的東西](http://whathaveyoutried.com) – 2012-08-08 08:01:44

+0

Toe be fair,@robmayoff我認爲那不是「JST GIV ME T3H CODEZ PLZ !!!!! 11 !!」請求比「理解數學符號對我來說很難,所以請用我能理解的方式來表示你的答案。」請求。 – 2012-08-08 08:38:40

+0

@ Zyychin我同意,但我認爲在stackoverflow的一般哲學是,一個提問者應該嘗試*東西*並張貼他所嘗試的,而不是沒有嘗試就問。另外,如果fellowworldcitizen想要做這種編程,他將不得不練習閱讀數學。 – 2012-08-08 08:42:05

回答

0

我想有更多的方法來計算座標從一個角度到另一個。

更上的三角形方式由culebrón這裏寫爲:Transforming captured co-ordinates into screen co-ordinates

在同一鏈路有通過使用SVD和計算H矩陣可用於翻譯的另一種方式的任何座標從一個透視到另一個。我會用這種方式,因爲我可以用matlab解決這個問題。 objective-c中的下一步!我在計算Objective-C中的同樣的麻煩時遇到了一些麻煩。更多在這裏:calculate the V from A = USVt in objective-C with SVD from LAPACK in xcode

我想知道如何解決三角形的方式!我無法弄清楚在culebron的帖子中a1和a2是什麼:https://stackoverflow.com/a/1690300/1568532寬度和高度對我來說都沒有多大意義。

另外我想知道如何計算基於3或4座標的三角形或四邊形的EYE的觀點。如果你知道對象的原始大小。 有關於此的任何想法?

當我搜索眼睛或相機的角度來看。有攝影結果的負擔。 我需要用什麼來計算這個?也許有人舉例嗎?

1

你需要轉換點d使用到重心座標原始三角座標,然後使用修改的三角座標將其轉換回笛卡爾座標。

這看起來像一個很好的介紹到三角形的重心座標:http://blogs.msdn.com/b/rezanour/archive/2011/08/07/barycentric-coordinates-and-point-in-triangle-tests.aspx

此外,明確的公式轉換點在一個三角形的重心座標在轉換爲維基百科文章的重心座標節末尾給出「Barycentric coordinate system」

+0

我想我需要先找到cameraview座標(x,y,z),然後才能計算出點D.我如何根據座標a,b和c確定相機的視角? – fellowworldcitizen 2012-08-08 11:06:31