2017-01-14 58 views
0

我想要計算第3行的角度,斜率和截距,即距離第1行60度或pi/3。我知道其他行的信息。找到R內的一條直線的角度,斜率和截距

enter image description here

x1 = 652 
x2 = 1017 
y1 = 194 
y2 = 632 

## Line 1 information 
angle.l1 = 1.565595 
slope.l1 = 1.2 
intercept.l1 = -588.4 

## Line 2 information 
angle.l2 = 0.5183978 
slope.l2 = 0.5704363 
intercept.l2 = 51.8663 

我想將結果保存爲angle.l3slope.l3intercept.l3

+0

是不是angle.l3 = angle.l1 + pi/3?是不是slope.l3 = tan(angle.l3)?你有一個點和斜率,解決攔截。 – G5W

回答

0

你是如何得出結論:angle.l1 = 1.565595

## "line1" passes (x1, y1) and (x2, y2) 
slope.l1 <- (y2 - y1)/(x2 - x1) 
#[1] 1.2 
angle.l1 <- atan(slope.l1) 
#[1] 0.8760581 

還有,你是怎麼得出結論,「3號線」和「一號線」之間的角度爲pi/3?如果是的話,因爲「3號線」與x軸的角度變化較大比「一號線」與x軸,則:

angle.l3 <- angle.l1 + pi/3 
#[1] 1.923256 
slope.l3 <- tan(angle.l3) 
#[1] -2.718736 

你得到一個負斜率的「3號線」,它不能根據權你的身材。


幸運的是,您獲得「line2」的信息是正確的。

angle.l2 <- 0.5183978 
slope.l2 <- 0.5704363 
intercept.l2 <- 51.8663 

你的意思是說,「2號線」和「3號線」之間的角度爲pi/3?如果是這樣,

angle.l3 <- angle.l2 + pi/3 
#[1] 1.923256 
angle.l3 * 180/pi 
#[1] 89.70201 

這是說「line3」與x軸接近90度,從圖中看起來不正確。


「line1」,「line2」和「line3」之間有什麼關係?這是您沒有提及的重要信息。如果「3號線」是「2號線」圍繞「一號線」的反映,然後解決方案很簡單:

angle.l3 <- angle.l1 + (angle.l1 - angle.l2) 
#[1] 1.233718 
angle.l3 * 180/pi 
#[1] 70.68685 

EM,70.68度正在尋找合理的。所以:

slope.l3 <- tan(angle.l3) 
#[1] 2.853452 

# "line3" passes (0, intercept.l3) and (x2, y2) 
intercept.l3 <- y2 - slope.l3 * x2 
#[1] -2269.961 
相關問題