Ich möchte eine Knoten-Schnittstelle implementieren, ein im Grunde DAG wobei jeder Knoten auf es Eingangsanschlüsse eine Operation durchführt, und gibt etwas (die Sie an einen anderen Knoten verbinden kann)Implementierung einer node-basierten grafischen Oberfläche?
Einige Beispielanwendungen:
- Apples "Shake" - screenshot
- The Foundrys "Nuke"-screenshot
- MindNode - screenshot
- vvvv-screenshots
- Quartz Composer - screenshot
Als erstes Ziel, würde Ich mag eine grafische Anwendung mit nur zwei Knoten haben. Eine "Nummer", die einfach eine feste Zahl ausgibt, und ein "Add" -Knoten, der zwei Eingaben nimmt und die Summe der beiden ausgibt.
Da die Menschen so weit beantwortet haben, ich habe eine ungefähre Vorstellung davon, wie die Daten in Code repräsentieren, zum Beispiel in Python'y suchen Pseudo-Code:
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()
Wie würde ich über Verpackung bekam eine benutzerdefinierte GUI um dies? Etwas wie das Folgende, aber etwas weniger von Hand gezeichnet!
Wo soll ich anfangen? Ich plane derzeit, es in Objective-C/Cocoa zu schreiben, obwohl ich mehr als offen für Vorschläge für andere Sprachen bin.
Willkommen bei Stackoverflow, Dank für den Wunsch, mit Links zu tragen, aber Antworten nur abgeraten werden. Bitte lesen Sie die [Antwortrichtlinien] (https://stackoverflow.com/help/how-to-answer). Eine gute Faustregel ist, Ihre Antwort ohne den Link zu betrachten, und wenn sie wenig bis keinen Wert bietet, sollten Sie eine Erweiterung in Erwägung ziehen. – JaredMcAteer