diff --git a/build/shared/revisions.txt b/build/shared/revisions.txt index 9c243d62e..60c0a47d0 100644 --- a/build/shared/revisions.txt +++ b/build/shared/revisions.txt @@ -7,6 +7,14 @@ releases will be super crusty. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . +ABOUT REV 0080 + +- examples have finally been updated in this release, please test! + + +. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + ABOUT REV 0079 - 31 March 2005 * horizontal toolbar! new colors! current line number indicator! * diff --git a/core/PGraphics.java b/core/PGraphics.java index 23845af9c..9cce84ddc 100644 --- a/core/PGraphics.java +++ b/core/PGraphics.java @@ -990,9 +990,9 @@ public class PGraphics extends PImage implements PConstants { throw new RuntimeException("sphere() can only be used with depth()"); } - public void sphere(float x, float y, float z, float r) { - throw new RuntimeException("sphere() can only be used with depth()"); - } + //public void sphere(float x, float y, float z, float r) { + //throw new RuntimeException("sphere() can only be used with depth()"); + //} diff --git a/core/PGraphics3.java b/core/PGraphics3.java index 929edc1f0..9387f6d9f 100644 --- a/core/PGraphics3.java +++ b/core/PGraphics3.java @@ -1801,24 +1801,31 @@ public class PGraphics3 extends PGraphics { } - // cache all the points of the sphere in a static array - // top and bottom are just a bunch of triangles that land - // in the center point - - // sphere is a series of concentric circles who radii vary - // along the shape, based on, er.. cos or something - - // [toxi031031] new sphere code. removed all multiplies with - // radius, as scale() will take care of that anyway - - // [toxi031223] updated sphere code (removed modulos) - // and introduced sphereAt(x,y,z,r) - // to avoid additional translate()'s on the user/sketch side + /** + * Draw a sphere with radius r centered at coordinate 0, 0, 0. + *

+ * Implementation notes: + *

+ * cache all the points of the sphere in a static array + * top and bottom are just a bunch of triangles that land + * in the center point + *

+ * sphere is a series of concentric circles who radii vary + * along the shape, based on, er.. cos or something + *

+   * [toxi031031] new sphere code. removed all multiplies with
+   * radius, as scale() will take care of that anyway
+   *
+   * [toxi031223] updated sphere code (removed modulos)
+   * and introduced sphereAt(x,y,z,r)
+   * to avoid additional translate()'s on the user/sketch side
+   * 
+ */ public void sphere(float r) { - sphere(0, 0, 0, r); - } + float x = 0; // TODO clean this back up again + float y = 0; + float z = 0; - public void sphere(float x, float y, float z, float r) { if (sphereDetail == 0) { sphereDetail(30); } diff --git a/core/PMethods.java b/core/PMethods.java index 91c689a4a..2740e0055 100755 --- a/core/PMethods.java +++ b/core/PMethods.java @@ -97,6 +97,18 @@ public interface PMethods { // + // also discussed using the modes.. + // but when rotating it's gonna make things totally bizarre. + + // rectMode(CORNER, CORNERS, CENTER, CENTER_DIAMETER + // box(x, y, z, w, h, d) CORNER + // box(x, y, z, x2, y2, z2) CORNERS + // box(x, y, z, w, h, d) CENTER (but centered around x, y, z) + // box(x, y, z, xr, yr, zr) CENTER_RADIUS + + // sphere(x, y, z, r) CENTER + // sphere(x, y, z, r) CORNER draws the ellipse starting int the corner + public void box(float size); public void box(float w, float h, float d); @@ -105,7 +117,7 @@ public interface PMethods { public void sphere(float r); - public void sphere(float x, float y, float z, float r); + //public void sphere(float x, float y, float z, float r); // diff --git a/core/todo.txt b/core/todo.txt index 18a526432..50874202a 100644 --- a/core/todo.txt +++ b/core/todo.txt @@ -34,11 +34,13 @@ o make width() return values based on natural size? X not a great idea.. plus java2d uses 1 pixel font for things X email simon re: lighting api X things are actually more on track than expected - +X goodbye sphere(x, y, z, r) X camera is swapping colors in gl (on mac?) X in fact, all textures on mac were swapping colors _ test this on windows to see if fixed +o should available() be waiting() or something like that instead? + implemented in 79 X make sure arc goes in the right direction that we want it to X (make sure that PGraphics3 goes the same direction) @@ -46,9 +48,24 @@ X (make sure that PGraphics3 goes the same direction) BETA -PGraphics +_ take a look to see what needs to happen to get PAppletGL merged in +_ i.e. can i just extend GLCanvas? -_ remove PMethods as actual class... +_ don't grab pixels of java2d images unless asked +_ this is the difference between a lot of loadPixels() and not +_ so important to have it in before beta if that's the change + +_ new PGraphics(PImage) +_ if (modified) don't loadPixels again, just ignore it +_ make a note that updatePixels() only sets a flag in PImage +_ (but not PGraphics, which does it immediately) + +_ get PGraphics working again (with crappy line support) + +_ remove PMethods as actual class, use recordFrame(PGraphics) +_ size(200, 200, "processing.illustrator.PGraphicsAI"); +_ make vertexCount etc properly accessible in PGraphics3 +_ so that people can do things like the dxf renderer size(200, 200, P3D) - createGraphics and placement issues _ make pappletgl work back inside papplet @@ -82,8 +99,12 @@ X is it because the lock was taken off (g) in PApplet? _ add something to PApplet to have constants for the platform _ needed for error messages (winvdig?) and other misc + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + +NOT NECESSARY BEFORE BETA + _ allow save(), saveFrame() et al to properly pass in absolute paths _ (so that it doesn't always save to the applet folder) _ could require that save() takes an absolute path? @@ -132,21 +153,10 @@ void draw() { } PGraphicsGL -_ check once lighting actually works -_ background color seems to be wrong? - -. . . . . - -add simon's new 3d code as soon as he has gl working - and make a release based on that - -0079 java 1.1 graphics comes back - -0080 export to application - +_ background color seems to be wrong? +_ check this once lighting actually works api questions -_ should available() be waiting() or something like that instead? _ sphere x,y,z,r or box w,h,d.. need to make them consistent @@ -178,12 +188,6 @@ _ use with/in place of link() _ PPolygon no longer in use and PLine is a mess -video lib -_ grabbing sub-devices from camera in the lib (via list() or whatever) -_ actually, need to use numbered indices (multiple w/ same name) -_ list should be: "0 - Logitech QuickCam (Blah)" -_ and then use the indices (or the str i guess) to choose - _ something really bad happened with println() in this release _ perhaps only without a code folder and/or running in java2d mode? _ this may also be what's hosing diff --git a/todo.txt b/todo.txt index c0918aab3..02d2585db 100644 --- a/todo.txt +++ b/todo.txt @@ -1,5 +1,6 @@ 0080 pde X include /** */ comments into the html page +X examples have been updated fixed in rev 79 X can't scroll the PdeEditorConsole downwards at all on osx @@ -10,13 +11,23 @@ o this would need to track whether coming just from an ext runtime o make "get quicktime libs" function o can java get the root directory for system/win32 etc? -BETA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + +MUST BE COMPLETE FOR BETA + +_ if NullPointerEx on a line that includes a "pixels[" +_ give an error message saying "you may need to call loadPixels" + + +. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + + +NOT NECESSARY BEFORE BETA + _ .psk file support for bundling sketches -_ add something to PApplet to have constants for the platform _ move everything to packages, and start auto-javadoc _ also move the lib folders to a new location @@ -34,6 +45,10 @@ _ which will also just give you the last camera _ should it be new Camera(PROMPT); _ error messages from quicktime not coming through very well _ setting the camera should be an index from list() +_ grabbing sub-devices from camera in the lib (via list() or whatever) +_ actually, need to use numbered indices (multiple w/ same name) +_ list should be: "0 - Logitech QuickCam (Blah)" +_ and then use the indices (or the str i guess) to choose _ put processing.exe into cvs so that make et al aren't required _ add 'make' to list of things that should be installed