全球FlexSim系统仿真中文论坛

搜索
查看: 3199|回复: 2
打印 上一主题 下一主题

Object和treenode在FlexSim点语法中的区别

[复制链接]
跳转到指定楼层
1#
shiny0801 发表于 2020-3-20 16:50:47 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
treenode 类是FlexSim树中访问的所有对象和节点的基类。虽然可以通过使用Object类访问具有实体数据的节点的更多数据和功能,但是treenode是最基本的接口。首先,它提供对与树结构本身相关的数据和功能的访问。其次,它提供对存储在节点本身上的基本数据的访问,例如节点名和数据值。第三,由于如此多的建模逻辑使用标签,treenode类提供了一种简单的机制来处理实体、标记和任务序列上的标签。
treenode类可以自动向下转换为像Object类的这种子类。
treenode src = model().find("Source1");
Object srcAsObject = src; // auto-down-cast to object
您也可以使用as()关键字向下转换。
src.as(Object).location.x += 2;
FlexSim脚本执行向下转换时,如果节点不是目标类类型的有效实例,则将引发无效的转换。
Object src = model().find("Tools");// 无效
model().find("Tools").as(Object).location.x += 2; // 无效
您可以使用 is ()关键字检查节点是否是给定的子类类型。
if (model().find("Source1").is(Object)) {
        ...
}

评分

参与人数 1威望 +6 收起 理由
沈瑞祥 + 6 很给力!又学到is() as() 的用法

查看全部评分

2#
小王子波 发表于 2020-3-24 10:23:30 | 只看该作者
不错,这个对于17.0以前版本(未接触点语法)以及17.0以后(学习了点语法)的学习者有很好的指导作用。
3#
 楼主| shiny0801 发表于 2020-3-27 17:30:57 | 只看该作者
小王子波 发表于 2020-3-24 10:23
不错,这个对于17.0以前版本(未接触点语法)以及17.0以后(学习了点语法)的学习者有很好的指导作用。

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|小黑屋|手机版|Archiver|全球FlexSim系统仿真中文论坛 ( 京ICP备14043114号-2 )

GMT+8, 2025-6-29 05:20 , Processed in 0.079241 second(s), 14 queries .

Powered by Discuz! X3.3© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表