在ansa2021版本中,二次开发中使用base.GetEntityCardValues得到set集合中undefined_sets集合中包含的node的id,并作为列表打印出来
时间: 2024-02-19 11:57:19 浏览: 197
在ansa2021版本中,你可以使用以下代码从 `undefined_sets` 集合中获取 node 的 ID 并将其作为列表打印出来:
```
import ansa.base
from ansa import constants
deck = constants.LSDYNA
set_nodes = ansa.base.CollectEntities(deck, None, "SET")
undefined_sets = []
for set1 in set_nodes:
if set1._name == "NODE_ABS: NODE referenced but not defined":
undefined_sets.append(set1)
node_ids = []
for set1 in undefined_sets:
set_id = set1._id
card_values = ansa.base.GetEntityCardValues(deck, set1, "NODE")
node_ids += [int(value) for value in card_values]
print(node_ids)
```
这段代码首先通过 `CollectEntities` 方法获取所有类型为 "SET" 的实体,然后遍历这些实体,找到 `undefined_sets` 集合中的 SET 实体。接着,使用 `GetEntityCardValues` 方法获取每个 SET 实体中的 NODE 实体的值,并将其添加到 `node_ids` 列表中。最后,打印 `node_ids` 列表。
阅读全文