public void Measure(MeasureTypeEnum measureType) { m_measureType = measureType; bStillMeasure = true; m_interactionEvents = m_inventorApplication.CommandManager.CreateInteractionEvents(); m_Interaction_OnTerminate_Delegate = new InteractionEventsSink_OnTerminateEventHandler(InteractionEvents_OnTerminate); m_interactionEvents.OnTerminate += m_Interaction_OnTerminate_Delegate; m_MeasureEvents = m_interactionEvents.MeasureEvents; m_Measure_OnMeasure_Delegate = new MeasureEventsSink_OnMeasureEventHandler(MeasureEvents_OnMeasure); m_MeasureEvents.OnMeasure += m_Measure_OnMeasure_Delegate; m_interactionEvents.Start(); if (m_measureType == MeasureTypeEnum.kDistanceMeasure) { m_MeasureEvents.Measure(MeasureTypeEnum.kDistanceMeasure); } do { m_inventorApplication.UserInterfaceManager.DoEvents(); }while (bStillMeasure); m_interactionEvents.Stop(); m_MeasureEvents = null; m_interactionEvents = null; }
public MeasureEventsLib(Application inventorApp, InteractionEvents interactionEvents) { invApp = inventorApp; if (interactionEvents == null) { return; } localInteractionEvents = interactionEvents; measureEvents = interactionEvents.MeasureEvents; Activate(); }