AB4D Forum
Hit test everything under the mouse pointer. - Printable Version

+- AB4D Forum (https://forum.ab4d.com)
+-- Forum: Products Forums (https://forum.ab4d.com/forumdisplay.php?fid=4)
+--- Forum: Ab3d.PowerToys (https://forum.ab4d.com/forumdisplay.php?fid=9)
+--- Thread: Hit test everything under the mouse pointer. (/showthread.php?tid=4057)



Hit test everything under the mouse pointer. - tim.rutter - 11-29-2017

I have a view in which I create points - these are actually PlaneVisual3D objects with bitmaps that are rotated to always face the camera.  I have enabled mouse events on these planes using the VisualEventSource3D class and use the mouse over event to change the color and mouse click event to show a context menu for the point.  The problem I have is that when there are many points on top of each other I want to show a separate popup to allow the user to select the point they are interested in.  To do this I need to perform a hit test to find all the points under the mouse pointer.  Could you tell me if there is any utility in the PowerToys library to achieve this?

Thanks


RE: Hit test everything under the mouse pointer. - abenedik - 11-29-2017

This is not supported by EventManager3D.
But you can achieve this by using standard WPF 3D hit-testing where you specify a callback method that is called on each hit object - in this method you can specify if hit testing can stop or is continued. When you continue hit testing you can get all the hit objects.

See more here:
https://blogs.msdn.microsoft.com/wpf3d/2009/05/18/3d-hit-testing/