2
我想要通過特定偏移量(A)縮小以匹配原始多邊形的某個面積比(R)的2D多邊形。 是否有這樣一個問題的公式或算法?我對三角形/四邊形的簡單解決方案感興趣,但也是複雜多邊形的解決方案。通過偏移將多邊形收縮到特定區域
我附上了一張圖片以供解釋。原始多邊形偏移A(每邊相等)。必須選擇A,以便新多邊形具有特定區域。在這個例子中,它應該具有初始多邊形面積的一半。
我想要通過特定偏移量(A)縮小以匹配原始多邊形的某個面積比(R)的2D多邊形。 是否有這樣一個問題的公式或算法?我對三角形/四邊形的簡單解決方案感興趣,但也是複雜多邊形的解決方案。通過偏移將多邊形收縮到特定區域
我附上了一張圖片以供解釋。原始多邊形偏移A(每邊相等)。必須選擇A,以便新多邊形具有特定區域。在這個例子中,它應該具有初始多邊形面積的一半。
你提的問題是非常特異性的,但在這裏是做你所尋找的一種方式,假設我理解你的要求。請注意,這可能會導致不必要的位置偏移,您將不得不以某種方式處理。不知道你想要縮放多邊形的點是什麼,這些解決方案假定最簡單的情況。
所有這些公式中的平方根的原因是,面積隨着線性縮放的平方而變化,就像體積對線性縮放的立方體所做的一樣。
對於一般的多邊形:
A = sqrt(R)
for each point in polygon:
point.x := point.x * A
point.y := point.y * A
對於圈子:
A = sqrt(R)
circle.radius := circle.radius * A
對於矩形在寬度和高度方面:
A = sqrt(R)
rect.w := rect.w * A
rect.h := rect.h * A
感謝您的答覆。我附加了一張更具體的圖片。 – timkado
您在該圖片中顯示的問題有點難以解決,因爲某些多邊形最終可能會被分割爲兩個或多個單獨的形狀。讓我稍微思考一下。 –