From 5b1e9ec5895fb8edc0853d97e3ac50465f5b1d49 Mon Sep 17 00:00:00 2001 From: boris Date: Wed, 10 Jul 2024 18:29:55 +0200 Subject: [PATCH] verzija 1.2 --- .vscode/sftp.json | 11 +++ README.html | 42 ++++++++++ icons8-error-48.png | Bin 0 -> 1022 bytes index.php | 77 ++++++++++++------ obdelava.php | 189 +++++++++++++++++++++++++++++++++++++++----- 5 files changed, 275 insertions(+), 44 deletions(-) create mode 100644 .vscode/sftp.json create mode 100644 README.html create mode 100644 icons8-error-48.png diff --git a/.vscode/sftp.json b/.vscode/sftp.json new file mode 100644 index 0000000..97f64e7 --- /dev/null +++ b/.vscode/sftp.json @@ -0,0 +1,11 @@ +{ + "name": "MultiBox - my_webapp__3", + "host": "192.168.1.200", + "protocol": "sftp", + "port": 22, + "username": "root", + "remotePath": "/var/www/my_webapp__3/www", + "uploadOnSave": false, + "useTempFile": false, + "openSsh": false +} diff --git a/README.html b/README.html new file mode 100644 index 0000000..575a4cc --- /dev/null +++ b/README.html @@ -0,0 +1,42 @@ + + README + + + + + + + + + + + + + +
+ +

GeoPHP - TPS1100 Convert Online

+

PHP skeipta za izvoz koordinat točk iz datoteke GSI (za instrumente TPS1100).

+

logo

+

Made by Boris Bilc

+ +
+ + + + + + + + + + \ No newline at end of file diff --git a/icons8-error-48.png b/icons8-error-48.png new file mode 100644 index 0000000000000000000000000000000000000000..2baa8229a75b9dde7fbd899489a4272e18602123 GIT binary patch literal 1022 zcmVsQ5$x zW#@d&y`>#2>+S7bNAJx2Cf}F!@ncY;`|8103X|?7ehNxtm6Gg|8~9td@H?hR z2k}dkWFNVOuS!VvA@M^{3TKq$x)J#DEieti^R0!SBuq*E!+h{xCRSr~IFCZ1fP6lW z;T>80dZK-STcAI}AiQ+~lD)Lhsh=6!fT5wGs=&a&0L~s?v*1lYvKLzeZ?dgQ@aqeW z%uk=Jwc!T`2W^2|E{B=%Rkhy2jh6i2Q<9Zx&HK#6>MFc-`j)`u$@`q%!zqBQxNGo` z;isG)>*dMzJK+2K`|)JA5{q#kHw6=dDy^f59N@ zms~&zcD&x2y!v_D9q`#~2D73zytY0Q_9z`&Qh1o*oD$Z~cYu)$vw~OQGnotq2U3pU zx*||y8U`;c4ZK0PlKgBv_)7D+v<;t5r!g{=s0**F67(FVNx10(O7K_R!du;0NTRQ= z52;iNyLWDP1+V8Mn)@#(itHh4UpFG~_>MHM}mrg@0hMuI9jltWc7k zYy{rwo{>k8OeT>?B(Q&X)HS@GllZDB-whD-K%?+h_w9-y9*^67dQWFV@cLF!q|Yo4 zewwUPg8k`5;N&~&@&0pL@ZO>O@%6iFJPD{GyMiww8$Ams!6v-GH!|!;`m?syY0Vu zf!BgUiO>uriMSR}lD@H+u^BtM5wTbd(P-3ecXv0&j&AS-uPYKo`ntQ*FVUD1?BB)A zeCe$Y8`^4DR~I@vJ0aif@C>gl0fXMe6y4?w|1!BpN%l=M9_$B)HX$8<5UK53@%FQu ztc~IgzBpH9(9;%UZ2=iN*osY~Yn=M+@Rh;{9dw%g3x0;z_AP|YI|*F$GrTSfTyPj6 sHsVU6h42t7haDeskRU;V1R)LNKaKyUXPWM(cmMzZ07*qoM6N<$g5(hK{Qv*} literal 0 HcmV?d00001 diff --git a/index.php b/index.php index 0a9160c..52577d1 100644 --- a/index.php +++ b/index.php @@ -1,6 +1,6 @@ @@ -24,7 +24,7 @@ $version = "1.1"; } body { - background-color: rgba(22, 22, 22, 100.0); + background-color: rgba(25, 25, 25, 100.0); color: #e0e0e0; padding: 30px; } @@ -32,16 +32,22 @@ $version = "1.1"; h1 { color: deepskyblue; font-size: 1.8em; + font-weight: bold; } h2 { color: #FFDB23; font-size: 1.4em; + margin-top: 25px; + margin-bottom: 15px; } h3 { color: #FFDB23; font-size: 1.25em; + margin-top: 20px; + margin-bottom: 15px; + border-bottom: 1px solid #FFDB23; } hr { @@ -50,13 +56,17 @@ $version = "1.1"; } input { - margin: 2px; + margin-left: 12px; } table { color: #E0E0E0 !important; } + .info { + font-size: 10pt; + } + .table-on { color: #d1f200 !important; } @@ -105,38 +115,56 @@ $version = "1.1";

- TPS1100 Convert Online + TPS1100 Convert Online

- Aplikacija za izvoz koordinat točk iz datotek GSI (za instrumente TPS1100). + PHP skripta za procesiranje datotek GSI (za instrumente TPS1100).

+

+ Skripta omogoča izvoz koordinat točk z klasifikacijo.
+ Za pravilen izvoz z klasifikacijo je zahtevana uporaba kodiranja. Za GSI datoteke brez kodiranja uporabi opcijo "Seznam Točk (Brez Kodiranja) [PtId E N H]"
+ Kodiranje je opisano v navodilih aplikacije "TPS1100 Convert" za Windows OS.
+
+ TPS1100 Convert: Aplikacija | Prenos | Wiki | Navodila (PDF) +

+
+
-

- Datoteka za procesiranje (GSI) -

-
- +

+ Procesiranje GSI datoteke +

+

+ Naloži GSI datoteko za procesiranje... +


-
-

- Podatki & Format izvoza + Priprava Podatkov

- -
- -
+

+ Izberi način priprave za izvoz podatkov... +

- -
- +
+ +
+ +
+ +
+
+

+ Datoteka GSI mora vsebovati kodiranje podatkov za pravilno procesiranje. (Stojišča, Orientacije, Meritve, ...) +

- Datoteka + Format Datoteke

+

+ Izberi tip datoteke za izvoz... +

-
+


-


+

"; - print "Skripto pripravil: " . $madeby ."
"; + print "Verzija: " . $version . " | Izdelal: " . $madeby; ?>

diff --git a/obdelava.php b/obdelava.php index 85005f5..912fdfe 100644 --- a/obdelava.php +++ b/obdelava.php @@ -1,6 +1,6 @@ - @@ -24,16 +24,37 @@ } body { - background-color: rgba(0, 0, 0, 100.0); + background-color: rgba(30, 30, 30, 100.0); color: #e0e0e0; padding: 10px; font-family: 'Courier New', Courier, monospace; font-size: 12pt; } - h3 { - color: #FFDB23; - font-size: 1.3em; + h1 { + color: deepskyblue; + font-size: 1.8em; + font-weight: bold; + } + + h2 { + color: #FFDB23; + font-size: 1.4em; + margin-top: 25px; + margin-bottom: 15px; + } + + h3 { + color: #FFDB23; + font-size: 1.25em; + margin-top: 20px; + margin-bottom: 15px; + border-bottom: 1px solid #FFDB23; + } + + hr { + color: lightgrey; + border-color: darkorange; } table { @@ -87,7 +108,15 @@ - +

TPS1100 Convert Online

+

+ + MultiBox +

+
+ "; $uploadOk = 0; } else { - echo "Branje datoteke... " . basename($target_file) . "

"; + echo "Procesiranje datoteke >>> " . basename($target_file) . "

"; $uploadOk = 1; } } @@ -147,7 +176,7 @@ $down_url = "https://gps.multibox.nohost.me/points/"; $down_daturl = $down_url . $down_datnova; - print "Nova datoteka: " . basename($down_datnova) . " (Prenos)
Uporabi desni-klik in izberi opcijo 'Skrani kot.../Save As...'


"; + print "Nova datoteka: " . basename($down_datnova) . " (Prenos)

"; print "--------------------------------------------
"; // If the user file in existing directory already exist, delete it if (file_exists($down_datnova)) { @@ -251,7 +280,7 @@ die('file not found'); } else { print "--------------------------------------------
"; - print "Nova datoteka: " . basename($down_datnova) . " (Prenos)
Uporabi desni-klik in izberi opcijo 'Skrani kot.../Save As...'


"; + print "Nova datoteka: " . basename($down_datnova) . " (Prenos)

"; } } @@ -269,7 +298,7 @@ $down_url = "https://gps.multibox.nohost.me/points/"; $down_daturl = $down_url . $down_datnova; - print "Nova datoteka: " . basename($down_datnova) . " (Prenos)
Uporabi desni-klik in izberi opcijo 'Skrani kot.../Save As...'


"; + print "Nova datoteka: " . basename($down_datnova) . " (Prenos)

"; print "--------------------------------------------
"; // If the user file in existing directory already exist, delete it if (file_exists($down_datnova)) { @@ -323,17 +352,17 @@ } if ($merjene == 1) { $lineout = $pointid . "\t" . number_format($pointE, 3, ".", "") . "\t" . number_format($pointN, 3, ".", "") . "\t" . number_format($pointH, 3, ".", "") . "\tMEAS\r\n"; - print '
'. $lineout . '
'; + print '
' . $lineout . '
'; file_put_contents($down_datnova, $lineout, FILE_APPEND | LOCK_EX); } if ($merjene == 2) { $lineout = $pointid . "\t" . number_format($pointE, 3, ".", "") . "\t" . number_format($pointN, 3, ".", "") . "\t" . number_format($pointH, 3, ".", "") . "\tREF\r\n"; - print '
'. $lineout . '
'; + print '
' . $lineout . '
'; file_put_contents($down_datnova, $lineout, FILE_APPEND | LOCK_EX); } if ($merjene == 3) { $lineout = $pointid . "\t" . number_format($pointE, 3, ".", "") . "\t" . number_format($pointN, 3, ".", "") . "\t" . number_format($pointH, 3, ".", "") . "\tORI\r\n"; - print '
'. $lineout . '
'; + print '
' . $lineout . '
'; file_put_contents($down_datnova, $lineout, FILE_APPEND | LOCK_EX); } } @@ -358,7 +387,7 @@ } if ($pointSta == 1) { $lineout = $pointid . "\t" . number_format($pointE, 3, ".", "") . "\t" . number_format($pointN, 3, ".", "") . "\t" . number_format($pointH, 3, ".", "") . "\tSTA\r\n"; - print '
'. $lineout . '
'; + print '
' . $lineout . '
'; file_put_contents($down_datnova, $lineout, FILE_APPEND | LOCK_EX); } $pointSta = 0; @@ -373,7 +402,127 @@ die('file not found'); } else { print "--------------------------------------------
"; - print "Nova datoteka: " . basename($down_datnova) . " (Prenos)
Uporabi desni-klik in izberi opcijo 'Skrani kot.../Save As...'


"; + print "Nova datoteka: " . basename($down_datnova) . " (Prenos)

"; + } + } + + + // Funkcija za izvoz koordinat točk z klasifikacijo (GSI z kodami) + function izvoz_geoskripta($name) + { + $down_dir = "convert/"; + $down_datime = $down_dir . basename($_FILES["fileToUpload"]["name"]); + $down_datnova = str_replace(".GSI", ".GEO", $down_datime); + + $down_url = "https://gps.multibox.nohost.me/points/"; + $down_daturl = $down_url . $down_datnova; + print "Nova datoteka: " . basename($down_datnova) . " (Prenos)

"; + print "--------------------------------------------
"; + // If the user file in existing directory already exist, delete it + if (file_exists($down_datnova)) { + unlink($down_datnova); + } + $this->obdelavaTocke = $name; + $file_handle = fopen($name, "rb"); + $merjene = 0; + $stojisce = 0; + $kode_ok = 0; + + while (!feof($file_handle)) { + $line_of_text = fgets($file_handle); + $parts = explode(' ', $line_of_text); + $word_index = substr($parts[0], 1, 2); + $pointSta = 0; + + if ($word_index == 41) { + $kode_ok = 1; + $koda = ltrim(substr($parts[0], 8), "0"); + if ($koda == 99) { + $merjene = 2; + $stojisce = 0; + } elseif ($koda >= 90) { + $merjene = 1; + $stojisce = 0; + } elseif ($koda >= 80) { + $merjene = 3; + $stojisce = 0; + } elseif ($koda < 80) { + $merjene = 0; + $stojisce = 1; + } else { + $merjene = 0; + $stojisce = 0; + } + } + + if ($word_index == 11 && $merjene >= 1) { + $pointid = ltrim(substr($parts[0], 8), "0"); + + foreach ($parts as $datpart) { + $data_index = substr($datpart, 0, 2); + if ($data_index == 21) { + $pointHz = substr($datpart, 6) / 100000; + } + if ($data_index == 22) { + $pointV = substr($datpart, 6) / 100000; + } + if ($data_index == 31) { + $pointSd = substr($datpart, 6) / 1000; + } + if ($data_index == 87) { + $pointHr = substr($datpart, 6) / 1000; + } + } + if ($merjene == 1) { + $lineout = $pointid . "\t" . number_format($pointHz, 4, ".", "") . "\t" . number_format($pointV, 4, ".", "") . "\t" . number_format($pointSd, 3, ".", "") . "\t" . number_format($pointHr, 3, ".", "") . "\r\n"; + print '
' . $lineout . '
'; + file_put_contents($down_datnova, $lineout, FILE_APPEND | LOCK_EX); + } + // if ($merjene == 2) { + // $lineout = $pointid . "\t" . number_format($pointHz, 4, ".", "") . "\t" . number_format($pointV, 4, ".", "") . "\t" . number_format($pointSd, 3, ".", "") . "\t" . number_format($pointHr, 3, ".", "") . "\r\n"; + // print '
' . $lineout . '
'; + // file_put_contents($down_datnova, $lineout, FILE_APPEND | LOCK_EX); + // } + if ($merjene == 3) { + $lineout = $pointid . "\t" . number_format($pointHz, 4, ".", "") . "\t" . number_format($pointV, 4, ".", "") . "\t" . number_format($pointSd, 3, ".", "") . "\t" . number_format($pointHr, 3, ".", "") . "\r\n"; + print '
' . $lineout . '
'; + file_put_contents($down_datnova, $lineout, FILE_APPEND | LOCK_EX); + } + } + + if ($word_index == 11 && $stojisce == 1) { + $pointid = ltrim(substr($parts[0], 8), "0"); + + foreach ($parts as $datpart) { + $data_index = substr($datpart, 0, 2); + if ($data_index == 25) { + $pointSta = $pointSta + 1; + } + if ($data_index == 88) { + $pointHt = substr($datpart, 6) / 1000; + } + } + if ($pointSta == 1) { + $lineout = $pointid . " " . number_format($pointHt, 3, ".", "") . "\r\n21 759.81\r\n"; + print '
' . $lineout . '
'; + file_put_contents($down_datnova, $lineout, FILE_APPEND | LOCK_EX); + } else { + $lineout = "-1 0 0 0 0\r\n" . $pointid . " " . number_format($pointHt, 3, ".", "") . "\r\n21 759.81\r\n"; + print '
' . $lineout . '
'; + file_put_contents($down_datnova, $lineout, FILE_APPEND | LOCK_EX); + } + } + } + fclose($file_handle); + if ($kode_ok == 0) { + print "Ni podatkov... je datoteka kodirana?"; + } + print "
"; + if (!file_exists($down_datnova)) { // file does not exist + die('file not found'); + } else { + print "--------------------------------------------
"; + print "Nova datoteka: " . basename($down_datnova) . " (Prenos)

"; } } @@ -391,7 +540,7 @@ $down_url = "https://gps.multibox.nohost.me/points/"; $down_daturl = $down_url . $down_datnova; - print "Nova datoteka: " . basename($down_datnova) . " (Prenos)
Uporabi desni-klik in izberi opcijo 'Skrani kot.../Save As...'


"; + print "Nova datoteka: " . basename($down_datnova) . " (Prenos)

"; print "--------------------------------------------
"; // If the user file in existing directory already exist, delete it @@ -468,7 +617,7 @@ die('file not found'); } else { print "--------------------------------------------
"; - print "Nova datoteka: " . basename($down_datnova) . " (Prenos)
Uporabi desni-klik in izberi opcijo 'Skrani kot.../Save As...'


"; + print "Nova datoteka: " . basename($down_datnova) . " (Prenos)

"; } } @@ -496,6 +645,8 @@ $datTocke->izvoz_tocke($target_file); } elseif ($_POST['obdelava'] == "tockebrez") { $datTocke->izvoz_tockebrez($target_file); + } elseif ($_POST['obdelava'] == "geoskripta") { + $datTocke->izvoz_tockebrez($target_file); } else { echo "Izbrana opcija ni na voljo. Se opravičujemo."; }