插件工具中提供了框选和点选两种方式,获取用户获取在BIMBase中的几何实体,即Entity,供后续计算使用。手册中为用户提供两种选择方式,分别为框选和点选。

1.1.1点选工具

启动点选工具
函数返回值:当前点选的几何实体id
def get_point_from_pointselect()

使用示例:

from pyp3d import *
point1 = get_point_from_pointselect()
entity_id = get_current_entityId()
if not entityid_isvaid(entity_id):
    exit()

效果示例:

1.1.2框选工具

启动框选工具
入参一般为默认值,可以不予处理
函数返回值:几何实体id的集合
def get_element_from_boxselect(str = "PyMarqueeTool");

使用示例:

from pyp3d import *

entity_ids  = get_element_from_boxselect()
validEntity = []
for i in entitys:
    if entityid_isvaid(i):
        validEntity.append(i)#获取全部有效的Entity实体

效果示例:

通过以上两种选择工具,用户可以实现BIMBase的几何实体与python插件脚本之间的信息传递,并进行后续一系列复杂计算操作,实现最终想要达到的插件效果。