我想实现一个节点接口,基本上是一个DAG,每个节点在它的输入连接上执行操作,并输出一些东西(你可以连接到另一个节点)
一些示例应用:
Apples"Shake" - 截图
The Foundrys"Nuke" - 截图
MindNode - 截图
vvvv - 截图
Quartz Composer - 截图
作为第一个目标,我想拥有一个只有2个节点的图形应用程序.一个简单输出一个固定数字的"数字"和一个"加"节点,它取两个输入并输出两者之和.
正如人们已经回答的那样,我对如何在代码中表示数据有一个粗略的想法,例如在Python中寻找伪代码:
class Number: def __init__(self, value): self.value = value def eval(self): return self.value class Add: def __init__(self, input1, input2): self.input1 = input1 self.input2 = input2 def eval(self): return self.input1.eval() + self.input2.eval() a = Number(20) b = Number(72) adder = Add(a, b) print adder.eval()
我如何围绕此包装自定义GUI?像下面的东西,但略少手绘!
我从哪里开始?我目前打算用Objective-C/Cocoa编写它,尽管我对其他语言的建议不仅仅是开放的.