public bool CLOSE_ARCFM_SESSION(string sODBC, string sSave) { IVersion pVersion; IVersion pNewVersion; IWorkspace pWKS; ESRI.ArcGIS.Framework.IAppROT pAppRot = new ESRI.ArcGIS.Framework.AppROT(); ESRI.ArcGIS.Framework.IApplication pApp; //Set pExt = pApp.FindExtensionByName("MMSessionManager") //pMMSM = new mmsession SW1.Reset(); SW1.Start(); pWKS = pEditor.EditWorkspace; pVersion = (IVersion)pWKS; IVersionInfo pVersionInfo = pVersion.VersionInfo; IVersionedWorkspace pVWKS = (IVersionedWorkspace)pWKS; pNewVersion = pVWKS.DefaultVersion; if (sSave.ToUpper() == "TRUE") { pEditor.StopEditing(true); } else { pEditor.StopEditing(false); } //Return to Default version Type t = Type.GetTypeFromProgID("esriFramework.AppRef"); System.Object obj = Activator.CreateInstance(t); pApp = obj as IApplication; SwizzleDatasets(pApp, (IFeatureWorkspace)pVersion, (IFeatureWorkspace)pNewVersion); SW1.Stop(); RecordActionTime("CLOSE_ARCFM_SESSION:", SW1.ElapsedMilliseconds); return true; }
private bool ZoomToScale(string sX, string sY, string sScale) { IMxDocument pMXDoc; IEnvelope pEnv; IPoint pPoint; double dScale; ESRI.ArcGIS.Framework.IAppROT pAppRot = new ESRI.ArcGIS.Framework.AppROT(); ESRI.ArcGIS.Framework.IApplication pApp; try { SW1.Reset(); SW1.Start(); Type t = Type.GetTypeFromProgID("esriFramework.AppRef"); System.Object obj = Activator.CreateInstance(t); pApp = obj as IApplication; pMXDoc = (IMxDocument)pApp.Document; // Convert X,Y to point pPoint = new Point(); pPoint.SpatialReference = pMXDoc.FocusMap.SpatialReference; pPoint.X = System.Convert.ToDouble(sX); pPoint.Y = System.Convert.ToDouble(sY); dScale = 1.0 / System.Convert.ToDouble(sScale); // Convert Scale to double Logger.WriteLine("Scale:" + dScale.ToString() + " X:" + pPoint.X.ToString() + " Y:" + pPoint.Y.ToString()); pMXDoc = GetDoc(); pEnv = pMXDoc.ActiveView.FullExtent; pMXDoc.ActiveView.Extent = pEnv; pMXDoc.ActiveView.Refresh(); SW1.Stop(); RecordActionTime("ZOOMTOFULLEXTENT" , SW1.ElapsedMilliseconds); return true; } catch (Exception EX) { this.Logger.WriteLine("ZoomToFullExtents error:" + EX.Message); return false; } }
public bool ARCFM_ZOOMTO(string sScale, string sX, string sY) { IPoint pPoint; double dScale; IMxDocument pMXDoc; Miner.Interop.IMMMapUtilities pMMMapUtils; ESRI.ArcGIS.Framework.IAppROT pAppRot = new ESRI.ArcGIS.Framework.AppROT(); ESRI.ArcGIS.Framework.IApplication pApp; //Set pExt = pApp.FindExtensionByName("MMSessionManager") try { pMMMapUtils = new mmMapUtilsClass(); Type t = Type.GetTypeFromProgID("esriFramework.AppRef"); System.Object obj = Activator.CreateInstance(t); pApp = obj as IApplication; pMXDoc = (IMxDocument)pApp.Document; // Convert X,Y to point pPoint = new Point(); pPoint.SpatialReference = pMXDoc.FocusMap.SpatialReference; pPoint.X = System.Convert.ToDouble(sX); pPoint.Y = System.Convert.ToDouble(sY); dScale = 1.0 / System.Convert.ToDouble(sScale); // Convert Scale to double Logger.WriteLine("Scale:" + dScale.ToString() + " X:" + pPoint.X.ToString() + " Y:" + pPoint.Y.ToString()); SW1.Reset(); SW1.Start(); pMMMapUtils.ZoomTo(pPoint, pMXDoc.ActiveView, dScale); pMXDoc.ActiveView.Refresh(); SW1.Stop(); RecordActionTime("ARCFM_ZOOMTO:" ,SW1.ElapsedMilliseconds); return true; } catch (Exception EX) { this.Logger.WriteLine("ArcFM_ZoomTo" + EX.Message + " " + EX.StackTrace); return false; } }