Exemple #1
0
        void DXEventManager3DWrapperSample_Loaded(object sender, RoutedEventArgs e)
        {
            //_eventManager = new Ab3d.Utilities.EventManager3D(Viewport3D1);
            //_eventManager.CustomEventsSourceElement = ViewportBorder;

            _eventManager = new DXEventManager3DWrapper(MainDXViewportView);


            // Exclude TransparentPlaneVisual3D from hit testing
            _eventManager.RegisterExcludedVisual3D(TransparentPlaneVisual3D);


            var multiEventSource3D = new Ab3d.Utilities.MultiVisualEventSource3D();

            multiEventSource3D.TargetVisuals3D = new Visual3D[] { LowerBoxVisual3D, PassageBoxVisual3D, UpperBoxVisual3D };
            multiEventSource3D.IsDragSurface   = true;

            _eventManager.RegisterEventSource3D(multiEventSource3D);


            var eventSource3D = new Ab3d.Utilities.VisualEventSource3D();

            eventSource3D.TargetVisual3D = MovableBoxVisual3D;
            eventSource3D.Name           = "Movable";
            eventSource3D.MouseEnter    += new Ab3d.Common.EventManager3D.Mouse3DEventHandler(eventSource3D_MouseEnter);
            eventSource3D.MouseLeave    += new Ab3d.Common.EventManager3D.Mouse3DEventHandler(eventSource3D_MouseLeave);
            eventSource3D.MouseClick    += new Ab3d.Common.EventManager3D.MouseButton3DEventHandler(movableEventSource3D_MouseClick);
            eventSource3D.MouseDrag     += new Ab3d.Common.EventManager3D.MouseDrag3DEventHandler(movableEventSource3D_MouseDrag);

            _eventManager.RegisterEventSource3D(eventSource3D);
        }
        void EventManagerDragSample_Loaded(object sender, RoutedEventArgs e)
        {
            _eventManager = new Ab3d.Utilities.EventManager3D(Viewport3D1);

            // When using EventManager3D from Ab3d.PowerToys inside DXEngine,
            // it is recommended to set the CustomEventsSourceElement to the DXViewportView or its parent element (for example ViewportBorder).
            // If this is not done, then EventManager3D tries to find the DXViewportView and when found uses it as an element that used to subscribe to mouse events.
            _eventManager.CustomEventsSourceElement = ViewportBorder;


            // Exclude TransparentPlaneVisual3D from hit testing
            _eventManager.RegisterExcludedVisual3D(TransparentPlaneVisual3D);


            var multiEventSource3D = new Ab3d.Utilities.MultiVisualEventSource3D();

            multiEventSource3D.TargetVisuals3D = new Visual3D[] { LowerBoxVisual3D, PassageBoxVisual3D, UpperBoxVisual3D };
            multiEventSource3D.IsDragSurface   = true;

            _eventManager.RegisterEventSource3D(multiEventSource3D);


            var eventSource3D = new Ab3d.Utilities.VisualEventSource3D();

            eventSource3D.TargetVisual3D = MovableBoxVisual3D;
            eventSource3D.Name           = "Movable";
            eventSource3D.MouseEnter    += new Ab3d.Common.EventManager3D.Mouse3DEventHandler(eventSource3D_MouseEnter);
            eventSource3D.MouseLeave    += new Ab3d.Common.EventManager3D.Mouse3DEventHandler(eventSource3D_MouseLeave);
            eventSource3D.MouseClick    += new Ab3d.Common.EventManager3D.MouseButton3DEventHandler(movableEventSource3D_MouseClick);
            eventSource3D.MouseDrag     += new Ab3d.Common.EventManager3D.MouseDrag3DEventHandler(movableEventSource3D_MouseDrag);

            _eventManager.RegisterEventSource3D(eventSource3D);
        }