21-02-2012, 09:03,
|
|
[wiki]
^.^_,
|
Liczba postów: 174
27
Dołączył: 10-03-2011
Reputacja:
0
|
|
szerokość i długość działki
Potrzebuję określić parametry działek do analizy - szerokość i długość (przybliżone)
Czy istnieje jakieś narzędzie automatyzujące ww. działanie?
(> - - ^.^_,
|
|
21-02-2012, 09:32,
|
|
Rayo
geoboss
|
Liczba postów: 352
47
Dołączył: 09-12-2009
Reputacja:
3
|
|
RE: szerokość i długość działki
Raczej nie ma takiej możliwości bezpośrednio w programie.
W kalkulatorze możesz obliczyć obwód i powierzchnię działki. Może to Ci wystarczy?
|
|
21-02-2012, 09:37,
|
|
[wiki]
^.^_,
|
Liczba postów: 174
27
Dołączył: 10-03-2011
Reputacja:
0
|
|
RE: szerokość i długość działki
(21-02-2012, 09:32)Rayo napisał(a): W kalkulatorze możesz obliczyć obwód i powierzchnię działki. Może to Ci wystarczy? Naprawdę uważasz, że gdyby mi wystarczało, to bym pytał?
(> - - ^.^_,
|
|
21-02-2012, 10:22,
|
|
Odoakr
geoboss
|
Liczba postów: 264
36
Dołączył: 13-11-2009
Reputacja:
1
|
|
RE: szerokość i długość działki
A jaka jest definicja długości? i szerokości? Bo działki różnie się układają
Postgis da radę (różnica między Ymin i Ymax oraz Xmin i Xmax)
|
|
21-02-2012, 11:34,
|
|
Rayo
geoboss
|
Liczba postów: 352
47
Dołączył: 09-12-2009
Reputacja:
3
|
|
RE: szerokość i długość działki
(21-02-2012, 09:37)[wiki] napisał(a): (21-02-2012, 09:32)Rayo napisał(a): W kalkulatorze możesz obliczyć obwód i powierzchnię działki. Może to Ci wystarczy? Naprawdę uważasz, że gdyby mi wystarczało, to bym pytał?
Naprawdę tak uważam. Przyjmując pewne uproszczenia, znając obwód i powierzchnię można obliczyć długość i szerokość.
|
|
22-02-2012, 20:37,
(Ten post był ostatnio modyfikowany: 22-02-2012, 21:26 {2} przez tomsik.)
|
|
tomsik
a ziemniaczki to się brało panie geodeto
|
Liczba postów: 37
13
Dołączył: 09-11-2010
Reputacja:
0
|
|
RE: szerokość i długość działki
pytanie [wiki] jest źle postawione, bowiem ma sens tylko dla figury geometrycznej, która jest równoległobokiem, prostokątem lub kwadratem. W zasadzie tylko te dwa ostatnie mają długość i szerokość - taką stricte!. Równoległoboki mogą mieć szerokość / długość po boku lub prostopadłą do jednego z równoległych boków. Nie wspomnę o trójkątach, pięciokątach, działkach nieforemnych, wypukłych i wklęsłych. Skonstruowanie algorytmu, który 'wie' co to szerokość dla wszystkich przypadków jest raczej trudne. Jak rozróżnić która to 'długość' i 'szerokość' dla obiektu który jest kwadratem?
Pytanie o długość i szerokość działki było zatem samo w sobie DUŻYM uproszczeniem i na tak postawione nie można było lepiej odpowiedzieć.
pozdrawiam wszystkich !
a tak ciągnąc temat dalej..
znacznie uprościło by wielu osobom pracę, gdyby można było mieć wtyczkę, która oblicza długość i azymut każdego segmentu linii bądź wieloboku. Problem z zapisem wielu linii przy jednym obiekcie, ale może jest jakiś sposób..
Czy ktoś słyszał może o takiej wtyczce?, cała nadzieja w Zespole Rozwojowym..
|
|
22-02-2012, 22:14,
(Ten post był ostatnio modyfikowany: 22-02-2012, 23:10 {2} przez Rayo.)
|
|
Rayo
geoboss
|
Liczba postów: 352
47
Dołączył: 09-12-2009
Reputacja:
3
|
|
RE: szerokość i długość działki
W kalkulatorze QGIS 1.9 powinno się to dać wyliczyć. Są tam funkcje pobierające współrzędne poszczególnych punktów linii (xat i yat). Mając te współrzędne można obliczyć długości i azymuty. To takie rozwiązanie dla kilku obiektów. Sam tego nie sprawdzałem.
Dla większej ilości można by spróbować wyeksportować warstwę to arkusza kalkulacyjnego z geometrią WKT i tam dokonać przeliczeń.
Dla warstw PostGIS najlepiej zrobić wyliczenia po stronie bazy i wywoływać triggerem. U mnie działa coś takiego dla obliczania długości linii (całych).
Problem oczywiście będzie z zapisem wielu długości i azymutów w jednym obiekcie. Jeśli konieczne jest takie rozwiązanie to można by spróbować następującego formatu: ((długość1, azymut1), (długość2, azymut2),...). Wszystko wrzucane do jednego pola tekstowego.
Z punktu widzenia struktury danych najlepszym rozwiązaniem byłoby chyba stworzenie nowej warstwy, rozbicie wszystkich linii i wieloboków na pojedyncze odcinki (obiekty) i dla każdego z nich wyliczenie i zapisanie długości i azymutu.
Napisanie takiej wtyczki powinno być w miarę proste.
Wszystko zależy czemu te dane mają służyć.
|
|
11-03-2012, 00:16,
|
|
tomsik
a ziemniaczki to się brało panie geodeto
|
Liczba postów: 37
13
Dołączył: 09-11-2010
Reputacja:
0
|
|
RE: szerokość i długość działki
Witam, problem rozwiązałem następująco:
przyjmuję, że poligon jest prostokątem,
a w jeszcze większym uproszczeniu (czyli pozwalając sobie na jakąś tolerancję) ma przynajmniej dłuższe boki równoległe.
P - pole ($area),
Q - obwód ($perimeter)
a,b - boki: krótszy i dłuższy
na podstawie dwóch równań z dwiema niewiadomymi :
P=ab, Q=2(a+b), otrzymujemy:
a=(Q/2)-b ; P=((Q/2)-b)b;
b^2 - (Qb/2)+P = 0;
Delta=((Q^2)/4) - 4P;
Dwie pary rozwiązań dla wartości dodatnich i ujemnych, pokrywają się, więc nie będę pisał całego wyprowadzenia..
bok krótszy a=(Q/4)-(sqrt(((Q^2)/4)-4P)/2);
bok dłuższy b=(Q/4)+(sqrt(((Q^2)/4)-4P)/2);
Objaśnienie:
Pierwszy człon oblicza bok, dla którego poligon byłby kwardratem,
jeśli a=b wtedy drugi człon równania jest równy ZERO, jeśli a<>b - drugi człon równania posiada wartość dodatnią, którą się od obliczonego boku kwadratu:
- odejmuje--> krótszy bok
- dodaje --> dłuższy bok,
zapis do wklejenia do kalkulatora pól: a i b =>(real(10,2))
bok_a = ($perimeter/4)-(sqrt((($perimeter^2)/4)-4*$area)/2)
bok_b = ($perimeter/4)+(sqrt((($perimeter^2)/4)-4*$area)/2)
ocena dokładności:
dla przeciętnej działki, która ma geometrię zbliżoną do kwadratu lub prostokąta algorytm uzyskuje dokładność rzędu kilku procent. Dla kwadratu lub prostokąta liczy idealnie. Błędy dla obliczonych boków są większe dla figur nie posiadających równoległych dłuższych boków.
Pozdrawiam, Tomek
|
|
12-03-2012, 10:00,
|
|
[wiki]
^.^_,
|
Liczba postów: 174
27
Dołączył: 10-03-2011
Reputacja:
0
|
|
RE: szerokość i długość działki
(11-03-2012, 00:16)tomsik napisał(a): zapis do wklejenia do kalkulatora pól: a i b =>(real(10,2))
bok_a = ($perimeter/4)-(sqrt((($perimeter^2)/4)-4*$area)/2)
bok_b = ($perimeter/4)+(sqrt((($perimeter^2)/4)-4*$area)/2)
Pozdrawiam, Tomek
Dźwięki piękne, przetestuję wkrótce.
(> - - ^.^_,
|
|
12-03-2012, 15:16,
(Ten post był ostatnio modyfikowany: 12-03-2012, 15:17 {2} przez [wiki].)
|
|
[wiki]
^.^_,
|
Liczba postów: 174
27
Dołączył: 10-03-2011
Reputacja:
0
|
|
RE: szerokość i długość działki
(11-03-2012, 00:16)tomsik napisał(a): zapis do wklejenia do kalkulatora pól:[/u] a i b =>(real(10,2))
bok_a = ($perimeter/4)-(sqrt((($perimeter^2)/4)-4*$area)/2)
bok_b = ($perimeter/4)+(sqrt((($perimeter^2)/4)-4*$area)/2)
ocena dokładności:
dla przeciętnej działki, która ma geometrię zbliżoną do kwadratu lub prostokąta algorytm uzyskuje dokładność rzędu kilku procent. Dla kwadratu lub prostokąta liczy idealnie. Błędy dla obliczonych boków są większe dla figur nie posiadających równoległych dłuższych boków.
Pozdrawiam, Tomek
Odpaliłem, pooglądałem - dokładność w zupełności wystarczająca.
Tomku, dźwięki piękne.
(> - - ^.^_,
|
|
|