03-25-2019, 10:09 AM
If you want to use EventManager3D for handling the mouse events, then you can exclude some object from being processed in hit testing with using RegisterExcludedVisual3D method.
This is used in the EventManagerDragSample where the semi-transparent plane is excluded from hit testing with the following line:
_eventManager.RegisterExcludedVisual3D(TransparentPlaneVisual3D);
If you are using standard WPF hit testing, then you can use the VisualTreeHelper.HitTest method that takes HitTestFilterCallback and HitTestResultCallback delegates as parameter - in HitTestFilterCallback you can filter which objects are hit tested, in HitTestResultCallback you can return HitTestResultBehavior.Continue from the delegate method to continue hit testing along the ray.
When using the hit testing in Ab3d.DXEngine, you can set the DXScene.DXHitTestOptions.HitTestFilterCallback delegate to filter which objects are hit tested.
This is used in the EventManagerDragSample where the semi-transparent plane is excluded from hit testing with the following line:
_eventManager.RegisterExcludedVisual3D(TransparentPlaneVisual3D);
If you are using standard WPF hit testing, then you can use the VisualTreeHelper.HitTest method that takes HitTestFilterCallback and HitTestResultCallback delegates as parameter - in HitTestFilterCallback you can filter which objects are hit tested, in HitTestResultCallback you can return HitTestResultBehavior.Continue from the delegate method to continue hit testing along the ray.
When using the hit testing in Ab3d.DXEngine, you can set the DXScene.DXHitTestOptions.HitTestFilterCallback delegate to filter which objects are hit tested.
Andrej Benedik

