我在sketchup中有立方体。每个立方体都是从四个面分组的,如下所示:
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如何在该框上创建click事件,以便在box.it上显示messagebox中的Group.name?
答案 0 :(得分:1)
SketchUp API不允许您在自定义工具之外执行此操作:http://www.sketchup.com/intl/en/developer/docs/ourdoc/tool
编辑:看看如何查询数据库中的组名,然后可以使用自定义查询工具。当您的用户激活您的工具时,您会获得onLButtonDown
和OnLButtonUp
等鼠标和关键事件。这些事件提供了SketchUp视口中鼠标所在位置的x
和y
坐标。
然后,您可以使用PickHelper
类来查找用户选择的实体:http://www.sketchup.com/intl/en/developer/docs/ourdoc/pickhelper
大多数情况下,您只需使用best_picked
选择do_pick
即可。 best_picked
将返回一个实体,您可以检查该实体是组还是组件。此实体将与“选择”工具选择的实体相同。
自定义工具之外的唯一通用方法可能是用户 SelectionObserver
来检测何时选择了您的组。但我不鼓励这样做,因为它很容易干扰SketchUp的正常使用。