2009-12-11 28 views
-1

我有一個多邊形,可以是規則的,也可以是不規則的。我必須做偏移/緩衝多邊形。我需要將多邊形拉伸一定量的偏移量。形狀應該保持。你如何找到從點(x1,y1)給定的垂線的座標

+0

'stretch'as in ..在一個方向上放大(水平或垂直)? – Aziz 2009-12-11 10:06:51

+1

請發佈您迄今爲止編寫的代碼。人們通常不喜歡只爲你寫代碼。 – 2009-12-11 10:19:48

+1

是否有數學的計算器?它可以被稱爲divisionbyzero.com或1plus1equals2.com。 :) – jmucchiello 2009-12-11 18:02:13

回答

0

乘每個座標偏移絲毫

我知道,有人不會相信。 確定這裏是在Python(我用pythonxy)完整的源代碼

import numpy as np 
import matplotlib.pyplot as plt 

x1, y1 = np.random.rand(2, 20) 
plt.plot(x1,y1) 

x2=x1*1.3 
y2=y1*1.3 

l=len(x1) 

#calculate centers 
cx1=sum(x1)/l 
cy1=sum(y1)/l 
cx2=sum(x2)/l 
cy2=sum(y2)/l 

#recenter polygon 
x2=x2-(cx2-cx1) 
y2=y2-(cy2-cy1) 

plt.plot(x2,y2) 
plt.show() 

我做例子白衣隨機線,但它是不是從你的榜樣

http://img200.imageshack.us/img200/8615/grafm.png

,這個作品是因爲原因不同每個點的乘法與拉伸座標軸相同。 我計算中心爲「平均」,並將一箇中心移到另一箇中心,那樣的位置看起來更自然

+0

這隻會縮放多邊形。它適用於原點位於中心的正多邊形(框,五邊形,六邊形等)。 – 2009-12-11 18:22:10

相關問題