CARVIEW |
Every repository with this icon (

Every repository with this icon (

Description: | A wrapper for Processing in Clojure. edit |
Homepage: | edit |
Public Clone URL: |
git://github.com/rosado/clj-processing.git
Give this clone URL to anyone.
git clone git://github.com/rosado/clj-processing.git
|
Your Clone URL: |
Use this clone URL yourself.
git clone git@github.com:rosado/clj-processing.git
|
name | age | message | |
---|---|---|---|
![]() |
CPL.TXT | Mon Sep 08 10:39:56 -0700 2008 | Added CPL license file. [rosado] |
![]() |
README.markdown | Mon Aug 03 10:22:43 -0700 2009 | Removed mouse-*, pmouse-* functions since they ... [rosado] |
![]() |
build.xml | Mon Jul 20 12:36:13 -0700 2009 | Sources now in src/ [rosado] |
![]() |
examples/ | Sun Mar 29 11:34:15 -0700 2009 | Removed unused imports [rosado] |
![]() |
src/ | Sun Aug 16 12:16:41 -0700 2009 | Added update-pixels [rosado] |
Processing for Clojure
This lib is a wrapper for the Processing project. Mixture of Clojure and Processing enables you to do live-coding and experiment easily.
Most of the function are covered; some have a slightly different name than in Java (partly because Clojure is confused by methods of the same arity but different argument types). Most of the constants are accessible.
How To Use It?
Add your core.jar
file from the Processing installation to your
CLASSPATH.
To use the OpenGL features, you also have to add gluegen-rt.jar
,
jogl.jar
and opengl.jar
from the
$PROCESSING_DIR/libraries/opengl/library
. You also need to pass the
argument:
-Djava.library.path=`$PROCESSING_DIR/libraries/opengl/library
to the JVM.
Then, create a JAR by running ant
and also add the resulting file to
your CLASSPATH.
Examples
The examples
directory contains a simple script to get you going.
COMMON ISSUES
clj-procesing may not work if you're using add-classpath
to put the
Processing jars into your CLASSPATH. Please, use a "proper" way to set
up your CLASSPATH (eg. with a special script like the clj
on Clojure Wiki)
If your're using Clojure's proxy
macro, you'll have to define the
mouse handling methods to take one argument (which is just an instance
of java.awt.event.MouseEvent class) and get all needed information
(like mouse position etc) from that object. Also, accessing instance
fields of the PApplet class from within proxy doesn't work.
TODO
- docstrings
- include remaining constants