ArcObjects odpowiada przyciskowi ArcMap Flip?


10

W rozszerzeniu ArcMap muszę przerzucić wiele linii z zaznaczenia.

Przycisk Przerzuć ArcMap pozwala przerzucić tylko jedną funkcję na raz.

Co ArcObjects odpowiada przyciskowi Flip ArcMap?

wprowadź opis zdjęcia tutaj

Odpowiedzi:


7

ICurve.ReverseOrientation powinien robić, co chcesz.

W rzeczywistości istnieje pełny fragment Snippet Direct Line , dostępny w dokumentacji online ESRI.

Oto mały wyciąg z niego:

ESRI.ArcGIS.Geometry.ICurve curve = feature.Shape as ESRI.ArcGIS.Geometry.ICurve;
curve.ReverseOrientation();
feature.Shape = curve;
feature.Store();

Dzięki! Nawiasem mówiąc, we fragmencie Flip Line jest błąd. wiersz „if (! (cecha to ESRI.ArcGIS.Geometry.ICurve))” powinien być „jeśli (! (cecha.Kształt to ESRI.ArcGIS.Geometry.ICurve))”
Goldorak84

@ Goldorak84 - ów tak correct..quite niektóre z nich są ukryte w próbkach :)
vinayan

@vinayan Próbuję osiągnąć to samo, ale w VB.NET. Czy byłeś w stanie korzystać z ReverseOrientation podczas edycji, czyli w aktywnej sesji edycji, a nie poprzez programowe rozpoczęcie operacji edycji?
Barbarossa,

1
@Barbarossa Użyłem ReverseOrientation w aktywnej sesji edycji. Jednak I „StartEditOperation” (która rozpoczyna kilka edycji w ramach rzeczywistej sesji edycji) na obiekcie Editor jest obowiązkowe. W przeciwnym razie spowodowałoby to bałagan w stosie cofania. Co uniemożliwia ci użycie tej metody?
Goldorak84

Dziękuję za odpowiedź. Nie rozważałem stosu cofania. Teraz wszystko działa poprawnie.
Barbarossa
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.