Update of /cvsroot/jrman/drafts/src/org/jrman/primitive In directory sc8-pr-cvs6.sourceforge.net:/tmp/cvs-serv30032/src/org/jrman/primitive Modified Files: BicubicPatch.java BilinearPatch.java Cone.java Cylinder.java DelayedReadArchive.java Disk.java Hyperboloid.java NurbsRI.java ObjectInstance.java Paraboloid.java Point.java PointsPolygons.java Primitive.java Quadric.java Sphere.java Torus.java Added Files: LinearCurve.java Log Message: Started working on curves. Index: Torus.java =================================================================== RCS file: /cvsroot/jrman/drafts/src/org/jrman/primitive/Torus.java,v retrieving revision 1.8 retrieving revision 1.9 diff -C2 -d -r1.8 -r1.9 *** Torus.java 30 Nov 2003 03:23:16 -0000 1.8 --- Torus.java 24 Dec 2006 05:25:57 -0000 1.9 *************** *** 1,19 **** /* ! Torus.java ! Copyright (C) 2003 Gerardo Horvilleur Martinez ! ! This program is free software; you can redistribute it and/or ! modify it under the terms of the GNU General Public License ! as published by the Free Software Foundation; either version 2 ! of the License, or (at your option) any later version. ! ! This program is distributed in the hope that it will be useful, ! but WITHOUT ANY WARRANTY; without even the implied warranty of ! MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ! GNU General Public License for more details. ! ! You should have received a copy of the GNU General Public License ! along with this program; if not, write to the Free Software ! Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ --- 1,19 ---- /* ! Torus.java ! Copyright (C) 2003, 2006 Gerardo Horvilleur Martinez ! ! This program is free software; you can redistribute it and/or ! modify it under the terms of the GNU General Public License ! as published by the Free Software Foundation; either version 2 ! of the License, or (at your option) any later version. ! ! This program is distributed in the hope that it will be useful, ! but WITHOUT ANY WARRANTY; without even the implied warranty of ! MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ! GNU General Public License for more details. ! ! You should have received a copy of the GNU General Public License ! along with this program; if not, write to the Free Software ! Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ *************** *** 139,143 **** thetaMin, (thetaMin + thetaMax) / 2f, ! linearInterpolateParameters(0f, .5f, 0f, 1f), attributes); result[1] = --- 139,143 ---- thetaMin, (thetaMin + thetaMax) / 2f, ! bilinearInterpolateParameters(0f, .5f, 0f, 1f), attributes); result[1] = *************** *** 149,153 **** (thetaMin + thetaMax) / 2f, thetaMax, ! linearInterpolateParameters(.5f, 1f, 0f, 1f), attributes); result[0].setObjectToCamera(objectToCamera); --- 149,153 ---- (thetaMin + thetaMax) / 2f, thetaMax, ! bilinearInterpolateParameters(.5f, 1f, 0f, 1f), attributes); result[0].setObjectToCamera(objectToCamera); *************** *** 162,166 **** thetaMin, thetaMax, ! linearInterpolateParameters(0f, 1f, 0f, .5f), attributes); result[1] = --- 162,166 ---- thetaMin, thetaMax, ! bilinearInterpolateParameters(0f, 1f, 0f, .5f), attributes); result[1] = *************** *** 172,176 **** thetaMin, thetaMax, ! linearInterpolateParameters(0f, 1f, .5f, 1f), attributes); result[0].setObjectToCamera(objectToCamera); --- 172,176 ---- thetaMin, thetaMax, ! bilinearInterpolateParameters(0f, 1f, .5f, 1f), attributes); result[0].setObjectToCamera(objectToCamera); Index: DelayedReadArchive.java =================================================================== RCS file: /cvsroot/jrman/drafts/src/org/jrman/primitive/DelayedReadArchive.java,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** DelayedReadArchive.java 12 Sep 2004 00:10:49 -0000 1.1 --- DelayedReadArchive.java 24 Dec 2006 05:25:57 -0000 1.2 *************** *** 1,19 **** /* ! DelayedReadArchive.java ! Copyright (C) 2004 Gerardo Horvilleur Martinez ! ! This program is free software; you can redistribute it and/or ! modify it under the terms of the GNU General Public License ! as published by the Free Software Foundation; either version 2 ! of the License, or (at your option) any later version. ! ! This program is distributed in the hope that it will be useful, ! but WITHOUT ANY WARRANTY; without even the implied warranty of ! MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ! GNU General Public License for more details. ! ! You should have received a copy of the GNU General Public License ! along with this program; if not, write to the Free Software ! Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ --- 1,19 ---- /* ! DelayedReadArchive.java ! Copyright (C) 2004 Gerardo Horvilleur Martinez ! ! This program is free software; you can redistribute it and/or ! modify it under the terms of the GNU General Public License ! as published by the Free Software Foundation; either version 2 ! of the License, or (at your option) any later version. ! ! This program is distributed in the hope that it will be useful, ! but WITHOUT ANY WARRANTY; without even the implied warranty of ! MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ! GNU General Public License for more details. ! ! You should have received a copy of the GNU General Public License ! along with this program; if not, write to the Free Software ! Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ --- NEW FILE: LinearCurve.java --- /* LinearCurve.java Copyright (C) 2006 Gerardo Horvilleur Martinez This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ package org.jrman.primitive; import javax.vecmath.Point3f; import javax.vecmath.Vector2f; import javax.vecmath.Vector3f; import org.jrman.attributes.Attributes; import org.jrman.attributes.MutableAttributes; import org.jrman.geom.BoundingVolume; import org.jrman.geom.ConvexHull3f; import org.jrman.grid.FloatGrid; import org.jrman.grid.Grid; import org.jrman.grid.Point3fGrid; import org.jrman.grid.Vector3fGrid; import org.jrman.parameters.ParameterList; import org.jrman.parameters.VaryingScalarFloat; import org.jrman.parameters.VaryingScalarTuple3f; import org.jrman.parameters.UniformScalarFloat; import org.jrman.render.ShaderVariables; import org.jrman.util.Calc; public class LinearCurve extends Primitive { static Point3f tmpPoint = new Point3f(); boolean periodic; public LinearCurve(boolean periodic, ParameterList parameters, Attributes attributes) { this.periodic = periodic; this.parameters = parameters; VaryingScalarFloat widthParam = (VaryingScalarFloat) parameters.getParameter("width"); UniformScalarFloat constantWidthParam = (UniformScalarFloat) parameters.getParameter("constantwidth"); float w; if (widthParam != null) { w = 0f; int n = widthParam.getCount(); for (int i = 0; i < n; i++) { float wi = widthParam.getValue(i); if (wi > w) w = wi; } } else if (constantWidthParam != null) w = constantWidthParam.getValue(); else w = 1f; MutableAttributes attr = new MutableAttributes(attributes); attr.setDisplacementBound(attributes.getDisplacementBound() + w / 2f); this.attributes = attr; } public BoundingVolume getBoundingVolume() { VaryingScalarTuple3f points = (VaryingScalarTuple3f) parameters.getParameter("P"); ConvexHull3f ch = new ConvexHull3f(); for (int i = 0, n = points.getCount(); i < n; i++) { points.getValue(i, tmpPoint); ch.addPoint(tmpPoint); } return ch; } public Primitive[] split() { VaryingScalarTuple3f points = (VaryingScalarTuple3f) parameters.getParameter("P"); int n = points.getCount(); Primitive[] result = new Primitive[n - (periodic ? 0 : 1)]; int[] uniformIndex = new int[1]; uniformIndex[0] = 0; int[] indexes = new int[2]; for (int i = 0; i < n - 1; i++) { indexes[0] = i; indexes[1] = i + 1; result[i] = new LinearSegment(parameters.selectValues(uniformIndex, indexes, indexes), attributes); } if (periodic) { indexes[0] = n - 1; indexes[1] = 0; result[n - 1] = new LinearSegment(parameters.selectValues(uniformIndex, indexes, indexes), attributes); } return result; } public boolean isReadyToBeDiced(int gridsize) { return false; } private static class LinearSegment extends Primitive { static Point3f pa = new Point3f(); static Point3f pb = new Point3f(); static Vector3f v3 = new Vector3f(); static Vector2f v2 = new Vector2f(); static float wa; static float wb; LinearSegment(ParameterList parameters, Attributes attributes) { this.parameters = parameters; this.attributes = attributes; } public BoundingVolume getBoundingVolume() { ConvexHull3f ch = new ConvexHull3f(); extractPoints(); ch.addPoint(pa); ch.addPoint(pb); return ch; } public Primitive[] split() { Primitive[] result = new Primitive[2]; result[0] = new LinearSegment(linearInterpolateParameters(0f, .5f), attributes); result[1] = new LinearSegment(linearInterpolateParameters(.5f, 1), attributes); return result; } private void extractPoints() { VaryingScalarTuple3f param = (VaryingScalarTuple3f) parameters.getParameter("P"); param.getValue(0, pa); param.getValue(1, pb); } private void extractWidths() { VaryingScalarFloat widthParam = (VaryingScalarFloat) parameters.getParameter("width"); if (widthParam != null) { wa = widthParam.getValue(0); wb = widthParam.getValue(1); } else { UniformScalarFloat constantWidthParam = (UniformScalarFloat) parameters.getParameter("constantwidth"); if (constantWidthParam != null) wa = wb = constantWidthParam.getValue(); else wa = wb = 1f; } } public boolean isReadyToBeDiced(int gridSize) { float sw = rasterBounds.getWidth(); float sh = rasterBounds.getHeight(); float length = (float) Math.sqrt(sw * sw + sh * sw); boolean ready = length <= (gridSize / 2) * attributes.getShadingRate(); if (!ready) return false; float idealSize = length / (2f * attributes.getShadingRate()); idealSize = Calc.clamp(idealSize, 40, gridSize / 2); int vSize = (int) Math.ceil(idealSize); Grid.setSize(2, vSize); return true; } public void dice(ShaderVariables shaderVariables) { shaderVariables.attributes = attributes; shaderVariables.parameters = parameters; dice_u(shaderVariables); dice_v(shaderVariables); // dice_s(shaderVariables); // dice_t(shaderVariables); dice_PandNg(shaderVariables); dice_du(shaderVariables); dice_dv(shaderVariables); dice_dPdu(shaderVariables); dice_dPdv(shaderVariables); dice_N(shaderVariables); dice_Cs(shaderVariables); dice_Os(shaderVariables); dice_others(shaderVariables); } protected void dice_PandNg(ShaderVariables shaderVariables) { v3.set(0f, 0f, -1f); shaderVariables.Ng.set(v3); extractPoints(); extractWidths(); objectToCamera.transformPoint(pa, pa); objectToCamera.transformPoint(pb, pb); v3.set(wa, 0f, 0f); objectToCamera.transformVector(v3, v3); wa = v3.length() / 2; v3.set(wb, 0f, 0f); objectToCamera.transformVector(v3, v3); wb = v3.length() /2; v2.set(pb.x - pa.x, pb.y - pa.y); Calc.perp(v2, v2); v2.normalize(); float aax = pa.x - v2.x * wa; float aay = pa.y - v2.y * wa; float aaz = pa.z; float abx = pa.x + v2.x * wa; float aby = pa.y + v2.y * wa; float abz = pa.z; float bax = pb.x - v2.x * wb; float bay = pb.y - v2.y * wb; float baz = pb.z; float bbx = pb.x + v2.x * wb; float bby = pb.y + v2.y * wb; float bbz = pb.z; Point3fGrid P = shaderVariables.P; int vSize = Grid.getVSize(); float vStep = 1f / (vSize - 1); float v = 0; for (int i = 0; i < vSize; i++) { pa.x = Calc.interpolate(aax, bax, v); pa.y = Calc.interpolate(aay, bay, v); pa.z = Calc.interpolate(aaz, baz, v); pb.x = Calc.interpolate(abx, bbx, v); pb.y = Calc.interpolate(aby, bby, v); pb.z = Calc.interpolate(abz, bbz, v); P.set(0, i, pa); P.set(1, i, pb); v += vStep; } } protected void dice_u(ShaderVariables shaderVariables) { FloatGrid g = shaderVariables.u; int vSize = Grid.getVSize(); for (int i = 0; i < vSize; i++) { g.set(0, i, 0f); g.set(1, i, 1f); } } protected void dice_v(ShaderVariables shaderVariables) { FloatGrid g = shaderVariables.v; int vSize = Grid.getVSize(); float vStep = 1f / (vSize - 1); float v = 0; for (int i = 0; i < vSize; i++) { g.set(0, i, v); g.set(1, i, v); v += vStep; } } } } Index: PointsPolygons.java =================================================================== RCS file: /cvsroot/jrman/drafts/src/org/jrman/primitive/PointsPolygons.java,v retrieving revision 1.5 retrieving revision 1.6 diff -C2 -d -r1.5 -r1.6 *** PointsPolygons.java 3 Jul 2005 04:37:36 -0000 1.5 --- PointsPolygons.java 24 Dec 2006 05:25:57 -0000 1.6 *************** *** 1,19 **** /* ! PointsPolygon.java ! Copyright (C) 2004 Gerardo Horvilleur Martinez ! ! This program is free software; you can redistribute it and/or ! modify it under the terms of the GNU General Public License ! as published by the Free Software Foundation; either version 2 ! of the License, or (at your option) any later version. ! ! This program is distributed in the hope that it will be useful, ! but WITHOUT ANY WARRANTY; without even the implied warranty of ! MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ! GNU General Public License for more details. ! ! You should have received a copy of the GNU General Public License ! along with this program; if not, write to the Free Software ! Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ --- 1,19 ---- /* ! PointsPolygon.java ! Copyright (C) 2004 Gerardo Horvilleur Martinez ! ! This program is free software; you can redistribute it and/or ! modify it under the terms of the GNU General Public License ! as published by the Free Software Foundation; either version 2 ! of the License, or (at your option) any later version. ! ! This program is distributed in the hope that it will be useful, ! but WITHOUT ANY WARRANTY; without even the implied warranty of ! MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ! GNU General Public License for more details. ! ! You should have received a copy of the GNU General Public License ! along with this program; if not, write to the Free Software ! Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ Index: Sphere.java =================================================================== RCS file: /cvsroot/jrman/drafts/src/org/jrman/primitive/Sphere.java,v retrieving revision 1.21 retrieving revision 1.22 diff -C2 -d -r1.21 -r1.22 *** Sphere.java 30 Nov 2003 03:23:16 -0000 1.21 --- Sphere.java 24 Dec 2006 05:25:57 -0000 1.22 *************** *** 1,19 **** /* ! Sphere.java ! Copyright (C) 2003 Gerardo Horvilleur Martinez ! ! This program is free software; you can redistribute it and/or ! modify it under the terms of the GNU General Public License ! as published by the Free Software Foundation; either version 2 ! of the License, or (at your option) any later version. ! ! This program is distributed in the hope that it will be useful, ! but WITHOUT ANY WARRANTY; without even the implied warranty of ! MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ! GNU General Public License for more details. ! ! You should have received a copy of the GNU General Public License ! along with this program; if not, write to the Free Software ! Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ --- 1,19 ---- /* ! Sphere.java ! Copyright (C) 2003, 2006 Gerardo Horvilleur Martinez ! ! This program is free software; you can redistribute it and/or ! modify it under the terms of the GNU General Public License ! as published by the Free Software Foundation; either version 2 ! of the License, or (at your option) any later version. ! ! This program is distributed in the hope that it will be useful, ! but WITHOUT ANY WARRANTY; without even the implied warranty of ! MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ! GNU General Public License for more details. ! ! You should have received a copy of the GNU General Public License ! along with this program; if not, write to the Free Software ! Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ *************** *** 130,134 **** thetaMin, (thetaMin + thetaMax) / 2f, ! linearInterpolateParameters(0f, .5f, 0f, 1f), attributes); result[1] = --- 130,134 ---- thetaMin, (thetaMin + thetaMax) / 2f, ! bilinearInterpolateParameters(0f, .5f, 0f, 1f), attributes); result[1] = *************** *** 139,143 **** (thetaMin + thetaMax) / 2f, thetaMax, ! linearInterpolateParameters(.5f, 1f, 0f, 1f), attributes); result[0].setObjectToCamera(objectToCamera); --- 139,143 ---- (thetaMin + thetaMax) / 2f, thetaMax, ! bilinearInterpolateParameters(.5f, 1f, 0f, 1f), attributes); result[0].setObjectToCamera(objectToCamera); *************** *** 151,155 **** thetaMin, thetaMax, ! linearInterpolateParameters(0f, 1f, 0f, .5f), attributes); result[1] = --- 151,155 ---- thetaMin, thetaMax, ! bilinearInterpolateParameters(0f, 1f, 0f, .5f), attributes); result[1] = *************** *** 160,164 **** thetaMin, thetaMax, ! linearInterpolateParameters(0f, 1f, .5f, 1f), attributes); result[0].setObjectToCamera(objectToCamera); --- 160,164 ---- thetaMin, thetaMax, ! bilinearInterpolateParameters(0f, 1f, .5f, 1f), attributes); result[0].setObjectToCamera(objectToCamera); Index: Hyperboloid.java =================================================================== RCS file: /cvsroot/jrman/drafts/src/org/jrman/primitive/Hyperboloid.java,v retrieving revision 1.8 retrieving revision 1.9 diff -C2 -d -r1.8 -r1.9 *** Hyperboloid.java 30 Nov 2003 03:23:16 -0000 1.8 --- Hyperboloid.java 24 Dec 2006 05:25:57 -0000 1.9 *************** *** 1,19 **** /* ! Hyperboloid.java ! Copyright (C) 2003 Gerardo Horvilleur Martinez ! ! This program is free software; you can redistribute it and/or ! modify it under the terms of the GNU General Public License ! as published by the Free Software Foundation; either version 2 ! of the License, or (at your option) any later version. ! ! This program is distributed in the hope that it will be useful, ! but WITHOUT ANY WARRANTY; without even the implied warranty of ! MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ! GNU General Public License for more details. ! ! You should have received a copy of the GNU General Public License ! along with this program; if not, write to the Free Software ! Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ --- 1,19 ---- /* ! Hyperboloid.java ! Copyright (C) 2003, 2006 Gerardo Horvilleur Martinez ! ! This program is free software; you can redistribute it and/or ! modify it under the terms of the GNU General Public License ! as published by the Free Software Foundation; either version 2 ! of the License, or (at your option) any later version. ! ! This program is distributed in the hope that it will be useful, ! but WITHOUT ANY WARRANTY; without even the implied warranty of ! MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ! GNU General Public License for more details. ! ! You should have received a copy of the GNU General Public License ! along with this program; if not, write to the Free Software ! Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ *************** *** 200,204 **** thetaMin, (thetaMin + thetaMax) / 2f, ! linearInterpolateParameters(0f, .5f, 0f, 1f), attributes); result[1] = --- 200,204 ---- thetaMin, (thetaMin + thetaMax) / 2f, ! bilinearInterpolateParameters(0f, .5f, 0f, 1f), attributes); result[1] = *************** *** 212,216 **** (thetaMin + thetaMax) / 2f, thetaMax, ! linearInterpolateParameters(.5f, 1f, 0f, 1f), attributes); result[0].setObjectToCamera(objectToCamera); --- 212,216 ---- (thetaMin + thetaMax) / 2f, thetaMax, ! bilinearInterpolateParameters(.5f, 1f, 0f, 1f), attributes); result[0].setObjectToCamera(objectToCamera); *************** *** 227,231 **** thetaMin, thetaMax, ! linearInterpolateParameters(0f, 1f, 0f, .5f), attributes); result[1] = --- 227,231 ---- thetaMin, thetaMax, ! bilinearInterpolateParameters(0f, 1f, 0f, .5f), attributes); result[1] = *************** *** 239,243 **** thetaMin, thetaMax, ! linearInterpolateParameters(0f, 1f, .5f, 1f), attributes); result[0].setObjectToCamera(objectToCamera); --- 239,243 ---- thetaMin, thetaMax, ! bilinearInterpolateParameters(0f, 1f, .5f, 1f), attributes); result[0].setObjectToCamera(objectToCamera); Index: Disk.java =================================================================== RCS file: /cvsroot/jrman/drafts/src/org/jrman/primitive/Disk.java,v retrieving revision 1.9 retrieving revision 1.10 diff -C2 -d -r1.9 -r1.10 *** Disk.java 23 Mar 2004 06:29:12 -0000 1.9 --- Disk.java 24 Dec 2006 05:25:57 -0000 1.10 *************** *** 1,19 **** /* ! Disk.java ! Copyright (C) 2003 Gerardo Horvilleur Martinez ! ! This program is free software; you can redistribute it and/or ! modify it under the terms of the GNU General Public License ! as published by the Free Software Foundation; either version 2 ! of the License, or (at your option) any later version. ! ! This program is distributed in the hope that it will be useful, ! but WITHOUT ANY WARRANTY; without even the implied warranty of ! MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ! GNU General Public License for more details. ! ! You should have received a copy of the GNU General Public License ! along with this program; if not, write to the Free Software ! Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ --- 1,19 ---- /* ! Disk.java ! Copyright (C) 2003, 2006 Gerardo Horvilleur Martinez ! ! This program is free software; you can redistribute it and/or ! modify it under the terms of the GNU General Public License ! as published by the Free Software Foundation; either version 2 ! of the License, or (at your option) any later version. ! ! This program is distributed in the hope that it will be useful, ! but WITHOUT ANY WARRANTY; without even the implied warranty of ! MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ! GNU General Public License for more details. ! ! You should have received a copy of the GNU General Public License ! along with this program; if not, write to the Free Software ! Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ *************** *** 115,119 **** rMin, rMax, ! linearInterpolateParameters(0f, .5f, 0f, 1f), attributes); result[1] = --- 115,119 ---- rMin, rMax, ! bilinearInterpolateParameters(0f, .5f, 0f, 1f), attributes); result[1] = *************** *** 124,128 **** rMin, rMax, ! linearInterpolateParameters(.5f, 1f, 0f, 1f), attributes); result[0].setObjectToCamera(objectToCamera); --- 124,128 ---- rMin, rMax, ! bilinearInterpolateParameters(.5f, 1f, 0f, 1f), attributes); result[0].setObjectToCamera(objectToCamera); *************** *** 137,141 **** rMin, (rMax + rMin)/2f, ! linearInterpolateParameters(0f, 1f, .5f, 1f), attributes); result[1] = --- 137,141 ---- rMin, (rMax + rMin)/2f, ! bilinearInterpolateParameters(0f, 1f, .5f, 1f), attributes); result[1] = *************** *** 146,150 **** (rMax + rMin)/2f, rMax, ! linearInterpolateParameters(0f, 1f, 0f, .5f), attributes); result[0].setObjectToCamera(objectToCamera); --- 146,150 ---- (rMax + rMin)/2f, rMax, ! bilinearInterpolateParameters(0f, 1f, 0f, .5f), attributes); result[0].setObjectToCamera(objectToCamera); Index: Primitive.java =================================================================== RCS file: /cvsroot/jrman/drafts/src/org/jrman/primitive/Primitive.java,v retrieving revision 1.38 retrieving revision 1.39 diff -C2 -d -r1.38 -r1.39 *** Primitive.java 19 Nov 2005 23:27:54 -0000 1.38 --- Primitive.java 24 Dec 2006 05:25:57 -0000 1.39 *************** *** 1,19 **** /* ! Primitive.java ! Copyright (C) 2003, 2004 Gerardo Horvilleur Martinez ! ! This program is free software; you can redistribute it and/or ! modify it under the terms of the GNU General Public License ! as published by the Free Software Foundation; either version 2 ! of the License, or (at your option) any later version. ! ! This program is distributed in the hope that it will be useful, ! but WITHOUT ANY WARRANTY; without even the implied warranty of ! MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ! GNU General Public License for more details. ! ! You should have received a copy of the GNU General Public License ! along with this program; if not, write to the Free Software ! Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ --- 1,19 ---- /* ! Primitive.java ! Copyright (C) 2003, 2004, 2006 Gerardo Horvilleur Martinez ! ! This program is free software; you can redistribute it and/or ! modify it under the terms of the GNU General Public License ! as published by the Free Software Foundation; either version 2 ! of the License, or (at your option) any later version. ! ! This program is distributed in the hope that it will be useful, ! but WITHOUT ANY WARRANTY; without even the implied warranty of ! MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ! GNU General Public License for more details. ! ! You should have received a copy of the GNU General Public License ! along with this program; if not, write to the Free Software ! Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ *************** *** 160,166 **** VaryingScalarTuple3f param = (VaryingScalarTuple3f) parameters.getParameter("N"); ! if (param != null) ! param.linearDice(shaderVariables.N); ! else shaderVariables.N.set(shaderVariables.Ng); } --- 160,169 ---- VaryingScalarTuple3f param = (VaryingScalarTuple3f) parameters.getParameter("N"); ! if (param != null) { ! if (param.getCount() == 4) ! param.bilinearDice(shaderVariables.N); ! else ! param.linearDice(shaderVariables.N); ! } else shaderVariables.N.set(shaderVariables.Ng); } *************** *** 171,174 **** --- 174,179 ---- if (param != null) { if (param.getCount() == 4) + param.bilinearDice(shaderVariables.Cs); + else if (param.getCount() == 2) param.linearDice(shaderVariables.Cs); else { *************** *** 185,188 **** --- 190,195 ---- if (param != null) { if (param.getCount() == 4) + param.bilinearDice(shaderVariables.Os); + else if (param.getCount() == 2) param.linearDice(shaderVariables.Os); else { *************** *** 197,201 **** VaryingScalarFloat param = (VaryingScalarFloat) parameters.getParameter("u"); ! param.linearDice(shaderVariables.u); } --- 204,208 ---- VaryingScalarFloat param = (VaryingScalarFloat) parameters.getParameter("u"); ! param.bilinearDice(shaderVariables.u); } *************** *** 203,207 **** VaryingScalarFloat param = (VaryingScalarFloat) parameters.getParameter("v"); ! param.linearDice(shaderVariables.v); } --- 210,214 ---- VaryingScalarFloat param = (VaryingScalarFloat) parameters.getParameter("v"); ! param.bilinearDice(shaderVariables.v); } *************** *** 209,213 **** VaryingScalarFloat param = (VaryingScalarFloat) parameters.getParameter("s"); ! param.linearDice(shaderVariables.s); } --- 216,220 ---- VaryingScalarFloat param = (VaryingScalarFloat) parameters.getParameter("s"); ! param.bilinearDice(shaderVariables.s); } *************** *** 215,219 **** VaryingScalarFloat param = (VaryingScalarFloat) parameters.getParameter("t"); ! param.linearDice(shaderVariables.t); } --- 222,229 ---- VaryingScalarFloat param = (VaryingScalarFloat) parameters.getParameter("t"); ! if (param.getCount() == 4) ! param.bilinearDice(shaderVariables.t); ! else ! param.linearDice(shaderVariables.t); } *************** *** 307,316 **** } ! protected ParameterList linearInterpolateParameters( float uMin, float uMax, float vMin, float vMax) { ! return parameters.linearInterpolate(uMin, uMax, vMin, vMax); } --- 317,330 ---- } ! protected ParameterList linearInterpolateParameters(float min, float max) { ! return parameters.linearInterpolate(min, max); ! } ! ! protected ParameterList bilinearInterpolateParameters( float uMin, float uMax, float vMin, float vMax) { ! return parameters.bilinearInterpolate(uMin, uMax, vMin, vMax); } Index: Point.java =================================================================== RCS file: /cvsroot/jrman/drafts/src/org/jrman/primitive/Point.java,v retrieving revision 1.8 retrieving revision 1.9 diff -C2 -d -r1.8 -r1.9 *** Point.java 3 Jul 2005 04:37:36 -0000 1.8 --- Point.java 24 Dec 2006 05:25:57 -0000 1.9 *************** *** 1,19 **** /* ! Points.java ! Copyright (C) 2003 Gerardo Horvilleur Martinez ! ! This program is free software; you can redistribute it and/or ! modify it under the terms of the GNU General Public License ! as published by the Free Software Foundation; either version 2 ! of the License, or (at your option) any later version. ! ! This program is distributed in the hope that it will be useful, ! but WITHOUT ANY WARRANTY; without even the implied warranty of ! MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ! GNU General Public License for more details. ! ! You should have received a copy of the GNU General Public License ! along with this program; if not, write to the Free Software ! Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ --- 1,19 ---- /* ! Points.java ! Copyright (C) 2003 Gerardo Horvilleur Martinez ! ! This program is free software; you can redistribute it and/or ! modify it under the terms of the GNU General Public License ! as published by the Free Software Foundation; either version 2 ! of the License, or (at your option) any later version. ! ! This program is distributed in the hope that it will be useful, ! but WITHOUT ANY WARRANTY; without even the implied warranty of ! MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ! GNU General Public License for more details. ! ! You should have received a copy of the GNU General Public License ! along with this program; if not, write to the Free Software ! Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ Index: Paraboloid.java =================================================================== RCS file: /cvsroot/jrman/drafts/src/org/jrman/primitive/Paraboloid.java,v retrieving revision 1.8 retrieving revision 1.9 diff -C2 -d -r1.8 -r1.9 *** Paraboloid.java 30 Nov 2003 03:23:16 -0000 1.8 --- Paraboloid.java 24 Dec 2006 05:25:57 -0000 1.9 *************** *** 1,19 **** /* ! Paraboloid.java ! Copyright (C) 2003 Gerardo Horvilleur Martinez ! ! This program is free software; you can redistribute it and/or ! modify it under the terms of the GNU General Public License ! as published by the Free Software Foundation; either version 2 ! of the License, or (at your option) any later version. ! ! This program is distributed in the hope that it will be useful, ! but WITHOUT ANY WARRANTY; without even the implied warranty of ! MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ! GNU General Public License for more details. ! ! You should have received a copy of the GNU General Public License ! along with this program; if not, write to the Free Software ! Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ --- 1,19 ---- /* ! Paraboloid.java ! Copyright (C) 2003, 2006 Gerardo Horvilleur Martinez ! ! This program is free software; you can redistribute it and/or ! modify it under the terms of the GNU General Public License ! as published by the Free Software Foundation; either version 2 ! of the License, or (at your option) any later version. ! ! This program is distributed in the hope that it will be useful, ! but WITHOUT ANY WARRANTY; without even the implied warranty of ! MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ! GNU General Public License for more details. ! ! You should have received a copy of the GNU General Public License ! along with this program; if not, write to the Free Software ! Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ *************** *** 135,139 **** maxZ, maxTheta, ! linearInterpolateParameters(0f, .5f, 0f, 1f), attributes); result[1] = --- 135,139 ---- maxZ, maxTheta, ! bilinearInterpolateParameters(0f, .5f, 0f, 1f), attributes); result[1] = *************** *** 147,151 **** maxZ, maxTheta, ! linearInterpolateParameters(.5f, 1f, 0f, 1f), attributes); result[0].setObjectToCamera(objectToCamera); --- 147,151 ---- maxZ, maxTheta, ! bilinearInterpolateParameters(.5f, 1f, 0f, 1f), attributes); result[0].setObjectToCamera(objectToCamera); *************** *** 162,166 **** maxZ, maxTheta, ! linearInterpolateParameters(0f, 1f, 0f, .5f), attributes); result[1] = --- 162,166 ---- maxZ, maxTheta, ! bilinearInterpolateParameters(0f, 1f, 0f, .5f), attributes); result[1] = *************** *** 174,178 **** maxZ, maxTheta, ! linearInterpolateParameters(0f, 1f, .5f, 1f), attributes); result[0].setObjectToCamera(objectToCamera); --- 174,178 ---- maxZ, maxTheta, ! bilinearInterpolateParameters(0f, 1f, .5f, 1f), attributes); result[0].setObjectToCamera(objectToCamera); Index: Cone.java =================================================================== RCS file: /cvsroot/jrman/drafts/src/org/jrman/primitive/Cone.java,v retrieving revision 1.7 retrieving revision 1.8 diff -C2 -d -r1.7 -r1.8 *** Cone.java 30 Nov 2003 03:23:16 -0000 1.7 --- Cone.java 24 Dec 2006 05:25:57 -0000 1.8 *************** *** 1,19 **** /* ! Cone.java ! Copyright (C) 2003 Gerardo Horvilleur Martinez ! ! This program is free software; you can redistribute it and/or ! modify it under the terms of the GNU General Public License ! as published by the Free Software Foundation; either version 2 ! of the License, or (at your option) any later version. ! ! This program is distributed in the hope that it will be useful, ! but WITHOUT ANY WARRANTY; without even the implied warranty of ! MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ! GNU General Public License for more details. ! ! You should have received a copy of the GNU General Public License ! along with this program; if not, write to the Free Software ! Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ --- 1,19 ---- /* ! Cone.java ! Copyright (C) 2003, 2004 Gerardo Horvilleur Martinez ! ! This program is free software; you can redistribute it and/or ! modify it under the terms of the GNU General Public License ! as published by the Free Software Foundation; either version 2 ! of the License, or (at your option) any later version. ! ! This program is distributed in the hope that it will be useful, ! but WITHOUT ANY WARRANTY; without even the implied warranty of ! MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ! GNU General Public License for more details. ! ! You should have received a copy of the GNU General Public License ! along with this program; if not, write to the Free Software ! Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ *************** *** 122,126 **** (thetaMin + thetaMax) / 2f, height, ! linearInterpolateParameters(0f, .5f, 0f, 1f), attributes); result[1] = --- 122,126 ---- (thetaMin + thetaMax) / 2f, height, ! bilinearInterpolateParameters(0f, .5f, 0f, 1f), attributes); result[1] = *************** *** 132,136 **** thetaMax, height, ! linearInterpolateParameters(.5f, 1f, 0f, 1f), attributes); result[0].setObjectToCamera(objectToCamera); --- 132,136 ---- thetaMax, height, ! bilinearInterpolateParameters(.5f, 1f, 0f, 1f), attributes); result[0].setObjectToCamera(objectToCamera); *************** *** 145,149 **** thetaMax, height, ! linearInterpolateParameters(0f, 1f, 0f, .5f), attributes); result[1] = --- 145,149 ---- thetaMax, height, ! bilinearInterpolateParameters(0f, 1f, 0f, .5f), attributes); result[1] = *************** *** 155,159 **** thetaMax, height, ! linearInterpolateParameters(0f, 1f, .5f, 1f), attributes); result[0].setObjectToCamera(objectToCamera); --- 155,159 ---- thetaMax, height, ! bilinearInterpolateParameters(0f, 1f, .5f, 1f), attributes); result[0].setObjectToCamera(objectToCamera); Index: BilinearPatch.java =================================================================== RCS file: /cvsroot/jrman/drafts/src/org/jrman/primitive/BilinearPatch.java,v retrieving revision 1.9 retrieving revision 1.10 diff -C2 -d -r1.9 -r1.10 *** BilinearPatch.java 3 Jul 2005 04:37:36 -0000 1.9 --- BilinearPatch.java 24 Dec 2006 05:25:57 -0000 1.10 *************** *** 1,19 **** /* ! BilinearPatch.java ! Copyright (C) 2003 Gerardo Horvilleur Martinez ! ! This program is free software; you can redistribute it and/or ! modify it under the terms of the GNU General Public License ! as published by the Free Software Foundation; either version 2 ! of the License, or (at your option) any later version. ! ! This program is distributed in the hope that it will be useful, ! but WITHOUT ANY WARRANTY; without even the implied warranty of ! MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ! GNU General Public License for more details. ! ! You should have received a copy of the GNU General Public License ! along with this program; if not, write to the Free Software ! Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ --- 1,19 ---- /* ! BilinearPatch.java ! Copyright (C) 2003, 2006 Gerardo Horvilleur Martinez ! ! This program is free software; you can redistribute it and/or ! modify it under the terms of the GNU General Public License ! as published by the Free Software Foundation; either version 2 ! of the License, or (at your option) any later version. ! ! This program is distributed in the hope that it will be useful, ! but WITHOUT ANY WARRANTY; without even the implied warranty of ! MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ! GNU General Public License for more details. ! ! You should have received a copy of the GNU General Public License ! along with this program; if not, write to the Free Software ! Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ *************** *** 80,91 **** if (ul > vl) { result[0] = ! new BilinearPatch(linearInterpolateParameters(0f, .5f, 0f, 1f), attributes); result[1] = ! new BilinearPatch(linearInterpolateParameters(.5f, 1f, 0f, 1f), attributes); } else { result[0] = ! new BilinearPatch(linearInterpolateParameters(0f, 1f, 0f, .5f), attributes); result[1] = ! new BilinearPatch(linearInterpolateParameters(0f, 1f, .5f, 1f), attributes); } return result; --- 80,91 ---- if (ul > vl) { result[0] = ! new BilinearPatch(bilinearInterpolateParameters(0f, .5f, 0f, 1f), attributes); result[1] = ! new BilinearPatch(bilinearInterpolateParameters(.5f, 1f, 0f, 1f), attributes); } else { result[0] = ! new BilinearPatch(bilinearInterpolateParameters(0f, 1f, 0f, .5f), attributes); result[1] = ! new BilinearPatch(bilinearInterpolateParameters(0f, 1f, .5f, 1f), attributes); } return result; *************** *** 95,99 **** VaryingScalarTuple3f param = (VaryingScalarTuple3f) parameters.getParameter("P"); ! param.linearDice(sv.P); } --- 95,99 ---- VaryingScalarTuple3f param = (VaryingScalarTuple3f) parameters.getParameter("P"); ! param.bilinearDice(sv.P); } Index: ObjectInstance.java =================================================================== RCS file: /cvsroot/jrman/drafts/src/org/jrman/primitive/ObjectInstance.java,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** ObjectInstance.java 17 May 2003 21:47:57 -0000 1.2 --- ObjectInstance.java 24 Dec 2006 05:25:57 -0000 1.3 *************** *** 1,19 **** /* ! ObjectInstance.java ! Copyright (C) 2003 Gerardo Horvilleur Martinez ! ! This program is free software; you can redistribute it and/or ! modify it under the terms of the GNU General Public License ! as published by the Free Software Foundation; either version 2 ! of the License, or (at your option) any later version. ! ! This program is distributed in the hope that it will be useful, ! but WITHOUT ANY WARRANTY; without even the implied warranty of ! MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ! GNU General Public License for more details. ! ! You should have received a copy of the GNU General Public License ! along with this program; if not, write to the Free Software ! Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ --- 1,19 ---- /* ! ObjectInstance.java ! Copyright (C) 2003 Gerardo Horvilleur Martinez ! ! This program is free software; you can redistribute it and/or ! modify it under the terms of the GNU General Public License ! as published by the Free Software Foundation; either version 2 ! of the License, or (at your option) any later version. ! ! This program is distributed in the hope that it will be useful, ! but WITHOUT ANY WARRANTY; without even the implied warranty of ! MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ! GNU General Public License for more details. ! ! You should have received a copy of the GNU General Public License ! along with this program; if not, write to the Free Software ! Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ Index: NurbsRI.java =================================================================== RCS file: /cvsroot/jrman/drafts/src/org/jrman/primitive/NurbsRI.java,v retrieving revision 1.10 retrieving revision 1.11 diff -C2 -d -r1.10 -r1.11 *** NurbsRI.java 30 Nov 2005 03:08:26 -0000 1.10 --- NurbsRI.java 24 Dec 2006 05:25:57 -0000 1.11 *************** *** 1,19 **** /* ! Nurbs.java ! Copyright (C) 2004-2005 Gerardo Horvilleur Martinez, Elmer Garduno Hernandez ! ! This program is free software; you can redistribute it and/or ! modify it under the terms of the GNU General Public License ! as published by the Free Software Foundation; either version 2 ! of the License, or (at your option) any later version. ! ! This program is distributed in the hope that it will be useful, ! but WITHOUT ANY WARRANTY; without even the implied warranty of ! MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ! GNU General Public License for more details. ! ! You should have received a copy of the GNU General Public License ! along with this program; if not, write to the Free Software ! Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ package org.jrman.primitive; --- 1,19 ---- /* ! Nurbs.java ! Copyright (C) 2004-2006 Gerardo Horvilleur Martinez, Elmer Garduno Hernandez ! ! This program is free software; you can redistribute it and/or ! modify it under the terms of the GNU General Public License ! as published by the Free Software Foundation; either version 2 ! of the License, or (at your option) any later version. ! ! This program is distributed in the hope that it will be useful, ! but WITHOUT ANY WARRANTY; without even the implied warranty of ! MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ! GNU General Public License for more details. ! ! You should have received a copy of the GNU General Public License ! along with this program; if not, write to the Free Software ! Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ package org.jrman.primitive; *************** *** 290,294 **** Point4f[][] points) { ParameterList result = ! linearInterpolateParameters(umin, umax, vmin, vmax); int vpc = points.length; int upc = points[0].length; --- 290,294 ---- Point4f[][] points) { ParameterList result = ! bilinearInterpolateParameters(umin, umax, vmin, vmax); int vpc = points.length; int upc = points[0].length; Index: Cylinder.java =================================================================== RCS file: /cvsroot/jrman/drafts/src/org/jrman/primitive/Cylinder.java,v retrieving revision 1.7 retrieving revision 1.8 diff -C2 -d -r1.7 -r1.8 *** Cylinder.java 30 Nov 2003 03:23:16 -0000 1.7 --- Cylinder.java 24 Dec 2006 05:25:57 -0000 1.8 *************** *** 1,19 **** /* ! Cylinder.java ! Copyright (C) 2003 Gerardo Horvilleur Martinez ! ! This program is free software; you can redistribute it and/or ! modify it under the terms of the GNU General Public License ! as published by the Free Software Foundation; either version 2 ! of the License, or (at your option) any later version. ! ! This program is distributed in the hope that it will be useful, ! but WITHOUT ANY WARRANTY; without even the implied warranty of ! MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ! GNU General Public License for more details. ! ! You should have received a copy of the GNU General Public License ! along with this program; if not, write to the Free Software ! Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ --- 1,19 ---- /* ! Cylinder.java ! Copyright (C) 2003, 2006 Gerardo Horvilleur Martinez ! ! This program is free software; you can redistribute it and/or ! modify it under the terms of the GNU General Public License ! as published by the Free Software Foundation; either version 2 ! of the License, or (at your option) any later version. ! ! This program is distributed in the hope that it will be useful, ! but WITHOUT ANY WARRANTY; without even the implied warranty of ! MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ! GNU General Public License for more details. ! ! You should have received a copy of the GNU General Public License ! along with this program; if not, write to the Free Software ! Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ *************** *** 106,110 **** thetaMin, (thetaMin + thetaMax) / 2f, ! linearInterpolateParameters(0f, .5f, 0f, 1f), attributes); result[1] = --- 106,110 ---- thetaMin, (thetaMin + thetaMax) / 2f, ! bilinearInterpolateParameters(0f, .5f, 0f, 1f), attributes); result[1] = *************** *** 115,119 **** (thetaMin + thetaMax) / 2f, thetaMax, ! linearInterpolateParameters(.5f, 1f, 0f, 1f), attributes); result[0].setObjectToCamera(objectToCamera); --- 115,119 ---- (thetaMin + thetaMax) / 2f, thetaMax, ! bilinearInterpolateParameters(.5f, 1f, 0f, 1f), attributes); result[0].setObjectToCamera(objectToCamera); *************** *** 127,131 **** thetaMin, thetaMax, ! linearInterpolateParameters(0f, 1f, 0f, .5f), attributes); result[1] = --- 127,131 ---- thetaMin, thetaMax, ! bilinearInterpolateParameters(0f, 1f, 0f, .5f), attributes); result[1] = *************** *** 136,140 **** thetaMin, thetaMax, ! linearInterpolateParameters(0f, 1f, .5f, 1f), attributes); result[0].setObjectToCamera(objectToCamera); --- 136,140 ---- thetaMin, thetaMax, ! bilinearInterpolateParameters(0f, 1f, .5f, 1f), attributes); result[0].setObjectToCamera(objectToCamera); Index: BicubicPatch.java =================================================================== RCS file: /cvsroot/jrman/drafts/src/org/jrman/primitive/BicubicPatch.java,v retrieving revision 1.19 retrieving revision 1.20 diff -C2 -d -r1.19 -r1.20 *** BicubicPatch.java 11 Jan 2006 06:23:23 -0000 1.19 --- BicubicPatch.java 24 Dec 2006 05:25:57 -0000 1.20 *************** *** 1,19 **** /* ! BicubicPatch.java ! Copyright (C) 2004 Gerardo Horvilleur Martinez ! ! This program is free software; you can redistribute it and/or ! modify it under the terms of the GNU General Public License ! as published by the Free Software Foundation; either version 2 ! of the License, or (at your option) any later version. ! ! This program is distributed in the hope that it will be useful, ! but WITHOUT ANY WARRANTY; without even the implied warranty of ! MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ! GNU General Public License for more details. ! ! You should have received a copy of the GNU General Public License ! along with this program; if not, write to the Free Software ! Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ --- 1,19 ---- /* ! BicubicPatch.java ! Copyright (C) 2004, 2006 Gerardo Horvilleur Martinez ! ! This program is free software; you can redistribute it and/or ! modify it under the terms of the GNU General Public License ! as published by the Free Software Foundation; either version 2 ! of the License, or (at your option) any later version. ! ! This program is distributed in the hope that it will be useful, ! but WITHOUT ANY WARRANTY; without even the implied warranty of ! MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ! GNU General Public License for more details. ! ! You should have received a copy of the GNU General Public License ! along with this program; if not, write to the Free Software ! Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ *************** *** 286,290 **** float uv01, float uv11) { ! ParameterList result = linearInterpolateParameters(uv00, uv10, uv01, uv11); extractPoints(); VaryingScalarHPoint sparam = --- 286,291 ---- float uv01, float uv11) { ! ParameterList result = ! bilinearInterpolateParameters(uv00, uv10, uv01, uv11); extractPoints(); VaryingScalarHPoint sparam = Index: Quadric.java =================================================================== RCS file: /cvsroot/jrman/drafts/src/org/jrman/primitive/Quadric.java,v retrieving revision 1.14 retrieving revision 1.15 diff -C2 -d -r1.14 -r1.15 *** Quadric.java 25 Nov 2003 16:34:08 -0000 1.14 --- Quadric.java 24 Dec 2006 05:25:57 -0000 1.15 *************** *** 1,19 **** /* ! Quadric.java ! Copyright (C) 2003 Gerardo Horvilleur Martinez ! ! This program is free software; you can redistribute it and/or ! modify it under the terms of the GNU General Public License ! as published by the Free Software Foundation; either version 2 ! of the License, or (at your option) any later version. ! ! This program is distributed in the hope that it will be useful, ! but WITHOUT ANY WARRANTY; without even the implied warranty of ! MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ! GNU General Public License for more details. ! ! You should have received a copy of the GNU General Public License ! along with this program; if not, write to the Free Software ! Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ --- 1,1... [truncated message content] |