如何使用模板脚本实现信号灯节点的快速可视化

技术注解 #43

2020年1月
作者:Margarida Delgado

在这个技术注解中,我们将看一下模板中的一个脚本,你可以用它来加快过滤和查看信号灯节点的过程。

模板列表中的第10个脚本将搜索模型中的所有节点,然后分配一个节点属性,称为GKNode::hasControlInfo,为真或假(如果它不存在,则创建该节点属性)。

当你执行脚本10时,主函数将被调用,并打开一个有以下选项的对话框:

  1. “全部控制计划”
  2. “一个控制计划”
  3. “主控制计划中的全部控制计划”

GKNode::hasControlInfo的下拉菜单

如果你选择 “一个控制计划”,你需要提供控制计划的ID号;如果你选择 “主控制计划中的全部控制计划”,你需要提供主控制计划的ID号。

函数getCreateNodeAttribute()检查特性 GKNode::hasControlInfo是否存在。 如果不存在,就创建它。 这个属性所接受的值的类型将是布尔值(真或假)。 外部名称将是”有控制信息吗?”

函数isNodeInCP( cp, node )只是确定一个特定的节点是否有特定控制计划的信息;如果没有信息,它返回0,即false或No;如果有信息,返回1,即true或Yes。 当节点在控制计划中显示为未指定(即没有信息)时,函数getControlJunction()将返回0。


当寻找全部控制计划时,将执行函数startCalculation(column)。 它检查所有节点,对于每个节点,检查它全部控制计划。 节点都是GKNode-type目标,所有的控制计划都是 CKControlPlan-type目标,所以用getCatalog().getObjectsByType(enterType)函数找到它们。

当寻找一个特定的控制计划时,函数startCalculationCP(column, cp)将检查这个特定控制计划的所有节点。

当寻找一个特定的主控制计划时,函数startCalculationMCP(column, mcp)会检查该主控制计划内的所有节点和全部控制计划,无论时间表或区域如何。

一旦脚本完成,你可以将节点可视化,不带信息,创建一个视图模式:




  • 有问题吗? 请联系我们。

    我们在这里提供帮助!

  • 有问题吗? 请联系我们。

    我们在这里提供帮助!

分享