一些程序(如声音合成、过程纹理生成等)通过图形编辑器给予用户完全自由地安排程序的各种功能能力。用户可以放置一个或多个“节点”(每个节点代表某种从一个或多个输入生成一个或多个输出的函数),并以任何希望的方式将它们连接在一起,以生成最终输出。
我想知道这种软件在必要数据结构方面的最佳表示方式,无论是对于生成系统本身还是对于其图形表示。我特别困惑于如何模拟节点输入和输出可能具有不同数据类型的事实,并且根据节点类型只有一些可能有效。
因此,如何建模:
- 节点输入/输出值 - 节点本身(继承?)及其连接 - 从起始节点到输出节点传播的生成过程
我想知道这种软件在必要数据结构方面的最佳表示方式,无论是对于生成系统本身还是对于其图形表示。我特别困惑于如何模拟节点输入和输出可能具有不同数据类型的事实,并且根据节点类型只有一些可能有效。
因此,如何建模:
- 节点输入/输出值 - 节点本身(继承?)及其连接 - 从起始节点到输出节点传播的生成过程
boost::graph
库。 - mark