if (MapUnit != DistanceUnit.Undefined) measureAction.MapUnits = MapUnit; else { //Try and get proper map units if not specified by user String sUnits = ""; for (Int32 i = 0; i < Map.Layers.Count; i++) { if (Map.SpatialReference.WKID == Map.Layers.SpatialReference.WKID) { if (Map.Layers is ArcGISDynamicMapServiceLayer) { sUnits = ((ArcGISDynamicMapServiceLayer)Map.Layers).Units; break; } else if (Map.Layers is ArcGISTiledMapServiceLayer) { sUnits = ((ArcGISTiledMapServiceLayer)Map.Layers).Units; break; } } } esriUnits units = (esriUnits)Enum.Parse(typeof(esriUnits), sUnits, true); DistanceUnit distanceUnit = Utility.Utility.esriUnitsToDistanceUnit(units); if (distanceUnit != DistanceUnit.Undefined) measureAction.MapUnits = distanceUnit; //Default to DecimalDegrees if nothing else else measureAction.MapUnits = DistanceUnit.DecimalDegrees;
esriUnits units = (esriUnits)Enum.Parse(typeof(esriUnits), myMapServiceLayer.Units, true);
Membros conectados podem postar, seguir atualizações e mais. Novo aqui? Registre uma conta gratuita.
Find useful guides, FAQs, and documents to help you navigate and make the most of Esri Community.