konto usunięte

Temat: ArcGis 9.2-selekcja obiektów (kół)

Witam!
Mam następujący problem:
Posiadam shp_line reprezentujący przewody wodociągowe. Na sieci tej umieszczone są kółka(armatura){w jednej warstwie jako polilinie}. Zadaniem jest usunięcie tej armatury reprezentowanej przez koła. Próbowałem ten problem rozwiązać przez stworzenie nowej kolumny i dodanie geometrii(przez geometry calc.) jednak okazało się że pomimo że wzrokowo wydaje się że kółka te są tej samej wielkości(miałyby tą samą długość w kolumnie i po sprawie...) to jednak mają różną długość obwodu. Nie da się również zrobić jakiś przedziałów bo między wartościami kół znajdują się odcinki, a obiektów jest zbyt dużo żeby sprawdzać rekordami.
Może ktoś z Was będzie umiał to ugryź z innej strony?
Próbowałem znaleźć jakąś procedurę przez Select ale nic...
Może jest jakieś query wyszukujące obiekty geometryczne (circle)...

Z góry dzięki !!!
Paweł Wojciech K.

Paweł Wojciech K. Konsultacje,
wsparcie techniczne,
analiza, analizy
przest...

Temat: ArcGis 9.2-selekcja obiektów (kół)

A jak wygląda ta tabela atrybutów? Symbolizacja armatury jest w niej zawarta(symbol UAR[chyba?] Lub jakikolwiek? )? Bo jeżeli tak należałoby ją wyselekcjonować, następnie odwrócić selekcję i zrobić eksport selekcji do nowej warstwy.

Spróbowałbym to też skonwertować do warstwy poligonowej. Może te kółka wtedy wyjdą jako poligony i w ten sposób będzie można je usunąć za pomocą manipulacji różnymi geoprocesami.Paweł Wojciech K. edytował(a) ten post dnia 12.12.09 o godzinie 20:40

Temat: ArcGis 9.2-selekcja obiektów (kół)

To mój pierwszy post na tej zacnej liście, witam wszystkich grupowiczów :).

Rozwiązanie, które proponuję opiera się na założeniu, że obiekty liniowe reprezentujące armaturę (okręgi) - są liniami łamanymi "zamkniętymi", zaś obiekty liniowe reprezentujące przewody wodociągowe - są liniami łamanymi "otwartymi".

Jeżeli powyższe założenie jest prawdziwe, to wybór okręgów reprezentujących armaturę będzie równoznaczny z wyborem tych obiektów liniowych, dla których zachodzą równocześnie następujące dwa warunki:
xPoczątku = xKońca,
yPoczątku = yKońca.

Pytanie brzmi zatem: jak "dobrać" się do współrzędnych początków i końców poszczególnych obiektów? Jak się okazuje - nie jest to trudne, choć w dokumentacji niezbyt precyzyjnie (by nie powiedzieć - w ogóle) opisane. Trzeba dodać troszkę doświadczenia / wiedzy z zakresu programowania w VBA.

Aby nie przedłużać i tak już długiego wpisu sugeruję:
1. w ArcCatalog dodać 4 atrybuty: x1, y1, x2 i y2 (wszystkie typu Double),
2. w ArcMap uruchomić sesję edycyjną
3. otworzyć tabelę atrybutów analizowanej warstwy (Open Attribute Table)
4. dla każdego z 4 atrybutów (x1, y1, x2, y2) uruchomić Field Calculator z zaznaczoną opcją Advanced
5. w okienku Pre-Logic VBA Script Code dla atrybutu x1 wpisać:
Dim dblCoordinate as double
Dim pCurve as ICurve
Set pCurve = [shape]
dblCoordinate = pCurve.FromPoint.x
a następnie, w znajdującej się poniżej linijce X1 - wpisać:
dblCoordinate
6. dla y1 zmiana w kodzie VBA polega na zmianie x na y (po FromPoint)
7. dla x2 i y2 należy zamiast FromPoint użyć metody ToPoint (odpowiednio z x i y)
8. w ArcMap zamknąć sesję edycyjną ...
9. ... no i na koniec Select By Attributes

Pozdrawiam.Andrzej Garstka edytował(a) ten post dnia 13.12.09 o godzinie 15:29

konto usunięte

Temat: ArcGis 9.2-selekcja obiektów (kół)

Dzięki Andrzej !!!
Twoje rozwiązanie się sprawdziło :)
Może w przyszłości nabędę takiej wiedzy...:}

Następna dyskusja:

ArcGIS i problem z bufferem...




Wyślij zaproszenie do