protected override void OnActivate() { //Get the snap environment and initialize the feedback UID snapUID = new UID(); this.Cursor = Cursors.Cross; snapUID.Value = "{E07B4C52-C894-4558-B8D4-D4050018D1DA}"; if (ArcMap.Application != null) { m_SnappingEnv = ArcMap.Application.FindExtensionByCLSID(snapUID) as ISnappingEnvironment; } if (m_SnappingEnv != null) { m_Snapper = m_SnappingEnv.PointSnapper; } m_SnappingFeedback = new SnappingFeedbackClass(); m_SnappingFeedback.Initialize(ArcMap.Application, m_SnappingEnv, true); Mediator.NotifyColleagues(VisibilityLibrary.Constants.MAP_POINT_TOOL_ACTIVATED, true); // Also notify what the previous tool was so it can be set back Mediator.NotifyColleagues(VisibilityLibrary.Constants.MAP_TOOL_CHANGED, lastActiveToolGuid); }
public override void OnClick() { this._command.OnClick(); this._cursor = this._tool.Cursor; this._lineFeedback = null; this._bStarted = false; this._bFinished = false; this._bMouse = false; try { IEngineSnapEnvironment engineEditor = Editor.UniqueInstance.EngineEditor as IEngineSnapEnvironment; engineEditor.SnapTolerance = 1.0; (Editor.UniqueInstance.EngineEditor as IEngineEditEvents_Event).OnSketchModified += (new IEngineEditEvents_OnSketchModifiedEventHandler(this.editEvents_OnSketchModified)); IHookHelper2 helper = this._hookHelper as IHookHelper2; IExtensionManager extensionManager = helper.ExtensionManager; if (extensionManager != null) { UID nameOrID = new UIDClass { Value = "{E07B4C52-C894-4558-B8D4-D4050018D1DA}" }; IExtension extension = extensionManager.FindExtension(nameOrID); this._snappingEnv = extension as ISnappingEnvironment; this._snapFeedback = new SnappingFeedbackClass(); this._snapFeedback.Initialize(this._hookHelper.Hook, this._snappingEnv, true); } } catch (Exception exception) { this.mErrOpt.ErrorOperate(this.mSubSysName, "ShapeEdit.SnapEx", "OnClick", exception.GetHashCode().ToString(), exception.Source, exception.Message, "", "", ""); } }
protected override void OnActivate() { //Get the snap environment and initialize the feedback UID snapUID = new UID(); this.Cursor = Cursors.Cross; snapUID.Value = "{E07B4C52-C894-4558-B8D4-D4050018D1DA}"; m_SnappingEnv = ArcMap.Application.FindExtensionByCLSID(snapUID) as ISnappingEnvironment; m_Snapper = m_SnappingEnv.PointSnapper; m_SnappingFeedback = new SnappingFeedbackClass(); m_SnappingFeedback.Initialize(ArcMap.Application, m_SnappingEnv, true); }
//设置捕捉环境 public static void StartSnappingEnv() { if (m_bStartSnap) { m_SnappingEnv = DataEditCommon.GetSnapEnvironment(m_hookHelper, snappingType); if (m_SnappingEnv != null) { m_Snapper = m_SnappingEnv.PointSnapper; m_SnappingFeedback = new SnappingFeedbackClass(); m_SnappingFeedback.Initialize(m_hookHelper.Hook, m_SnappingEnv); } } }
public void Initialize(IEditor pEditor) { // Initialize the constructor m_editor = pEditor as IEditor; m_edSketch = pEditor as IEditSketch3; //Get the snap environment m_snappingEnv = m_editor.Parent.FindExtensionByName("ESRI Snapping") as ISnappingEnvironment; m_snapper = m_snappingEnv.PointSnapper; m_snappingFeedback = new SnappingFeedbackClass(); m_snappingFeedback.Initialize(m_editor.Parent, m_snappingEnv, true); m_firstPoint = new PointClass(); m_secondPoint = new PointClass(); m_activePoint = new PointClass(); // Set the phase to inactive so we start at the beginning m_etoolPhase = ToolPhase.Inactive; }
/// <summary> /// Occurs when this tool is created /// </summary> /// <param name="hook">Instance of the application</param> public override void OnCreate(object hook) { if (m_hookHelper == null) { m_hookHelper = new HookHelperClass(); } m_hookHelper.Hook = hook; // TODO: Add ToolNewDisplacement.OnCreate implementation IMapControl2 pMapCtr = (((IToolbarControl)m_hookHelper.Hook).Buddy) as IMapControl2; //m_NewLineFeedback.Display = pMapCtr.ActiveView.ScreenDisplay; //m_FrmVectorLinkTable.OriginPoints = OriginPoints; //m_FrmVectorLinkTable.TargetPoints = TargetPoints; m_FrmVectorLinkTable.IMUFeatureList = m_IMUFeatureList; m_FrmVectorLinkTable.CenterlinePointFeatureList = m_CenterlinePointFeatureList; m_FrmVectorLinkTable.MapCtr = pMapCtr; //m_FrmVectorLinkTable.refreshLayer += new RefreshEvent(RefreshLayer); if (m_FrmVectorLinkTable != null) { m_FrmVectorLinkTable.Owner = System.Windows.Forms.Form.FromChildHandle(User32API.GetCurrentWindowHandle()) as System.Windows.Forms.Form; } IExtensionManager extensionManager = ((IHookHelper2)m_hookHelper).ExtensionManager; UID guid = new UIDClass(); guid.Value = "{E07B4C52-C894-4558-B8D4-D4050018D1DA}"; //Snapping extension. IExtension extension = extensionManager.FindExtension(guid); m_SnappingEnvironment = extension as ISnappingEnvironment; m_snappingFeed = new SnappingFeedbackClass(); m_snappingFeed.Initialize(hook, m_SnappingEnvironment, true); }
//������ public static void StartSnappingEnv() { if (m_bStartSnap) { m_SnappingEnv = DataEditCommon.GetSnapEnvironment(m_hookHelper, snappingType); if (m_SnappingEnv != null) { m_Snapper = m_SnappingEnv.PointSnapper; m_SnappingFeedback = new SnappingFeedbackClass(); m_SnappingFeedback.Initialize(m_hookHelper.Hook, m_SnappingEnv); } } }