Skip to content

Latest commit

 

History

History
executable file
·
75 lines (58 loc) · 2.33 KB

NodeBox_Platform.md

File metadata and controls

executable file
·
75 lines (58 loc) · 2.33 KB
layout
page

Het NodeBox platform vormt de basis waarop NodeBox en z'n toepassingen worden geschreven.

De huidige versie van NodeBox heeft ernstige tekortkomingen qua snelheid, vooral voor interactieve toepassingen. Dit vereist serieuze aanpassingen in de architectuur. Daarom is het interessant van alle mogelijkheden eens te bekijken.

Vereisten

  • Python code editor met syntax coloring en "the throttle"
  • Grafische mogelijkheden:
    • Primitives (rect, oval)
    • Paths
    • Text
    • Color (graytones, RGB, HSB, CMYK)
    • Clipping
  • Animatie
  • Interactiviteit
  • Export naar PDF en QuickTime

Daarnaast een aantal want-to-haves:

  • Cross-platform renderer
  • Cross-platform editor

Oplossingen

De volgende oplossingen werden voorgesteld:

Cocoa + PyObjC + Python (Business as Usual)

Verderzetting van de bestaande NodeBox.

  • (+) We kunnen alle bestaande code houden
  • (+) We kunnen steunen op Mac OS technologieëen als Core Graphics en Core Animation
  • (-) Draait enkel op Mac OS X, dus geen server versie mogelijk

Java + Jython

Verderzetting van wat momenteel "NodeBox 2" is in puur Java

  • (+) We kunnen de bestaande, substantiële codebase van NodeBox 2 gebruiken
  • (+) Cross-platform, dus een Windows-versie (wordt nu al gebruikt) en een server versie (bekijk de screencast)
  • (-) Jython is verouderd t.o.v. Python en slecht onderhouden
  • (-) Lijkt niet op een native applicatie op Mac OS X
  • (-) Geen ondersteuning voor Mac OS technologieëen

Processing + Jython

  • (+) We bouwen verder op een heel successvol open-source project
  • (-) Tekstmogelijkheden ontbreken
  • (-) Jython is verouderd t.o.v. Python en slecht onderhouden

OpenGL + Python

  • (+) Snelheid
  • (+) Veel flexibiliteit in de uitvoering
  • (+) Cross-platform editor en renderer
  • (+) Allerlei effecten mogelijk
  • (-) We moeten heel veel code terug "uitvinden"
  • (-) Ziet er niet native uit op Mac OS X, maar kan er wel heel goed uitzien