本文整理汇总了Python中openalea.core.node.Node.get_ad_hoc_dict方法的典型用法代码示例。如果您正苦于以下问题:Python Node.get_ad_hoc_dict方法的具体用法?Python Node.get_ad_hoc_dict怎么用?Python Node.get_ad_hoc_dict使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类openalea.core.node.Node
的用法示例。
在下文中一共展示了Node.get_ad_hoc_dict方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: test_dataflow_state_get_data
# 需要导入模块: from openalea.core.node import Node [as 别名]
# 或者: from openalea.core.node.Node import get_ad_hoc_dict [as 别名]
def test_dataflow_state_get_data():
df = DataFlow()
vid1 = df.add_vertex()
pid10 = df.add_in_port(vid1, "in")
pid11 = df.add_out_port(vid1, "out")
vid2 = df.add_vertex()
pid21 = df.add_out_port(vid2, "out")
vid5 = df.add_vertex()
pid51 = df.add_out_port(vid5, "out")
vid3 = df.add_vertex()
pid31 = df.add_in_port(vid3, "in1")
pid32 = df.add_in_port(vid3, "in2")
pid33 = df.add_out_port(vid3, "res")
vid4 = df.add_vertex()
pid41 = df.add_in_port(vid4, "in")
df.connect(pid11, pid31)
df.connect(pid21, pid32)
df.connect(pid33, pid41)
df.connect(pid51, pid32)
dfs = DataflowState(df)
for pid in df.ports():
assert_raises(KeyError, lambda: dfs.get_data(pid))
for i, pid in enumerate([pid11, pid21, pid33, pid51]):
dfs.set_data(pid, i)
assert_raises(KeyError, lambda: dfs.get_data(pid10))
dfs.set_data(pid10, 'a')
assert dfs.get_data(pid10) == 'a'
for i, pid in enumerate([pid11, pid21, pid33, pid51]):
assert dfs.get_data(pid) == i
assert dfs.get_data(pid31) == 0
assert tuple(dfs.get_data(pid32)) == (1, 3)
assert dfs.get_data(pid41) == 2
n2 = Node()
df.set_actor(vid2, n2)
assert tuple(dfs.get_data(pid32)) == (1, 3)
n5 = Node()
df.set_actor(vid5, n5)
assert tuple(dfs.get_data(pid32)) == (1, 3)
n2.get_ad_hoc_dict().set_metadata('position', [10, 0])
n5.get_ad_hoc_dict().set_metadata('position', [0, 0])
assert tuple(dfs.get_data(pid32)) == (3, 1)