簡體   English   中英

有人可以幫我解決幾何變換問題嗎?

[英]Can somebody please help me with a geometric transformation problem?

我需要在兩個給定點之間繪制圓弧。 我也有弧的半徑。 我知道可以使用標准的canvas API來完成此操作,但我也需要處理橢圓弧的情況。 此代碼是一種通用解決方案。 現在唯一的問題是它不起作用!

該代碼背后的數學概念位於https://math.stackexchange.com/questions/53093/how-to-find-the-center-of-an-ellipse

我的JS代碼就是該代碼的實現。 我的JS代碼可在http://jsfiddle.net/BkEnz/2/中找到。 理想情況下,兩個圓圈都應穿過兩個小粉紅點。

我希望有人能指出我正確的方向。 我過去幾天一直在努力解決這個問題!

解決了此問題。 更正后的工作代碼位於http://jsfiddle.net/ZxRBT

注意行

var t = translate(-R1R2x, -R1R2y, IDENTITY_TRANSFORM());

在我以前的代碼版本中,這一行是

var t = translate(-R1R2x, -R1R2y, sr);

因此,當我使用以下代碼計算C1C2的值時

C1 = compose(vut, [[R1x],[R1y],[1]]);
C2 = compose(vut, [[R2x],[R2y],[1]]);

我也將sr合成R1x,R1yR2x,R2y ,但是這些點已經在sr坐標中。

這是一個嚴重的錯誤,我確實已經忽略了很長時間。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM