protected override void OnClick() { if (ArcMap.Document == null || ArcMap.Document.CurrentLocation == null || ctype == CoordinateConversionLibrary.Models.CoordinateType.Unknown) { return; } var point = ArcMap.Document.CurrentLocation; string coord = string.Empty; try { var cn = point as IConversionNotation; switch (ctype) { case CoordinateType.DD: coord = cn.GetDDFromCoords(6); break; case CoordinateType.DDM: coord = cn.GetDDMFromCoords(6); break; case CoordinateType.DMS: coord = cn.GetDMSFromCoords(2); break; case CoordinateType.GARS: coord = cn.GetGARSFromCoords(); break; case CoordinateType.MGRS: coord = cn.CreateMGRS(5, true, esriMGRSModeEnum.esriMGRSMode_Automatic); break; case CoordinateType.USNG: coord = cn.GetUSNGFromCoords(5, true, true); break; case CoordinateType.UTM: coord = cn.GetUTMFromCoords(esriUTMConversionOptionsEnum.esriUTMAddSpaces | esriUTMConversionOptionsEnum.esriUTMUseNS); break; default: break; } coord = CoordinateHandler.GetFormattedCoordinate(coord, ctype); System.Windows.Clipboard.SetText(coord); } catch { } }
// Use this for initialization void Start() { WorldPos curChunkPos = CoordinateHandler.getChunk(); print("initial" + curChunkPos); if (CoordinateSystem.curPlanet != null) { //print("aksdfaaasdfasdfasfasfasdhasdhsdxfasdfgusadhjasdujkashu"); UniverseSystem.curPlanet.lod.updateAll(new WorldPos(curChunkPos.x / TerrainObject.chunkWidth, curChunkPos.y / TerrainObject.chunkWidth, curChunkPos.z / TerrainObject.chunkWidth)); } }
internal string GetFormattedCoordinate(string coord, CoordinateType cType) { string format = ""; var tt = CoordinateConversionViewModel.AddInConfig.OutputCoordinateList.FirstOrDefault(t => t.CType == cType); if (tt != null) { format = tt.Format; Console.WriteLine(tt.Format); } var cf = CoordinateHandler.GetFormattedCoord(cType, coord, format); if (!String.IsNullOrWhiteSpace(cf)) { return(cf); } return(string.Empty); }
// Update is called once per frame void Update() { //calculate the player's real position from the floating position //Vector3 realPos = Unitracker.getRealPos(transform.position); //only generate stuff for a planet if you are on a planet if (CoordinateSystem.curPlanet != null) { //the current chunk the player is in WorldPos curChunkPos = CoordinateHandler.getChunk(); //print(curChunkPos.toVector3().magnitude); //only request chunk generation (of surface objects) if the chunk is within the build heigth if (curChunkPos.toVector3().magnitude < CoordinateSystem.curPlanet.buildHeight) { findChunk(curChunkPos); } UniverseSystem.curPlanet.lod.updateWorld(new WorldPos(curChunkPos.x / TerrainObject.chunkWidth, curChunkPos.y / TerrainObject.chunkWidth, curChunkPos.z / TerrainObject.chunkWidth)); deleteChunks(curChunkPos); } }
protected override void OnClick() { if (MapView.Active == null || MapView.Active.Map == null) { return; } // get screen point var temp = (System.Windows.Point)ArcGIS.Desktop.Framework.FrameworkApplication.ContextMenuDataContext; MapPoint mp = null; if (temp != null) { mp = QueuedTask.Run(() => { MapPoint tmp = null; tmp = MapView.Active.ScreenToMap(temp); return(tmp); }).Result as MapPoint; } if (mp == null) { return; } string coord = String.Empty; ToGeoCoordinateParameter tgparam; try { switch (cType) { case CoordinateType.DD: tgparam = new ToGeoCoordinateParameter(GeoCoordinateType.DD); coord = mp.ToGeoCoordinateString(tgparam); break; case CoordinateType.DDM: tgparam = new ToGeoCoordinateParameter(GeoCoordinateType.DDM); coord = mp.ToGeoCoordinateString(tgparam); break; case CoordinateType.DMS: tgparam = new ToGeoCoordinateParameter(GeoCoordinateType.DMS); coord = mp.ToGeoCoordinateString(tgparam); break; case CoordinateType.GARS: tgparam = new ToGeoCoordinateParameter(GeoCoordinateType.GARS); coord = mp.ToGeoCoordinateString(tgparam); break; case CoordinateType.MGRS: tgparam = new ToGeoCoordinateParameter(GeoCoordinateType.MGRS); tgparam.Round = false; coord = mp.ToGeoCoordinateString(tgparam); break; case CoordinateType.USNG: tgparam = new ToGeoCoordinateParameter(GeoCoordinateType.USNG); tgparam.NumDigits = 5; coord = mp.ToGeoCoordinateString(tgparam); break; case CoordinateType.UTM: tgparam = new ToGeoCoordinateParameter(GeoCoordinateType.UTM); tgparam.GeoCoordMode = ToGeoCoordinateMode.UtmNorthSouth; coord = mp.ToGeoCoordinateString(tgparam); break; default: break; } coord = CoordinateHandler.GetFormattedCoordinate(coord, cType); System.Windows.Clipboard.SetText(coord); } catch { /* Conversion Failed */ } }