Motivácia

Som študentom druhého ročníka na stavebnej fakulte na odbore geodézia a kartografia. Chcel som si vyskúšať praktické využitie jazyka R, ktoré by som mohol využiť v praxi napríklad pri tvorme elaborátov. Preto som sa rozhodol vypracovať elaborát s Geodézie len v prostredí R studia. Jedná sa o výpočet rajóna, teda poznáme pravouhlé súradnice x a y dvoch bodov. Na týchto bodoch bola meraná vodorovná dĺžka a vodorovný uhol na neznámi bod. Mojou úlohou bolo vypočítať súradnice bodu tri a vodorovnú dĺžku medzi známymi bodmi.

Vstupné hodnoty

Bod Y[m] X[m]
5001 651,00 198,00
5002 571,25 85,15

Vstupné merané hodnoty

Dĺžka \(S_{5001,5003}\) 70,25 m
Uhol \(ω_{5003}\) \(152,1142^{g}\)

Postup riešenia úlohy

Poznáme polohové súradnice bodov 5001 a 5002. Na základe týchto súradníc si vieme vypočítať pomocou Pytagorovej vety dĺžku \(S_{5001,5002}\) podľa vzorca (1)

\[\begin{align} \mathbf{S_{5001,5002}}=\sqrt{∆Y^{2}_{5001,5002}+∆X^{2}_{5001,5002}} \tag{1} \end{align}\]

Pričom \(∆Y_{5001,5002}+∆X_{5001,5002}\) sú súradnicové rozdiely ktoré vypočítame zo vzťahov (2) a (3)

\[\begin{align} \mathbf{∆X_{5001,5002}=X_{5002}-X_{5001}}\tag{2} \end{align}\]

\[\begin{align} \mathbf{∆Y_{5001,5002}=Y_{5002}-Y_{5001}}\tag{3} \end{align}\]

Po dosadení do vzorcov (2) a (3)

\[ \mathbf{∆X_{5001,5002}={85,15}-{198}={-79,75 m}}\]

\[ \mathbf{∆Y_{5001,5002}={571,25}-{651}={-112,85 m}}\]

Po dosadení do vzorcov (2) a (3) sme si vypočítali súradnicové prírastky \(∆Y_{5001,5002}\) a \(∆X_{5001,5002}\) ktoré sme dosadili do vzorca (1) a vypočítali sme vodorovnú dĺžku medzi bodmi 5001 a 5002.

\[ \mathbf{S_{5001,5002}}=\sqrt{79,75^{2}+112,85^{2}}={138,19m}\]

Ďalej si vypočítame smerník \(σ_{5001,5002}\). Najprv si musíme vypočítať pomocný uhol φ pomocou vzorca (4)

\[\begin{align} \mathbf{tanφ_{5001,5002}=\frac{∆Y_{5001,5002}}{∆X_{5001,5002}}}\tag{4} \end{align}\]

Po dosadení do vzorca (4)

\[\mathbf{tanφ_{5001,5002}=\frac{-79,75}{-112,85}}=39,1650^{g}\] Po výpočte pomocného uhla φ musíme zistiť, že v ktorom kvadrante máme spojnicu bodov 5001 a 5002. Zistíme to pomocou tab.č.1, kde je dôležité aby sme zistili aké znamienko je v čitateli (\(∆Y_{5001,5002}\)) a menovateli (\(∆X_{5001,5002}\)) pri výpočte pomocného uhla φ.

tab.č.1

číslo kvadrantu \(∆Y_{5001,5002}\) \(∆Y_{5001,5002}\) Potom
I + + \(σ_{5001,5002}=φ\)
II + - \(σ_{5001,5002}=200^g-φ\)
III - - \(σ_{5001,5002}=200^g+φ\)
IV - + \(σ_{5001,5002}=400^g-φ\)

Znamienka v tab.č.1 určujeme podľa toho či sinusoida alebo kosinusoida je kladná alebo záporná v danom kvadrante.

library(ggplot2)
t=seq(0,2*pi,0.1)
y=sin(t)

qplot(t,y,geom="path", xlab="oblúková miera", ylab="Sinusoida")

library(ggplot2)
t=seq(0,2*pi,0.1)
y=cos(t)
qplot(t,y,geom="path", xlab="oblúková miera", ylab="Kosinusoida")

→ Ak nám zo znamienok vidne, že je to prvý kvadrant tak pomocný uhol φ sa rovná priamo smerníku \(σ_{5001,5002}\)

→ Ak nám zo znamienok vidne, že je to druhý kvadrant tak smerník \(σ_{5001,5002}\) vypočítame ako dvesto grádov mínus pomocný uhol φ

→ Ak nám zo znamienok vidne, že je to tretí kvadrant tak smerník \(σ_{5001,5002}\) vypočítame ako dvesto grádov plus pomocný uhol φ

→ Ak nám zo znamienok vidne, že je to štvrtý kvadrant tak smerník \(σ_{5001,5002}\) vypočítame ako štyristo grádov mínus pomocný uhol φ

V našom prípade sú oba súradnicové rozdiely záporné čiže sme v tretom kvadrante.

Po dosadení dostavame

\[σ_{5001,5002}=200+39,1650=239,1650^{g}\]

Na výpočet súradníc bodu 5003 si musíme vypočítať smerník \(σ_{5001,5003}\). Tento smerník dostaneme tak že ku smerníku \(σ_{5001,5002}\) pripočítame meraný vodorovný uhol \(ω_{5003}\) → vzorec (5)

\[\begin{align} \mathbf{σ_{5001,5003}=σ_{5001,5002}+ω_{5003}}\tag{5} \end{align}\]

Po dosadení do vzťahu (5)

\[ \mathbf{σ_{5001,5003}={239,1650}+{152,1142}}=391,2792^{g}\]

Na výpočet pravouhlých súradníc(x a y) bodu 5003 potrebujeme poznať tri hodnoty

→ súradnice bodu z ktorého idem počítať súradnice v našom prípade je to bod 5001

→ dĺžku medzi nimi \(S_{5001;5003}\)

→ smerník medzi nimi \(σ_{5001,5003}\)

Súradnicu \(X_{5003}\) si vypočítame podľa vzorca (6) a súradnicu \(Y_{5003}\) si vypočítame podľa vzorca (7)

\[\begin{align} \mathbf{X_{5003}=X_{5001}+S_{5001;5003}.cos (σ_{5001,5003})}\tag{6} \end{align}\]

\[\begin{align} \mathbf{Y_{5003}=Y_{5001}+S_{5001;5003}.sin (σ_{5001,5003})}\tag{7} \end{align}\]

Po dosadení do vzorcov (6) a (7)

\[ \mathbf{X_{5003}={198}+{70,25}.cos ({391,2792})}=267,59m\]

\[ \mathbf{Y_{5003}={651}+{70,25}.sin ({391,2792})}=641,41m\]

V súradnicovom systéme S-JTSK ktorý je záväzný pre územie Slovenska, ide kladná os X na juh a kladná os Y na západ, tak vtedy je s X spätá funkcia kosínus a s Y je spätá funkcia sínus.

Výpočty

library(units)
## Warning: package 'units' was built under R version 4.0.5
## udunits database from C:/Users/Richard/Documents/R/win-library/4.0/units/share/udunits/udunits2.xml
Body <- c(5001,5002)
Y <- c(651.00,571.25)
X <- c(198.00,85.15)
w5003 <- c(152.1142)
S5001_5003 <- c(70.25)


VstupneSuradnice <- data.frame(Y,X,row.names = c(Body))
MeraneHodnoty <- data.frame(w5003,S5001_5003)

print(VstupneSuradnice)
##           Y      X
## 5001 651.00 198.00
## 5002 571.25  85.15
print(MeraneHodnoty)
##      w5003 S5001_5003
## 1 152.1142      70.25
DX5001_5002 <- VstupneSuradnice[2,2]-VstupneSuradnice[1,2]
print(DX5001_5002)
## [1] -112.85
DY5001_5002 <- VstupneSuradnice[2,1]-VstupneSuradnice[1,1]
print(DY5001_5002)
## [1] -79.75
S5001_5002 <- sqrt(DX5001_5002^2+DY5001_5002^2)
print(S5001_5002)
## [1] 138.1853
f5001_5002 <- atan(abs(DY5001_5002)/abs(DX5001_5002))/(pi/200)
print(f5001_5002)
## [1] 39.16498
if(DY5001_5002 >0 & DX5001_5002 >0) sig_5001_5002 <- f5001_5002
  if(DY5001_5002 >0 & DX5001_5002 <0) sig_5001_5002 <- 200-f5001_5002
if(DY5001_5002 <0 & DX5001_5002 <0) sig_5001_5002 <- 200+f5001_5002
if(DY5001_5002 <0 & DX5001_5002 >0) sig_5001_5002 <- 400-f5001_5002
    print(sig_5001_5002)
## [1] 239.165
sig_5001_5003 <- sig_5001_5002+w5003
print(sig_5001_5003)
## [1] 391.2792
x_5003 <- VstupneSuradnice[1,2]+S5001_5003*cos(sig_5001_5003/(200/pi))
print(x_5003)
## [1] 267.5919
y_5003 <- VstupneSuradnice[1,1]+S5001_5003*sin(sig_5001_5003/(200/pi))
print(y_5003)
## [1] 641.4068

Záver

Našou úlohou bolo vypočítať pomocou Rajónu súradnice neznámeho bodu 5003. Vychádzali sme z bodov 5001 a 5002 ktorých súradnice sme poznali a z ktorých bola meraná dĺžka \(S_{5001,5003}\) a vodorovný uhol \(ω_{5003}\). Zo súradníc bodov 5001 a 5002 a uhla \(ω_{5003}\) sme vypočítali smerník \(σ_{5001,5003}\) na bod 5003.Keďže sme poznali dĺžku \(S_{5001,5003}\) ktorá bola odmeraná v teréne, smernik \(σ_{5001,5003}\) ktorý sme si vypočítali a pznali sme súradnice bodu 5001 tak sme vypočítali súradnice bodu 5003.