GeoGraphy: Startup

The discussed documents are related to GeoGraphy, a system for algorithmic composition based on graphs, developed by andrea valle (andrea.valle@unito.it).

Some (old) infos are here under:

http://www.cirma.unito.it/andrea/geoGraphy/

Requirements

GeoGraphy has been tested under MacOSX 10.4, with SC 3.1. It uses SwingOSC 0.56.

The core is platform indepedent and GUI pattern is used (but at the moment works properly only with SwingOSC): it is highly unprobable that you can have it working properly with other setups.

So, please start working by evaluating this:

GUI.swing ;

Other issues

Due to event message traffic it can happent that the default scheduler queue size of TempoClock (which is used by GeoGraphy) is not large enough.

In that case SC can complain with a scheduler queue is full message. The solution is to increase the queue size. Open class def (from Lang menu) of TempoClock and in the *new method increase queueSize which is by default 256. I am using queueSize=65536.

Documentation

You can proceed in the documentation following:

1. GeoGraphyIntro

2. GeoGraphyStructure

2. GeoGraphyAudio

4. GeoGraphyGrammar

Then, help files related to classes are obviously available.

Screenshots

The following screenshot shows the Painter (Grand Verre), the GraphParser interface (God bless Nim Cimpsky), the Runner interface (The Parallax View). Post window is resized and its color scheme is customized.

Licence et al.

GeoGraphy is licensed as SuperCollider under GPL. Indeed, use at your own risk.

Bugs and ToDo List

- GUI
- Actually GUI does not work properly with Cocoa.
- - the GraphParser GUI is messy
- - curveto called on drawHook in the Painter raises an exception
- GraphParser
- - a exception catching mechanism should be studied so that no errors would prevent the parser from working
- - s+ without a set IOPath raises an error
- - a log mechanism (which is partially present) should be developed so to record a time-stamped sequence of iXno messages for archiving/NRT rendering
- - some new commands would be interesting: e.
- tow+ dur id/name: generate from all vertices an edge to id/name.
- circ+ dur id/name id/name ... id/name: generate a circuit woth unitary dur between adjacent vertices.
- Painter
- - the absence of arrows is a big trouble
- - moving the vertices via mouse raises a set error message, even if the behaviour is the expected one
- - setting background of vertices sometimes raises an error
- - vertex label updating (i.e. when the actant is passing) should be made optional (it sucks a lot of cpu)
- GeoAudio
- The mechanism in iteself is still very primitive. A better exploitation of server structure is needed.