Die einzige gute Möglichkeit, Kreise in ArcMap zu erstellen, ist die Verwendung eines echten Bogens (zusammengesetzte Kurven). Diese müssen jedoch aufgrund eines Kompatibilitätsproblems in einen Scheitelpunkt (Verdichtung) konvertiert werden. Ich benötige Informationen für Geodatabase und SDO_geometry (arcsde)
und ja, es gibt einen Weg. Ich benutze:
UPDATE layer1 a SET arctype = 'compound' WHERE has_compound_curves(a.shape) <> 0;
und dann mit ET Geotools Schicht für Schicht verdichten.
Es sollte jedoch eine einfachere Möglichkeit geben, dies in Oracle oder ArcMap zu tun, und ich möchte nur die Features verdichten, die einen echten Bogen aufweisen. Ich möchte keine unnötigen Eckpunkte auf geraden Linien und so weiter.
Wie kann ich in ArcMap echte Bögen identifizieren und wie kann ich sie so schnell und einfach wie möglich verdichten?
Gleiches gilt für Oracle SQL.
Antworten:
Diese Frage wurde mir heute gestellt ("Wie erkenne ich, ob eine Feature-Class Kurven enthält?") Und ich erhielt einige Vorschläge für einen Arcpy- Code. Ändern Sie den folgenden Code nach Belieben (z. B. eine Flag-Variable anstelle einer Nachricht).
quelle
Bei Verwendung von " Verdichten" werden Kurvensegmente durch Verdichtung entweder durch den Parameter "Maximaler Ablenkwinkel" oder "Maximale Abweichung vom Versatz" vereinfacht.
So bleiben gerade Liniensegmente erhalten.
quelle
Ich denke, wenn Sie sie einmal ausgewählt haben, können Sie sie verdichten. Der unten stehende (ungetestete) Code könnte dazu angepasst werden. (Vorausgesetzt, Bezier-Kurven werden als Bögen qualifiziert).
quelle
Aufbauend auf der Antwort von @ KHibma verfügt der Datenzugriffs-Cursor über das Token, mit
SHAPE@JSON
dem nach Kurven gesucht werden kann, ohne dasjson
Modul zu importieren .quelle
Auf Anregung von @geogeek habe ich auch hier meine eigene Lösung entwickelt. Ich habe ein Modell erstellt, das die Scheitelpunkte der Quellebenen mit den Scheitelpunkten einer verdichteten (mit der Option ANGLE) Kopie der Quellebene vergleicht. Die Ausgabe ist eine Ebene von Scheitelpunkten, die nicht mit der Quelle übereinstimmen. Im letzten Schritt werden alle Quell-Features ausgewählt, die die nicht übereinstimmenden Punkte schneiden, wodurch Features identifiziert werden, die echte Kurven enthalten.
Da dieses Modell Features am Start- und Endpunkt des Bogens nicht teilt, wird das gesamte Feature exportiert. Wenn Sie also eine einzelne Geometrie haben, die als "Linie-Kurve-Linie-Kurve-Umkehr-Kurve-Linie" verbunden ist, wird das gesamte Feature ausgegeben, nicht nur die Kurvenabschnitte. Verwenden Sie die Punkte, um zu bestimmen, wo die tatsächlichen Kurven vorhanden sind.
Sie können das Modell " Identify True Curves " aus der ArcGIS Resource Center-Galerie "Analysis" herunterladen .
quelle
Mit diesem Add-In "Kurven und Linien" können Sie Formen mit Kurven auswählen: http://www.arcgis.com/home/item.html?id=b59665cb906a435da3f8c45332d7cfdf
quelle