如何在 SketchUp 中创建组对象的点击事件?
How to create a click event on group object in sketchup?
我有立方体 sketchup.each 立方体由四个面组成,如下所示:
entities = model.active_entities
pts = []
pts[0] = [0, 0, 0]
pts[1] = [width, 0, 0]
pts[2] = [width, depth, 0]
pts[3] = [0, depth, 0]
# Add the group to the entities in the model
group = entities.add_group
这会创建一个 box.now 我如何在该框上创建点击事件,以便在点击 box.it 时在消息框中显示 Group.name?
SketchUp API 不允许您在自定义工具之外执行此操作:http://www.sketchup.com/intl/en/developer/docs/ourdoc/tool
编辑:了解您如何在数据库中查询组名,然后使用自定义查询工具即可。当您的用户激活您的工具时,您会收到鼠标和按键事件,例如 onLButtonDown
和 OnLButtonUp
。这些事件提供鼠标在 SketchUp 视口上的 x
和 y
坐标。
然后您可以使用 PickHelper
class 来查找用户选择的实体:http://www.sketchup.com/intl/en/developer/docs/ourdoc/pickhelper
大多数时候,您只想在使用 do_pick
进行选择后使用 best_picked
。 best_picked
将 return 一个实体,您可以检查它是组还是组件。该实体将与 Select 工具 select.
相同
自定义工具之外的唯一通用方法可能是使用 SelectionObserver
来检测您的组何时被 selected。但我不赞成这样做,因为它太简单了,只会干扰 SketchUp 的正常使用。
我有立方体 sketchup.each 立方体由四个面组成,如下所示:
entities = model.active_entities
pts = []
pts[0] = [0, 0, 0]
pts[1] = [width, 0, 0]
pts[2] = [width, depth, 0]
pts[3] = [0, depth, 0]
# Add the group to the entities in the model
group = entities.add_group
这会创建一个 box.now 我如何在该框上创建点击事件,以便在点击 box.it 时在消息框中显示 Group.name?
SketchUp API 不允许您在自定义工具之外执行此操作:http://www.sketchup.com/intl/en/developer/docs/ourdoc/tool
编辑:了解您如何在数据库中查询组名,然后使用自定义查询工具即可。当您的用户激活您的工具时,您会收到鼠标和按键事件,例如 onLButtonDown
和 OnLButtonUp
。这些事件提供鼠标在 SketchUp 视口上的 x
和 y
坐标。
然后您可以使用 PickHelper
class 来查找用户选择的实体:http://www.sketchup.com/intl/en/developer/docs/ourdoc/pickhelper
大多数时候,您只想在使用 do_pick
进行选择后使用 best_picked
。 best_picked
将 return 一个实体,您可以检查它是组还是组件。该实体将与 Select 工具 select.
自定义工具之外的唯一通用方法可能是使用 SelectionObserver
来检测您的组何时被 selected。但我不赞成这样做,因为它太简单了,只会干扰 SketchUp 的正常使用。