Archive for the ‘usage’ Category

Processing.js v0.9.6 Released

Monday, July 26th, 2010

Download Processing.js 0.9.6

We are very pleased to announce the release of Processing.js 0.9.46!

The new 0.9.6 release is now available for download on the GitHub repository. This release encompasses an early implementation of loading and displaying SVG (Scalable Vector Graphics) shapes. It also includes additional 3D features such as hint() and background transparency. For the optimization enthusiasts, we optimized our code by removing recursion and removing temporary variables where possible.

Get involved!

If you would like to get involved with Processing.js development, or have general usage questions about Processing.js, we would love meet you on IRC: irc://irc.mozilla.org/processing.js You can also get involved by helping with the testing or documentation phase. We are desperately seeking help with documentation.

ChangeLog

  • Added PConstants Object
  • Added PShape
  • Added hint() - 3D
  • Added ArrayList add(int index, Object value)
  • Added ArrayList set(index, value)
  • Added shape()
  • Added shapeMode()
  • Added loadShape()
  • Added createGraphics() 3D support
  • Added transparent backgrounds 3D support
  • Added transparency directive to fix Moving On Curves example
  • Added “IMAGE” to the global members array
  • Added createFont()
  • Added size() default width and height
  • Added textAlign()
  • Added pause-on-blur/focus for draw() and @pjs directive to reduce cpu usage
  • Added textWidth() 3D
  • Fixed tinylogLite so it doesn’t slows down frame rate
  • Fixed ajax() to check whether the data request was successful
  • Fixed point does not render after text()
  • Fixed ref tests broken on file:/// uri
  • Fixed 2D ref tests
  • Fixed p.splice
  • Fixed exit() to remove the instance from the “Processing.instances”
  • Fixed loading remote images security errors
  • Fixed extra argument bug for a parseFloat line
  • Fixed use of .moz  attributes
  • Fixed p.arrayCopy()
  • Fixed smooth and noSmooth
  • Fixed strokeWeight for 2d point
  • Fixed keyCode is not defined parser error
  • Fixed parser errors when semicolon is missed
  • Fixed parser bug on cast with space: (type) (something)
  • Remove all occurances of typeof obj === ‘undefined’
  • Optimized performance by removing recursive calls when possible
  • Optimized p.expand()
  • Optimized p.parse(), introduce p.compile()
  • Updated ref test runner for 3D tests
  • Removed unnecessary whitespace from processing.js

Processing.js v0.9.4 Released

Wednesday, June 16th, 2010

Download Processing.js 0.9.4

We are very pleased to announce the release of Processing.js 0.9.4!

The new 0.9.4 release is now available for download on the GitHub repository. This release features a brand new lightweight parser that improves flexibility.  But thats not all. We have added a lot of 3D features and are NOW supporting textures.  Check out the newly added crisp @pjs directive for crisp lines and points.  Of course performance is always on the top of our list, we are proud to say that processing.js is now faster than ever!

Get involved!

If you would like to get involved with Processing.js development, or have general usage questions about Processing.js, we would love meet you on IRC: irc://irc.mozilla.org/processing.js You can also get involved by helping with the testing or documentation phase. We are desperately seeking help with documentation.

ChangeLog

  • Added ellipse() 3D
  • Added curvevertex() 3D
  • Added curve() 3D
  • Added rect() 3D
  • Added bezier() 3D
  • Added bezierVertex() 3D
  • Added text() 3D
  • Added curveDetail()
  • Added bezierDetail()
  • Added strokeWeight() and point()
  • Added filter()
  • Added PImage: filter prototype “pimage filter”
  • Added PImage: save prototype “pimage save”
  • Added PImage 0 argument constructor
  • Added filter MODEs for p.filter() and PImage.filter()
  • Added textureMode()
  • Added texture()
  • Added texture support
  • Added ArrayList.toArray
  • Added save()
  • Added XMLElement type
  • Added textWidth()
  • Added status()
  • Added a new lightweight parser
  • Added unit tests for new parser
  • Added a .version property
  • Added unit test for binary()
  • Added support for getting a reference to a Processing object “processing reference”
  • Added key/keyCode argument for keyReleased
  • Added call to draw() in setup if translate is called
  • Added file:/// uri support for running ref tests
  • Added crisp @pjs directive for crisp lines and points
  • Added a test coverage tool that provides simple way to check code coverage during unit/parser testing
  • Fixed pimage.get(x,y,w,h)
  • Fixed p.set() performance to increase speed
  • Fixed text() performance by removing unnecessary type conversions
  • Fixed p.text accepts null input, this causes an error
  • Fixed binary() to support all primitive datatypes including arrays
  • Fixed unbinary() to support all primitive datatypes including arrays
  • Fixed unhex() to support all primitive datatypes including arrays
  • Fixed shaders to take in color attribute for individual vertices
  • Fixed loadFont() to handle font with spaces in name
  • Fixed mouseX/mouseY are not computed with style.border taken into account
  • Fixed “p.mousePressed is not a function” error when clicking on a canvas that did not define it
  • Fixed mousePressed fails when mousePressed() is defined
  • Fixed keyCode is undefined in sketches
  • Fixed p.color - optimizations
  • Fixed parser to handle sketch code pixels = new color[]
  • Fixed parser so that vars which conflict with function names use constant naming convention
  • Fixed parser to allow “Code” in a single line comment
  • Fixed parser inheritance problems with variables
  • Fixed Processing.debug
  • Fixed PImage examples with Frame Rate
  • Fixed all functions that rely on p.vertex
  • Fixed Chrome error for Win that appeared when image() was used chrome
  • Fixed functions to allow Chromium to render 3D sketches
  • Fixed Reference test script
  • Fixed init.js fails to load sketch into targetted canvas
  • Removed dead code: Point

Processing.js v0.7.1 Released

Friday, March 26th, 2010

Download Processing.js 0.7

We are very pleased to announce the release of Processing.js 0.7.1!

The students at Seneca and the community at large, have been working hard to get some awesome code into the repository. After the release of 0.7 we realized that our implementation of mouse wheel support actually broke the whole script in Chrome/Safari. We ask that anyone that downloaded the 0.7 release upgrade to 0.7.1 as soon as possible.

Get involved!

If you would like to get involved with Processing.js development, or have general usage questions about Processing.js, we would love meet you on IRC: irc://irc.mozilla.org/processing.js

ChangeLog

  • Fixed mouse scrolled event for Chrome/Safari

Processing.js v0.7.0 Released

Wednesday, March 24th, 2010

Download Processing.js 0.7

We are very pleased to announce the release of Processing.js 0.7!

The students at Seneca and the community at large, have been working hard to get some awesome code into the repository. Many smaller fixes and features have been added. Some exiting addition to the implementation include PImage with asynchronous image loading, reference (ref) tests, and lighting.

Get involved!

If you would like to get involved with Processing.js development, or have general usage questions about Processing.js, we would love meet you on IRC: irc://irc.mozilla.org/processing.js

ChangeLog

  • Added custom @pjs directive parser
  • Added endCamera()
  • Added beginCamera()
  • Added custom mouseScrolled event
  • Added requestImage()
  • Added byte()
  • Added split()
  • Added PImage
  • Added String.toCharArray()
  • Added long data type
  • Added ArrayList.contains()
  • Added curveVertex() 3D
  • Added dist() 3D
  • Added curve() 3D
  • Added ambientLight()
  • Added curveDetail()
  • Added createImage()
  • Added noLights()
  • Added loadImage() preloading
  • Added directionalLight
  • Added Hashmap
  • Added loadBytes()
  • Added pointLight()
  • Added text()
  • Fixed date()
  • Fixed month()
  • Fixed failing PMatrix3D tests
  • Fixed _checkEquals() to add epsilon value
  • Fixed String.prototype.equals
  • Fixed background() for PImage support
  • Fixed image() for PImage support
  • Fixed set() for PImage support
  • Fixed parser test runner bug
  • Fixed parsing of tab characters
  • Fixed parsing of array declarations with spaces
  • Fixed parsing of multiple catch blocks
  • Fixed get() for PImage support
  • Fixed Char to properly distinguish Char from numbers/strings
  • Fixed Rhino parsing of processing.js
  • Fixed parser/unit tests to work on Windows
  • Fixed arrayCopy()
  • Fixed box()
  • Fixed min(), max() error handling for invalid arguments
  • Fixed bug in seneca/hex example
  • Fixed background() 3D when called outside of draw()
  • Fixed link() to respect target
  • Removed invalid tests
  • Switched from Packer to YUI Compressor
  • Build system improvements for release, testing
  • Added Automated Ref Tests

Processing.js v0.6.0 Released

Friday, February 26th, 2010

Download Processing.js 0.6

We are very pleased to announce the release of Processing.js 0.6!

The students at Seneca and the community at large, have been working hard to get some awesome code into the repository. Many smaller fixes and features have been added. However, the most exiting addition is the implementation of 3D functions like sphere, line, fill and stroke. Also, we have set up OpenGrok to enable easy searching of the Java Processing.

Get involved!

If you would like to get involved with Processing.js development, or have general usage questions about Processing.js, we would love meet you on IRC: irc://irc.mozilla.org/processing.js

ChangeLog

  • Added ellipseMode support ellipse
  • Added a way to specify tests that are known to fail
  • Added applyMatrix()
  • Added float() suppose to work on all primitive datatypes including arrays
  • Added char() suppose to work on all primitive datatypes including arrays
  • Added str() suppose to work on all primitive datatypes including arrays
  • Added normal()
  • Added modelZ()
  • Added modelX()
  • Added modelY()
  • Added sphere()
  • Added sphereDetail()
  • Added scale()
  • Added line() - 3D
  • Added fill() - 3D
  • Added noFill() - 3D
  • Added noStroke() - 3D
  • Added stroke() - 3D
  • Added PMatrix3D - remaining functions
  • Added P3D support
  • Added tinylog for println() println
  • Added automated tests: string parsing
  • Fixed loadImage()to work in Opera
  • Fixed fake-dom to work with println and tinylog
  • Fixed KNOWN-FAILURES for tinylog parsing
  • Fixed and updated the AUTHORS log
  • Fixed Parse Error: Does not like strings in the format “test test, test test, …”
  • Fixed Rename zip file for make release
  • Fixed keyCodes for numbered keys return same values as some letter keys
  • Fixed Test harness _checkEqual does not compare “undefined”
  • Fixed automated tests: make check-one path not resolving
  • Fixed Example: examples/basic.displaying.html incorrect source code “loadimage example bug”
  • Setup an OpenGrok instance infrastructure

Processing.js v0.5.0 Released

Wednesday, February 17th, 2010

Download Processing.js 0.5

We are very pleased to announce the release of Processing.js 0.5!

The students at Seneca and the community at large, have been working hard to get some awesome code into the repository. Many smaller fixes and features have been added. However, the most exiting addition is the implementation of camera functions and a more complete 3D foundation that is now able to render and rotate a box.

Linting

From 0.4 onwards, release code is being linted, beautified and packed before release using some excellent script-fu from David Humprey and tested by fellow release controller (and GitHub master) Corban Brook. This way we will be confident that new releases do not break old functionality, code will be lightweight, ready for deployment and be easier-on-the-eye for future developers.

Get involved!

If you would like to get involved with Processing.js development, or have general usage questions about Processing.js, we would love meet you on IRC: irc://irc.mozilla.org/processing.js

ChangeLog:

  • Added acos()
  • Added asin()
  • Added atan()
  • Added automated tests for parser
  • Added bezierTangent()
  • Added binary()
  • Added box()
  • Added camera()
  • Added constants MAX_FLOAT, MIN_FLOAT, MAX_INT, MIN_INT
  • Added curve()
  • Added exp()
  • Added frustum()
  • Added hex()
  • Added join()
  • Added log()
  • Added ortho()
  • Added perspective()
  • Added PMatrix3D()
  • Added printProjection()
  • Added project packaging automation infrastructure
  • Added nf()
  • Added rotateX()
  • Added rotateY()
  • Added rotateZ()
  • Added sort()
  • Added support for Processing based unit tests
  • Added tan()
  • Added trim()
  • Added uniformf()
  • Added uniformi()
  • Added uniformMatrix()
  • Added vertexAttribPointer()
  • Added 3D Matrix Stack Object
  • Added “str1″.equals(”str2″) function
  • Fixed array handling of int()
  • Fixed automated tests to work for large numbers of files
  • Fixed buildImageObject()
  • Fixed char c = ‘#;’
  • Fixed context menu blocking to be explicitly requested
  • Fixed curveVertex()
  • Fixed data-src
  • Fixed duplicate function errors and reserved keywords
  • Fixed import()
  • Fixed inconsistent mouse event semantics
  • Fixed keyCode RIGHT
  • Fixed last p.keyCode not to fire for every keyPress
  • Fixed min() and max() functions to take more than two arguments
  • Fixed noLoop() & loop()
  • Fixed parser whitespace bug in variable names
  • Fixed parsing of Java import statement
  • Fixed parsing of String content
  • Fixed rotate()
  • Fixed size() for 3D
  • Fixed Test harness _checkEqual to compare arrays
  • Fixed Test harness _checkEqual to compare NaN
  • Fixed test reporting for summary case
  • Fixed text(); added cross browser support, added primitive datatypes support
  • Tested parser for processing larger code samples

Run an External Processing.js Sketch

Wednesday, November 11th, 2009

It is very easy to load an external sketch with Processing.js. How easy?

Two lines easy!

 <script src="processing.min.js"></script>
 <canvas datasrc="init-example.pjs" width="200" height="200"></canvas>

Try this code

1) Include the “processing.js” JavaScript file.
2) Use the datasrc attribute to specify which Processing sketch you want to load.

This way the sketch is loaded using AJAX, so for security reasons you cannot run cross domain scripts.