Macro Mouse over cb

From FreeCAD Documentation
Jump to navigation Jump to search
Other languages:
English • ‎français • ‎hrvatski • ‎italiano

Macro Mouse over cb.png Macro Mouse over cb

Description
This macro display in report view all elements below cursor (all elements covered by other elements will also be displayed)

Macro version: 00.00
Last modified: 2016-12-13
FreeCAD version: All
Download: Toolbar icon
Author
Chris_G
Download
Toolbar icon
Links
Macro Version
00.00
Date last modified
2016-12-13
FreeCAD Version(s)
All
Default shortcut
None
See also
Macro FC element selector Macro FC element selector.png


Description

This macro display in report view all elements below cursor (all elements covered by other elements will also be displayed)

Usage

Run the macro, the macro stay resident in memory.

Script

Toolbar icon Macro Mouse over cb.png

Macro_Mouse_over_cb.FCMacro

from pivy import coin
import FreeCADGui

def mouse_over_cb( event_callback):
    event = event_callback.getEvent()
    pos = event.getPosition().getValue()
    listObjects = FreeCADGui.ActiveDocument.ActiveView.getObjectsInfo((int(pos[0]),int(pos[1])))
    obj = []
    if listObjects:
        FreeCAD.Console.PrintMessage("\n *** Objects under mouse pointer ***")
        for o in listObjects:
            label = str(o["Object"])
            if not label in obj:
                obj.append(label)
        FreeCAD.Console.PrintMessage("\n"+str(obj))


view = FreeCADGui.ActiveDocument.ActiveView

mouse_over = view.addEventCallbackPivy( coin.SoLocation2Event.getClassTypeId(), mouse_over_cb )

# to remove Callback :
#view.removeEventCallbackPivy( coin.SoLocation2Event.getClassTypeId(), mouse_over_cb)

Links

The forum discussion finding/selecting all elements below cursor

Other similar macro Selecting internal faces of a pressure vessel (download the file FC_element_selector_v1p1p1.py)