Education/Projects/ProcessingForTheWeb/Tasks: Difference between revisions
< Education | Projects | ProcessingForTheWeb
Jump to navigation
Jump to search
Line 298: | Line 298: | ||
! Who's working on it. | ! Who's working on it. | ||
! STATUS | ! STATUS | ||
! Difficulty | |||
|- | |- | ||
| delay() | | delay() | ||
Line 303: | Line 304: | ||
| | | | ||
| | | | ||
| Difficult | |||
|- | |- | ||
| popStyle() | | popStyle() | ||
Line 308: | Line 310: | ||
| | | | ||
| | | | ||
| Difficult | |||
|- | |- | ||
| private | | private | ||
Line 313: | Line 316: | ||
| | | | ||
| | | | ||
| | |||
|- | |- | ||
| pushStyle() | | pushStyle() | ||
Line 318: | Line 322: | ||
| | | | ||
| | | | ||
| Difficult | |||
|- | |- | ||
| cursor() | | cursor() | ||
Line 323: | Line 328: | ||
| | | | ||
| | | | ||
| Medium | |||
|- | |- | ||
| focused | | focused | ||
Line 328: | Line 334: | ||
| | | | ||
| | | | ||
| Easy | |||
|- | |- | ||
| noCursor() | | noCursor() | ||
Line 333: | Line 340: | ||
| | | | ||
| | | | ||
| Easy | |||
|- | |- | ||
| online | | online | ||
Line 338: | Line 346: | ||
| | | | ||
| | | | ||
| Easy | |||
|- | |- | ||
| screen | | screen | ||
Line 343: | Line 352: | ||
| | | | ||
| | | | ||
| Easy | |||
|- | |- | ||
| long | | long | ||
Line 348: | Line 358: | ||
| | | | ||
| | | | ||
| Medium | |||
|- | |- | ||
| Hashmap | | Hashmap | ||
Line 353: | Line 364: | ||
| | | | ||
| | | | ||
| Medium | |||
|- | |- | ||
| XMLElement | | XMLElement | ||
Line 358: | Line 370: | ||
| | | | ||
| | | | ||
| Medium | |||
|- | |- | ||
| binary() | | binary() | ||
Line 363: | Line 376: | ||
| | | | ||
| | | | ||
| Medium | |||
|- | |- | ||
| boolean() | | boolean() | ||
| | | | ||
| | | | ||
| | | | ||
| Easy | |||
|- | |- | ||
| hex() | | hex() | ||
Line 373: | Line 388: | ||
| | | | ||
| | | | ||
| Easy | |||
|- | |- | ||
| unbinary() | | unbinary() | ||
Line 378: | Line 394: | ||
| | | | ||
| | | | ||
| Medium | |||
|- | |- | ||
| unhex() | | unhex() | ||
| | | | ||
| | |||
| | | | ||
| Easy | |||
| | | | ||
|- | |- | ||
Line 388: | Line 407: | ||
| | | | ||
| | | | ||
| Easy | |||
|- | |- | ||
| match() | | match() | ||
Line 393: | Line 413: | ||
| | | | ||
| | | | ||
| Medium | |||
|- | |- | ||
| matchAll() | | matchAll() | ||
Line 398: | Line 419: | ||
| | | | ||
| | | | ||
| Medium | |||
|- | |- | ||
| nfc() | | nfc() | ||
Line 403: | Line 425: | ||
| | | | ||
| | | | ||
| Easy | |||
|- | |- | ||
| nfp() | | nfp() | ||
Line 408: | Line 431: | ||
| | | | ||
| | | | ||
| Easy | |||
|- | |- | ||
| nfs() | | nfs() | ||
Line 413: | Line 437: | ||
| | | | ||
| | | | ||
| Easy | |||
|- | |- | ||
| trim() | | trim() | ||
Line 418: | Line 443: | ||
| | | | ||
| | | | ||
| Easy | |||
|- | |- | ||
| split() | | split() | ||
Line 423: | Line 449: | ||
| | | | ||
| | | | ||
| Easy | |||
|- | |- | ||
| splitTokens() | | splitTokens() | ||
Line 428: | Line 455: | ||
| | | | ||
| | | | ||
| Easy | |||
|- | |- | ||
| append() | | append() | ||
Line 433: | Line 461: | ||
| | | | ||
| | | | ||
| Easy | |||
|- | |- | ||
| arrayCopy() | | arrayCopy() | ||
Line 438: | Line 467: | ||
| | | | ||
| | | | ||
| Easy | |||
|- | |- | ||
| concat() | | concat() | ||
Line 443: | Line 473: | ||
| | | | ||
| | | | ||
| Easy | |||
|- | |- | ||
| expand() | | expand() | ||
Line 448: | Line 479: | ||
| | | | ||
| | | | ||
| Easy | |||
|- | |- | ||
| reverse() | | reverse() | ||
Line 453: | Line 485: | ||
| | | | ||
| | | | ||
| Easy | |||
|- | |- | ||
| shorten() | | shorten() | ||
Line 458: | Line 491: | ||
| | | | ||
| | | | ||
| Easy | |||
|- | |- | ||
| sort() | | sort() | ||
Line 463: | Line 497: | ||
| | | | ||
| | | | ||
| Easy | |||
|- | |- | ||
| splice() | | splice() | ||
Line 468: | Line 503: | ||
| | | | ||
| | | | ||
| Easy | |||
|- | |- | ||
| subset() | | subset() | ||
Line 473: | Line 509: | ||
| | | | ||
| | | | ||
| Easy | |||
|- | |- | ||
| PShape() | | PShape() | ||
Line 478: | Line 515: | ||
| | | | ||
| | | | ||
| Difficult | |||
|- | |- | ||
| bezierDetail() | | bezierDetail() | ||
Line 483: | Line 521: | ||
| | | | ||
| | | | ||
| Difficult (While the math may be easy enough, it would be nice to have the browser handle this at the machine code level. Help from Fx dev team, new functionality please)? | |||
|- | |- | ||
| bezierPoint() | | bezierPoint() | ||
Line 488: | Line 527: | ||
| | | | ||
| | | | ||
| Difficult (While the math may be easy enough, it would be nice to have the browser handle this at the machine code level. Help from Fx dev team, new functionality please)? | |||
|- | |- | ||
| bezierTangent() | | bezierTangent() | ||
Line 493: | Line 533: | ||
| | | | ||
| | | | ||
| Difficult (While the math may be easy enough, it would be nice to have the browser handle this at the machine code level. Help from Fx dev team, new functionality please)? | |||
|- | |- | ||
| curveDetail() | | curveDetail() | ||
Line 498: | Line 539: | ||
| | | | ||
| | | | ||
| Difficult (While the math may be easy enough, it would be nice to have the browser handle this at the machine code level. Help from Fx dev team, new functionality please)? | |||
|- | |- | ||
| curvePoint() | | curvePoint() | ||
Line 503: | Line 545: | ||
| | | | ||
| | | | ||
| Difficult (While the math may be easy enough, it would be nice to have the browser handle this at the machine code level. Help from Fx dev team, new functionality please)? | |||
|- | |- | ||
| curveTangent() | | curveTangent() | ||
Line 508: | Line 551: | ||
| | | | ||
| | | | ||
| Difficult (While the math may be easy enough, it would be nice to have the browser handle this at the machine code level. Help from Fx dev team, new functionality please)? | |||
|- | |||
| curveTightness() | |||
| | |||
| | |||
| | |||
| Difficult (ALREADY IN PJS, BUT.... it would be nice to have the browser handle this at the machine code level. Help from Fx dev team, new functionality please)? | |||
|- | |- | ||
| noSmooth() | | noSmooth() | ||
Line 513: | Line 563: | ||
| | | | ||
| | | | ||
| Difficult (Another thing that would be nice if the Fx dev. team could provide this functionality) | |||
|- | |- | ||
| strokeCap() | | strokeCap() | ||
Line 518: | Line 569: | ||
| | | | ||
| | | | ||
| Medium | |||
|- | |- | ||
| strokeJoin() | | strokeJoin() | ||
Line 523: | Line 575: | ||
| | | | ||
| | | | ||
| Medium | |||
|- | |- | ||
| texture() | | texture() | ||
Line 528: | Line 581: | ||
| | | | ||
| | | | ||
| Difficult | |||
|- | |- | ||
| textureMode() | | textureMode() | ||
Line 533: | Line 587: | ||
| | | | ||
| | | | ||
| Difficult | |||
|- | |- | ||
| loadShape() | | loadShape() | ||
Line 538: | Line 593: | ||
| | | | ||
| | | | ||
| Difficult | |||
|- | |- | ||
| shape() | | shape() | ||
Line 543: | Line 599: | ||
| | | | ||
| | | | ||
| Difficult | |||
|- | |- | ||
| shapeMode() | | shapeMode() | ||
Line 548: | Line 605: | ||
| | | | ||
| | | | ||
| Difficult | |||
|- | |- | ||
| createInput() | | createInput() | ||
Line 553: | Line 611: | ||
| | | | ||
| | | | ||
| Difficult | |||
|- | |- | ||
| loadBytes() | | loadBytes() | ||
Line 558: | Line 617: | ||
| | | | ||
| | | | ||
| Medium | |||
|- | |- | ||
| open() | | open() | ||
Line 563: | Line 623: | ||
| | | | ||
| | | | ||
| Impossible? | |||
|- | |- | ||
| selectFolder() | | selectFolder() | ||
Line 568: | Line 629: | ||
| | | | ||
| | | | ||
| Impossible? | |||
|- | |- | ||
| selectInput() | | selectInput() | ||
Line 573: | Line 635: | ||
| | | | ||
| | | | ||
| Impossible? | |||
|- | |- | ||
| param() | | param() | ||
Line 578: | Line 641: | ||
| | | | ||
| | | | ||
| Medium | |||
|- | |- | ||
| status() | | status() | ||
Line 583: | Line 647: | ||
| | | | ||
| | | | ||
| Medium? | |||
|- | |- | ||
| save() | | save() | ||
Line 588: | Line 653: | ||
| | | | ||
| | | | ||
| Difficult | |||
|- | |- | ||
| saveFrame() | | saveFrame() | ||
Line 593: | Line 659: | ||
| | | | ||
| | | | ||
| Difficult | |||
|- | |- | ||
| PrintWriter | | PrintWriter | ||
| Saves text to file. | | Saves text to file. | ||
| | | | ||
| | |||
| Difficult | |||
| | | | ||
|- | |- | ||
Line 603: | Line 672: | ||
| | | | ||
| | | | ||
| Difficult | |||
|- | |- | ||
| beginRecord() | | beginRecord() | ||
Line 608: | Line 678: | ||
| | | | ||
| | | | ||
| Difficult | |||
|- | |- | ||
| createOutput() | | createOutput() | ||
Line 613: | Line 684: | ||
| | | | ||
| | | | ||
| Difficult | |||
|- | |- | ||
| createReader() | | createReader() | ||
Line 618: | Line 690: | ||
| | | | ||
| | | | ||
| Difficult | |||
|- | |- | ||
| createWriter() | | createWriter() | ||
Line 623: | Line 696: | ||
| | | | ||
| | | | ||
| Difficult | |||
|- | |- | ||
| endRaw() | | endRaw() | ||
Line 628: | Line 702: | ||
| | | | ||
| | | | ||
| Difficult | |||
|- | |- | ||
| endRecord() | | endRecord() | ||
Line 633: | Line 708: | ||
| | | | ||
| | | | ||
| Difficult | |||
|- | |- | ||
| saveBytes() | | saveBytes() | ||
Line 638: | Line 714: | ||
| | | | ||
| | | | ||
| Difficult | |||
|- | |- | ||
| saveStream() | | saveStream() | ||
| | | | ||
| | | | ||
| | | | ||
| Difficult | |||
|- | |- | ||
| saveStrings() | | saveStrings() | ||
Line 648: | Line 726: | ||
| | | | ||
| | | | ||
| Medium | |||
|- | |- | ||
| selectOutput() | | selectOutput() | ||
Line 653: | Line 732: | ||
| | | | ||
| | | | ||
| Difficult | |||
|- | |- | ||
| applyMatrix() | | applyMatrix() | ||
Line 658: | Line 738: | ||
| | | | ||
| | | | ||
| Difficult ( could return glMultMatrix()? ) | |||
|- | |- | ||
| printMatrix() | | printMatrix() | ||
Line 663: | Line 744: | ||
| | | | ||
| | | | ||
| Medium | |||
|- | |- | ||
| resetMatrix() | | resetMatrix() | ||
Line 668: | Line 750: | ||
| | | | ||
| | | | ||
| Medium | |||
|- | |- | ||
| blendColor() | | blendColor() | ||
Line 673: | Line 756: | ||
| | | | ||
| | | | ||
| Medium | |||
|- | |- | ||
| brightness() | | brightness() | ||
Line 678: | Line 762: | ||
| | | | ||
| | | | ||
| Medium | |||
|- | |- | ||
| hue() | | hue() | ||
Line 683: | Line 768: | ||
| | | | ||
| | | | ||
| Medium | |||
|- | |- | ||
| saturation() | | saturation() | ||
Line 688: | Line 774: | ||
| | | | ||
| | | | ||
| Medium | |||
|- | |- | ||
| PImage | | PImage | ||
Line 693: | Line 780: | ||
| | | | ||
| | | | ||
| Medium | |||
|- | |- | ||
| imageMode() | | imageMode() | ||
Line 698: | Line 786: | ||
| | | | ||
| | | | ||
| Medium | |||
|- | |- | ||
| noTint() | | noTint() | ||
Line 703: | Line 792: | ||
| | | | ||
| | | | ||
| Medium | |||
|- | |- | ||
| requestImage() | | requestImage() | ||
Line 708: | Line 798: | ||
| | | | ||
| | | | ||
| Medium | |||
|- | |- | ||
| blend() | | blend() | ||
Line 713: | Line 804: | ||
| | | | ||
| | | | ||
| Medium | |||
|- | |- | ||
| copy() | | copy() | ||
Line 718: | Line 810: | ||
| | | | ||
| | | | ||
| Medium | |||
|- | |- | ||
| filter() | | filter() | ||
Line 723: | Line 816: | ||
| | | | ||
| | | | ||
| Medium | |||
|- | |- | ||
| PGraphics | | PGraphics | ||
Line 728: | Line 822: | ||
| | | | ||
| | | | ||
| Medium-Difficult | |||
|- | |- | ||
| | | | ||
Line 738: | Line 833: | ||
| | | | ||
| | | | ||
| Difficult (Fx dev. & talk to Bespin guys) | |||
|- | |- | ||
| PVector | | PVector | ||
Line 743: | Line 839: | ||
| | | | ||
| | | | ||
| Difficult | |||
|- | |- | ||
| exp() | | exp() | ||
Line 748: | Line 845: | ||
| | | | ||
| | | | ||
| Easy | |||
|- | |- | ||
| log() | | log() | ||
Line 753: | Line 851: | ||
| | | | ||
| | | | ||
| Easy | |||
|- | |- | ||
| mag() | | mag() | ||
Line 758: | Line 857: | ||
| [http://asalga.wordpress.com asalga] | | [http://asalga.wordpress.com asalga] | ||
| | | | ||
| Easy | |||
|- | |- | ||
| map() | | map() | ||
Line 763: | Line 863: | ||
| | | | ||
| | | | ||
| Easy | |||
|- | |- | ||
| acos() | | acos() | ||
Line 768: | Line 869: | ||
| | | | ||
| | | | ||
| Easy | |||
|- | |- | ||
| asin() | | asin() | ||
Line 773: | Line 875: | ||
| | | | ||
| | | | ||
| Easy | |||
|- | |- | ||
| atan() | | atan() | ||
Line 778: | Line 881: | ||
| | | | ||
| | | | ||
| Easy | |||
|} | |} |
Revision as of 15:13, 25 September 2009
Summary
This page lists tasks to be done as part of the Processing For The Web project, in order to fully implement all of Processing in processing.js. The work is being led by David Humphrey and Al MacDonald, and done by students at Seneca College. You are welcome to join this work.
Task List
The following lists of Bugs, Features, and Functions was compiled by Al MacDonald.
Bugs
Bug | Description | Difficulty |
---|---|---|
variable + space + semicolon | Defining a variable such as "float y ;" with a space between the number and the semicolon can cause regex parsing errors. | Difficult |
// Comment | Using double slashed comments // at the end of any script will cause REGEX to loop on parsing, subsequently crashing browser. Quick solution is to add a blank line at the end of every script. | Difficult |
mouseX & mouseY | mouseX and mouseY are returned as incorrect values when the canvas is a child of a relative element. | Medium |
nf() | Using nf() on some numbers crashes FireFox. EG: String sf = nf(9.012, 3, 5); from http://processing.org/reference/color_datatype.html will not work. | Difficult |
keyCode, CODED, etc | Keyboard functions need fleshing out and cross-browser/cross-platform testing. | Medium |
The Angel Bug | When the regex parse encounters strings with a comma in, it parses the word before the comma as a variable. Work around is to escape strings... String myString = “this \, is a string”; But that is in no way ideal. More info: http://hyper-metrix.com/processing-js/docs/?page=Angels%20Weep | Difficult |
Drop frame system | A method to drop frames that are not drawn in time. This would be great for media-syncing if you want your app to stay in-time with audio and video. Not sure how plain-old JS timers will handle this... but it's worth testing | Medium |
Missing Features
This is a list of all the out-standing functions in the Processing.js implementation. A more detailed description of the unfinished functions can be found at: http://processingjs.org/reference. (Click “toggle all” to see the list.)
3D Features
Name | Description | Who's working on it. | STATUS | Difficulty |
---|---|---|---|---|
curve() | Need the 3rd dimension here. | Difficult | ||
box() | And here. | asalga | Difficult | |
sphere() | And here... | Difficult | ||
sphereDetail() | Yep... lots of 3D needed. | Difficult | ||
rotateX() | Done the math. Not implemented in in Processing.js. See: http://hascanvas.com/Disco for example. | Difficult | ||
rotateY() | Done the math. Not implemented in in PJS. Superior code welcome. | Difficult | ||
rotateZ() | Done the math. Not implemented in in PJS. Superior code welcome. | Difficult | ||
abientLight() | Difficult | |||
directionalLight() | Difficult | |||
lightFalloff() | ||||
lightSpecular() | Difficult | |||
lights() | Difficult | |||
noLights() | Difficult | |||
normal() | Done the math. Not implemented in in PJS. Superior code welcome. | Difficult | ||
pointLight() | Difficult | |||
spotLight() | Difficult | |||
beginCamera() | Difficult | |||
camera() | Difficult | |||
endCamera() | Difficult | |||
frustrum() | Done the math. Not implemented in in PJS. Superior code welcome. | Difficult | ||
ortho() | Difficult | |||
perspective() | Difficult | |||
printCamera() | ||||
printProjection() | Difficult | |||
modelX() | Difficult | |||
modelY() | ||||
modelZ() | Difficult | |||
screenX() | Difficult | |||
screenY() | Difficult | |||
screenZ() | Difficult | |||
ambient() | Difficult | |||
emissive() | Difficult | |||
shininess() | Difficult | |||
specular() | Difficult | |||
scale() | Only 2D implemented | Difficult | ||
rotate() | Only 2D implemented | Difficult | ||
translate() | Only 2D implemented | Difficult | ||
hint() | Detects OpenGL hardware, specs etc. | Difficult | ||
PVector | 2D or 3D vector should be returned. | Difficult |
Misc. Features
Name | Description | Who's working on it. | STATUS | Difficulty | |
---|---|---|---|---|---|
delay() | Some exploration done... a couple of work-arounds found. A deeper look into this needed as the work-arounds did not function as expected in all situations due to the non-blocking nature of Javascript animation techniques. | Difficult | |||
popStyle() | Requested by Google Group. | Difficult | |||
private | Worth the effort in Javascript? Maybe. | ||||
pushStyle() | Requested by Google Group. | Difficult | |||
cursor() | Some work finished and pushed to master. | Medium | |||
focused | Easy | ||||
noCursor() | Easy | ||||
online | Relevant in a Javascript environment? Perhaps. | Easy | |||
screen | Could be useful to get window.innerHeight etc? | Easy | |||
long | Medium | ||||
Hashmap | Medium | ||||
XMLElement | Medium | ||||
binary() | Medium | ||||
boolean() | Easy | ||||
hex() | Easy | ||||
unbinary() | Medium | ||||
unhex() | Easy | ||||
join() | Easy | ||||
match() | Medium | ||||
matchAll() | Medium | ||||
nfc() | Easy | ||||
nfp() | Easy | ||||
nfs() | Easy | ||||
trim() | Easy | ||||
split() | Easy | ||||
splitTokens() | Easy | ||||
append() | Easy | ||||
arrayCopy() | Easy | ||||
concat() | Easy | ||||
expand() | Easy | ||||
reverse() | Easy | ||||
shorten() | Easy | ||||
sort() | Easy | ||||
splice() | Easy | ||||
subset() | Easy | ||||
PShape() | Started working on this myself (outside of PJS). Can parse most SVGs. A whole ton of quircks/bugs cross-browser that stop this in it's tracks in terms of a pure-implementation. Have been adding these to Apple, Opera, BugZilla as I go. More details if needed. | Difficult | |||
bezierDetail() | Difficult (While the math may be easy enough, it would be nice to have the browser handle this at the machine code level. Help from Fx dev team, new functionality please)? | ||||
bezierPoint() | Difficult (While the math may be easy enough, it would be nice to have the browser handle this at the machine code level. Help from Fx dev team, new functionality please)? | ||||
bezierTangent() | Difficult (While the math may be easy enough, it would be nice to have the browser handle this at the machine code level. Help from Fx dev team, new functionality please)? | ||||
curveDetail() | Difficult (While the math may be easy enough, it would be nice to have the browser handle this at the machine code level. Help from Fx dev team, new functionality please)? | ||||
curvePoint() | Difficult (While the math may be easy enough, it would be nice to have the browser handle this at the machine code level. Help from Fx dev team, new functionality please)? | ||||
curveTangent() | Difficult (While the math may be easy enough, it would be nice to have the browser handle this at the machine code level. Help from Fx dev team, new functionality please)? | ||||
curveTightness() | Difficult (ALREADY IN PJS, BUT.... it would be nice to have the browser handle this at the machine code level. Help from Fx dev team, new functionality please)? | ||||
noSmooth() | Possible/worth the processing with Canvas? Probably not. Feedback welcome. | Difficult (Another thing that would be nice if the Fx dev. team could provide this functionality) | |||
strokeCap() | Medium | ||||
strokeJoin() | Medium | ||||
texture() | Difficult | ||||
textureMode() | Difficult | ||||
loadShape() | SVG function. | Difficult | |||
shape() | SVG function. | Difficult | |||
shapeMode() | SVG function. | Difficult | |||
createInput() | Difficult | ||||
loadBytes() | Started working on this. Can read binary from file with JS using someone else's open-source. Not added into Processing.js yet. | Medium | |||
open() | Impossible? | ||||
selectFolder() | Impossible? | ||||
selectInput() | Impossible? | ||||
param() | Needed in JS? | Medium | |||
status() | Don't think Firefox will let you change status bar with JS re: security. | Medium? | |||
save() | Some work done by Google group. Could be combined with binary functions ot HTML5 functions to write directly to server? | Difficult | |||
saveFrame() | As above in save(). Probably don't want to start saving TIFs in a web environment. Canvas exports png, gif, jpg natively already. Spec deviation from Processing proper may be wise. | Difficult | |||
PrintWriter | Saves text to file. | Difficult | |||
beginRaw() | Difficult | ||||
beginRecord() | Difficult | ||||
createOutput() | Difficult | ||||
createReader() | Difficult | ||||
createWriter() | Difficult | ||||
endRaw() | Difficult | ||||
endRecord() | Difficult | ||||
saveBytes() | Difficult | ||||
saveStream() | Difficult | ||||
saveStrings() | Medium | ||||
selectOutput() | Difficult | ||||
applyMatrix() | Difficult ( could return glMultMatrix()? ) | ||||
printMatrix() | Medium | ||||
resetMatrix() | Medium | ||||
blendColor() | Medium | ||||
brightness() | Medium | ||||
hue() | Medium | ||||
saturation() | Medium | ||||
PImage | Pimage is in the library but it would be great to get PJS loading the images into the DOM dynamically. This is also a fairly common request on the Google group. | Medium | |||
imageMode() | Medium | ||||
noTint() | Medium | ||||
requestImage() | No sure if this is actually needed in JS as DOM image would load async anyway. Probably worth looking into a little more. | Medium | |||
blend() | Medium | ||||
copy() | Medium | ||||
filter() | Medium | ||||
PGraphics | Could be worth-while to get PGraphics to use a separate canvas and getPixels() from it. Great for say... animating the mouth moving on one canvas before applying the result to a UV map for a 3D object. | Medium-Difficult | |||
Would this offer any performance/feature reward over using a reagular Javascript 1 dimensional array containing pixels? | |||||
PFont | Already working. The existing routines will likely get either a) merged with PShape's SVG functions or b) dropped in favor of something faster re: real browser fonts if we can borrow a little time from Mozilla developers. (We are currently using SVGs.) | Difficult (Fx dev. & talk to Bespin guys) | |||
PVector | 2D...3D vector should be returned. | Difficult | |||
exp() | Easy | ||||
log() | Easy | ||||
mag() | asalga | Easy | |||
map() | Easy | ||||
acos() | Easy | ||||
asin() | Easy | ||||
atan() | Easy |