Ito ang command na Planimeter na maaaring patakbuhin sa OnWorks na libreng hosting provider gamit ang isa sa aming maramihang libreng online na workstation gaya ng Ubuntu Online, Fedora Online, Windows online emulator o MAC OS online emulator
PROGRAMA:
NAME
Planimeter -- kalkulahin ang lugar ng geodesic polygons
SINOPSIS
Planimeter [ -r ] [ -s ] [ -l ] [ -e a f ] [ -w ] [ -p prev ] [ -G | -E | -Q | -R ] [
--comment-delimiter commentdelim ] [ --bersyon | -h | - Tumulong ] [ --input-file infile |
--input-string instring ] [ --line-separator linesep ] [ --output-file outfile ]
DESCRIPTION
Sukatin ang lugar ng isang geodesic polygon. Nagbabasa ng mga polygon vertices mula sa karaniwang input, isa
bawat linya. Maaaring ibigay ang mga vertice bilang latitude at longitude, UTM/UPS, o MGRS coordinates,
binibigyang-kahulugan sa parehong paraan tulad ng GeoConvert(1). (Ang mga coordinate ng MGRS ay nagpapahiwatig ng sentro ng
kaukulang MGRS square.) Ang dulo ng input, isang blangkong linya, o isang linya na hindi maaaring
binibigyang-kahulugan bilang isang vertex ang senyales ng pagtatapos ng isang polygon at ang simula ng susunod. Para sa
bawat polygon ay nag-print ng isang linya ng buod na may bilang ng mga puntos, ang perimeter (sa metro),
at ang lugar (sa metro^2).
Ang mga gilid ng polygon ay ibinibigay ng pinakamaikling geodesic sa pagitan ng magkakasunod na vertices.
Sa ilang partikular na kaso, maaaring mayroong dalawa o maraming ganoong pinakamaikling geodesics, at sa kasong iyon, ang
Ang polygon ay hindi natatanging tinukoy ng mga vertex nito. Nangyayari lamang ito sa napakahabang mga gilid
(para sa WGS84 ellipsoid, anumang gilid na mas maikli sa 19970 km ay natatanging tinukoy sa dulo nito
puntos). Sa ganitong mga kaso, maglagay ng karagdagang vertex malapit sa gitna ng mahabang gilid sa
tukuyin ang hangganan ng polygon.
Bilang default, ang mga polygon na tinatahak sa counter-clockwise na direksyon ay nagbabalik ng positibong lugar at
ang mga tinatahak sa direksyong pakanan ay nagbabalik ng negatibong lugar. Ang sign convention na ito ay
baligtad kung ang -r ang pagpipilian ay ibinigay.
Siyempre, ang pag-ikot sa isang lugar sa direksyong clockwise ay katumbas ng pag-ikot sa
natitirang bahagi ng ellipsoid sa counter-clockwise na direksyon. Ang ginamit na default na interpretasyon
by Planimeter ay ang nagreresulta sa isang mas maliit na magnitude ng lugar; ibig sabihin, ang magnitude
ng lugar ay mas mababa sa o katumbas ng kalahati ng kabuuang lugar ng ellipsoid. Kung ang -s
ang opsyon ay ibinigay, kung gayon ang interpretasyong ginamit ay ang nagreresulta sa isang positibong lugar;
ibig sabihin, ang lugar ay positibo at mas mababa kaysa sa kabuuang lugar ng ellipsoid.
Ang mga simple lamang (ibig sabihin, hindi self-intersecting) na mga polygon ang sinusuportahan para sa pagkalkula ng lugar.
Maaaring kabilang sa mga polygon ang isa o parehong mga pole. Hindi na kailangang isara ang polygon.
Opsyon
-r i-toggle kung ang counter-clockwise traversal ng polygon ay nagbabalik ng positibo (ang
default) o negatibong resulta.
-s i-toggle kung magbabalik ng nilagdaang resulta (ang default) o hindi.
-l i-toggle kung ang mga vertex ay kumakatawan sa isang polygon (ang default) o isang polyline. Para sa
polyline, ibinalik ang bilang ng mga puntos at ang haba ng landas na nagdudugtong sa kanila;
ang landas ay hindi sarado at ang lugar ay hindi naiulat.
-e tukuyin ang ellipsoid sa pamamagitan ng a f; ang equatorial radius ay a at ang pagyupi ay f.
Pagtatakda ng f = 0 resulta sa isang globo. Tukuyin f < 0 para sa isang prolate ellipsoid. Isang simple
fraction, hal, 1/297, ay pinapayagan para sa f. Bilang default, ginagamit ang WGS84 ellipsoid, a =
6378137 m, f = 1/298.257223563. Kung nagpapasok ng mga vertex bilang mga coordinate ng UTM/UPS o MGRS,
gamitin ang default na ellipsoid, dahil ang conversion ng mga coordinate na ito sa latitude at
Palaging ginagamit ng longitude ang mga parameter ng WGS84.
-w kapag nagbabasa ng mga geographic na coordinate, ang longitude ay nauuna sa latitude (maaaring ito ay
na-override ng isang hemisphere designator, N, S, E, W).
-p itakda ang katumpakan ng output sa prev (default 6); ang perimeter ay ibinibigay (sa metro) na may
prev mga digit pagkatapos ng decimal point; ang lugar ay ibinibigay (sa metro^2) na may (prev - 5)
digit pagkatapos ng decimal point.
-G gamitin ang seryeng pagbabalangkas para sa geodesics. Ito ang default na opsyon at ay
inirerekomenda para sa pang-lupang mga aplikasyon. Ang pagpipiliang ito, -G, at ang sumusunod na tatlo
pagpipilian -E, -Q, at -R, ay kapwa eksklusibo.
-E gumamit ng "eksaktong" algorithm (batay sa mga elliptic integral) para sa mga geodesic na kalkulasyon.
Mas tumpak ang mga ito kaysa sa (default) na mga pagpapalawak ng serye para sa |f| > 0.02. (Ngunit
tandaan na ang pagpapatupad ng mga lugar sa GeodesicExact ay gumagamit ng isang high order series at
ito ay tumpak lamang para sa katamtamang pagyupi.)
-Q gawin ang pagkalkula sa authalic sphere. Ang pagkalkula ng lugar ay tumpak kahit na
kung malaki ang pagyupi, nakalaan ang mga gilid ay sapat na maikli. Ang perimeter
hindi tumpak ang pagkalkula.
-R Ang mga linyang nagdurugtong sa vertices ay mga rhumb lines sa halip na geodesics.
--comment-delimiter
itakda ang delimiter ng komento sa commentdelim (hal., "#" o "//"). Kung nakatakda, ang input
ang mga linya ay i-scan para sa delimiter na ito at, kung matagpuan, ang delimiter at ang iba pa
ang linya ay aalisin bago ang pagproseso. Para sa isang naibigay na polygon, ang huling tulad
string na natagpuan ay idaragdag sa linya ng output (na pinaghihiwalay ng isang puwang).
--bersyon
bersyon ng pag-print at paglabas.
-h paggamit ng pag-print at paglabas.
- Tumulong
i-print ang buong dokumentasyon at lumabas.
--input-file
basahin ang input mula sa file infile sa halip na mula sa karaniwang input; isang pangalan ng file ng "-"
ibig sabihin ay karaniwang input.
--input-string
basahin ang input mula sa string instring sa halip na mula sa karaniwang input. Lahat ng mga pangyayari
ng line separator character (default ay isang semicolon) sa instring na-convert sa
mga bagong linya bago magsimula ang pagbabasa.
--line-separator
itakda ang line separator character sa linesep. Bilang default, ito ay isang semicolon.
--output-file
isulat ang output sa file outfile sa halip na sa karaniwang output; isang pangalan ng file ng "-"
ay kumakatawan sa karaniwang output.
HALIMBAWA
Halimbawa (ang lugar ng 100km MGRS square 18SWK)
Planimeter <
18n 500000 4400000
18n 600000 4400000
18n 600000 4500000
18n 500000 4500000
EOF
=> 4 400139.53295860 10007388597.1913
Kinukuha ng sumusunod na code ang output mula sa gdalinfo at iniuulat ang lugar na sakop ng data
(ipagpalagay na ang mga gilid ng imahe ay geodesics).
#! / Bin / SH
egrep '^((Itaas|Ibaba) (Kaliwa|Kanan)|Gitna) ' |
sed -e 's/d /d/g' -e "s/' /'/g" | tr -s '(),\r\t' ' ' | awk '{
kung ($1 $2 == "UpperLeft")
ul = $6 " " $5;
else if ($1 $2 == "LowerLeft")
ll = $6 " " $5;
else if ($1 $2 == "UpperRight")
ur = $6 " " $5;
else if ($1 $2 == "LowerRight")
lr = $6 " " $5;
else if ($1 == "Center") {
printf "%s\n%s\n%s\n%s\n\n", ul, ll, lr, ur;
ul = ll = ur = lr = "";
}
}
' | Planimeter | gupitin -f3 -d' '
Gamitin ang Planimeter online gamit ang mga serbisyo ng onworks.net