2010-05-20 Karsten Schmidt <k@postspectacular.com>
* src.core/toxi/geom/Line2D.java, src.core/toxi/geom/Polygon2D.java,
src.core/toxi/geom/Ray2D.java, src.core/toxi/geom/Ray3D.java,
src.core/toxi/geom/ReadonlyVec2D.java,
src.core/toxi/geom/ReadonlyVec3D.java, src.core/toxi/geom/Rect.java,
src.core/toxi/geom/Spline2D.java,
src.core/toxi/geom/Triangle2D.java, src.core/toxi/geom/Vec2D.java,
src.core/toxi/geom/Vec3D.java,
src.physics/toxi/physics/VerletParticle.java,
src.physics/toxi/physics2d/VerletParticle2D.java,
src.test/toxi/test/JAXBGeomTest.java,
src.test/toxi/test/geom/PolygonTest.java,
src.test/toxi/test/geom/Triangle2DTest.java:
extracted ReadonlyVec2D interface and updated all resulting changes
through all packages, also further updates to usage of 2D/3D
immutable types within other classes, needs further performance
testing and can possibly avoid separate versions for immutables
[5d59113bd38e] <vec3drefactor>
2010-05-19 Karsten Schmidt <k@postspectacular.com>
* src.physics/toxi/physics/constraints/BoxConstraint.java:
bug fix BoxConstraint to handle collisions based on actual particle
velocity and adding restitution handling
[867cb87c6a5d] <toxiclibs>
* src.physics/toxi/physics/VerletParticle.java,
src.physics/toxi/physics2d/VerletParticle2D.java:
adding getVelocity() and setPreviousPosition() methods
[2452f1469901] <toxiclibs>
2010-04-06 Karsten Schmidt <k@postspectacular.com>
* src.physics/toxi/physics/VerletParticle.java,
src.physics/toxi/physics2d/VerletParticle2D.java:
adding getInvWeight() and making this & other getters final
[70131b3a93c8] <toxiclibs>
2010-03-10 Karsten Schmidt <k@postspectacular.com>
* src.physics/toxi/physics/ParticlePath.java,
src.physics/toxi/physics2d/ParticlePath2D.java:
updating ParticlePath2D/3D to reflect changes to
Spline2D/3D.getDecimatedVertices()
[6c87a05d5f5a] <toxiclibs>
2010-02-23 Karsten Schmidt <k@postspectacular.com>
* src.physics/toxi/physics2d/ParticleString2D.java:
refactored, now using an internal copy of the pos parameter vector
for linear string constructor so that original doesn't get changed
[46ebc21a8b58] <toxiclibs>
* src.physics/toxi/physics/ParticleString.java:
refactored, now using an internal copy of the pos parameter vector
for linear string constructor so that original doesn't get changed
[5e129370ae61] <toxiclibs>
2010-02-16 Karsten Schmidt <k@postspectacular.com>
* src.physics/toxi/physics2d/ParticlePath2D.java,
src.physics/toxi/physics2d/ParticleString2D.java:
adding 2D versions of ParticlePath & ParticleString classes
[bb4b51a16e6b] <toxiclibs>
* src.physics/toxi/physics/ParticleString.java:
fixing javadocs
[fe54cb6b1e5d] <toxiclibs>
2010-02-05 Karsten Schmidt <k@postspectacular.com>
* examples/physics/BoxConstraintDemo/BoxConstraintDemo.pde,
examples/physics/BoxFluidDemo/BoxFluidDemo.pde,
examples/physics/BoxFluidDemo/Mesh.pde,
examples/physics/BoxFluidDemo/Physics.pde,
examples/physics/SoftBodySquare/SoftBodySquare.pde,
examples/physics/ThreadSphere/ThreadSphere.pde,
src.physics/toxi/physics/VerletPhysics.java,
src.physics/toxi/physics/VerletSpring.java,
src.physics/toxi/physics2d/VerletPhysics2D.java,
src.physics/toxi/physics2d/VerletSpring2D.java:
renaming friction into drag, making it along with all other physics
engine parameters protected, adding getters & setters instead of
direct field access, updating all physics demos to reflect these
changes
[a461cb72edef] <toxiclibs>
* ant/build_physics.xml, src.physics/toxi/physics/VerletPhysics.java,
src.physics/toxi/physics2d/VerletPhysics2D.java:
setting default timestep to 1.0 to adapt to improved mass/velocity
logic, updating version number to 0006 in build file
[e0333f818db1] <toxiclibs>
2010-01-20 Karsten Schmidt <k@postspectacular.com>
* src.physics/toxi/physics2d/constraints/CircularConstraint.java:
updating changes to Circle class in CircularConstraint
[723493c85813] <toxiclibs>
2010-01-18 Karsten Schmidt <k@postspectacular.com>
* src.physics/toxi/physics/constraints/PlaneConstraint.java,
src.physics/toxi/physics/constraints/SphereConstraint.java,
src.physics/toxi/physics2d/constraints/RectConstraint.java:
fixing SphereConstraint to work with spheres not located at world
origin, minor updates to PlaneConstraint & RectConstraint
[0aae684d9cf1] <toxiclibs>
* src.physics/toxi/physics/constraints/MaxConstraint.java,
src.physics/toxi/physics/constraints/MinConstraint.java,
src.physics/toxi/physics/constraints/MinXConstraint.java,
src.physics/toxi/physics/constraints/MinYConstraint.java,
src.physics/toxi/physics/constraints/MinZConstraint.java,
src.physics/toxi/physics2d/constraints/MaxConstraint.java,
src.physics/toxi/physics2d/constraints/MinConstraint.java:
refactoring MinX/Y/ZConstraint (removed) into MinConstraint only,
but using Vec2D/3D's new reflective Axis accessors for flexibility,
adding MaxConstraint too
[3288724742d9] <toxiclibs>
* src.physics/toxi/physics/VerletPhysics.java,
src.physics/toxi/physics2d/VerletPhysics2D.java:
refactoring force application when updating particles to be more
correct (at least according to teknikus paper), adding static
addConstraintToAll() & removeConstraintFromAll() methods, removing
protected & now obsolete applyGravity() method
[cdb3c5bd47cc] <toxiclibs>
* src.physics/toxi/physics/VerletConstrainedSpring.java,
src.physics/toxi/physics/VerletMinDistanceSpring.java,
src.physics/toxi/physics/VerletSpring.java,
src.physics/toxi/physics2d/VerletConstrainedSpring2D.java,
src.physics/toxi/physics2d/VerletMinDistanceSpring2D.java,
src.physics/toxi/physics2d/VerletSpring2D.java:
updating all spring classes to use new invWeight field of
VerletParticle (2D & 3D versions)
[0930e9d64ac4] <toxiclibs>
* src.physics/toxi/physics/VerletParticle.java,
src.physics/toxi/physics2d/VerletParticle2D.java:
correcting & improving velocity handling, adding addVelocity(),
clearVelocity(), scaleVelocity(), weight is now protected and has
getter/setter, added invWeight field to speed up spring computations
[7c257637070e] <toxiclibs>
* src.physics/toxi/physics/ParticleString.java:
adding clear() method & javadocs for all
[d7235b643de5] <toxiclibs>
2010-01-17 Karsten Schmidt <k@postspectacular.com>
* src.physics/toxi/physics/ParticlePath.java:
createParticles() now also calls computeVertices() on the parent
spline
[d52ca1319f80] <toxiclibs>
2010-01-06 Karsten Schmidt <k@postspectacular.com>
* src.physics/toxi/physics/constraints/AxisConstraint.java,
src.physics/toxi/physics/constraints/CylinderConstraint.java,
src.physics/toxi/physics/constraints/PlaneConstraint.java,
src.physics/toxi/physics/constraints/SoftBoxConstraint.java,
src.physics/toxi/physics/constraints/XAxisConstraint.java,
src.physics/toxi/physics/constraints/YAxisConstraint.java,
src.physics/toxi/physics/constraints/ZAxisConstraint.java,
src.physics/toxi/physics/constraints/ZAxisCylinderConstraint.java,
src.physics/toxi/physics2d/constraints/AxisConstraint.java,
src.physics/toxi/physics2d/constraints/CircularConstraint.java,
src.physics/toxi/physics2d/constraints/RectConstraint.java,
src.physics/toxi/physics2d/constraints/XAxisConstraint.java,
src.physics/toxi/physics2d/constraints/YAxisConstraint.java:
refactoring ParticleConstraints to utilize new Axis enums in
Vec2D/3D. replacing X/Y/ZAxisConstraint with new PlaneConstraint
class, adding AxisConstraint to only restrict a single axis,
replacing ZAxisCylinderConstraint with the more generic
CylinderConstraint, adding SoftBoxConstraint. for 2D also adding
Circular & RectConstraint
[d135e5d54150] <toxiclibs>
2010-01-05 Karsten Schmidt <k@postspectacular.com>
* src.physics/toxi/physics/ParticlePath.java,
src.physics/toxi/physics/ParticleString.java,
src.physics/toxi/physics/VerletPhysics.java,
src.physics/toxi/physics/constraints/BoxConstraint.java,
src.physics/toxi/physics/constraints/MinXConstraint.java,
src.physics/toxi/physics/constraints/MinYConstraint.java,
src.physics/toxi/physics/constraints/MinZConstraint.java,
src.physics/toxi/physics/constraints/SoftBoxConstraint.java,
src.physics/toxi/physics/constraints/ZAxisCylinderConstraint.java:
adding 3D ParticlePath, ParticleString and various new constraint
types (box, min, softbox, z-cylinder)
[38f7a3fa6b66] <toxiclibs>
2009-11-15 Karsten Schmidt <k@postspectacular.com>
* src.physics/toxi/physics/VerletParticle.java,
src.physics/toxi/physics2d/VerletParticle2D.java:
added isLocked() checks to VerletParticle classes
[7312c565cb18] <toxiclibs>
2009-06-14 Karsten Schmidt <k@postspectacular.com>
* ant/build_physics.xml,
src.physics/toxi/physics2d/VerletParticle2D.java,
src.physics/toxi/physics2d/VerletSpring2D.java:
bug fix in VerletParticle2D.removeConstraint() which wrongly
expected a 3D constraint instance, now correctly wants
Particle2DConstraint
[50a7c38a4b00] <toxiclibs>
2009-04-04 Karsten Schmidt <k@postspectacular.com>
* src.physics/toxi/physics/VerletPhysics.java,
src.physics/toxi/physics2d/VerletParticle2D.java,
src.physics/toxi/physics2d/VerletPhysics2D.java:
added getCurrentBounds() methods to VerletPhysics to return bounding
box/rect of current particle positions (useful for view fitting)
[ac80564163bd] <toxiclibs>
2009-03-22 Karsten Schmidt <k@postspectacular.com>
* src.physics/toxi/physics/VerletParticle.java,
src.physics/toxi/physics/constraints/ParticleConstraint.java,
src.physics/toxi/physics/constraints/SphereConstraint.java,
src.physics/toxi/physics2d/VerletParticle2D.java:
made applyConstraints() public, slight refactoring in
SphereConstraint and added Javadocs
[5bcd30f458a9] <toxiclibs>
* src.physics/toxi/physics/VerletParticle.java,
src.physics/toxi/physics2d/VerletParticle2D.java:
added missing addConstraint & removeConstraint methods to particle
classes
[c2ea1a96dfd1] <toxiclibs>
2009-03-16 Karsten Schmidt <k@postspectacular.com>
* readme1st/physics/CHANGELOG.txt,
src.physics/toxi/physics/VerletConstrainedSpring.java,
src.physics/toxi/physics/VerletParticle.java,
src.physics/toxi/physics/VerletSpring.java,
src.physics/toxi/physics/constraints/ParticleConstraint.java,
src.physics/toxi/physics/constraints/SphereConstraint.java,
src.physics/toxi/physics2d/VerletConstrainedSpring2D.java,
src.physics/toxi/physics2d/VerletParticle2D.java,
src.physics/toxi/physics2d/VerletSpring2D.java,
src.physics/toxi/physics2d/constraints/Particle2DConstraint.java:
adding SphereConstraint for 3D particles physics and refactored
particle constraints into a 1:M relationship
[cbcba1cf38f1] <toxiclibs>
2008-12-07 Karsten Schmidt <k@postspectacular.com>
* .classpath, lib/gluegen-rt.jar,
src.image/toxi/color/ColorAccessCriteria.java,
src.physics/toxi/physics/VerletPhysics.java,
src.physics/toxi/physics2d/VerletPhysics2D.java:
more new syntax fixes to verletphysics & color, added JOAL libs to
classpath
[f1d0d3a00fc3] <toxiclibs>
2008-11-29 Karsten Schmidt <k@postspectacular.com>
* src.physics/toxi/physics/VerletConstrainedSpring.java,
src.physics/toxi/physics/VerletMinDistanceSpring.java,
src.physics/toxi/physics/VerletParticle.java,
src.physics/toxi/physics/VerletPhysics.java,
src.physics/toxi/physics/VerletSpring.java,
src.physics/toxi/physics2d/VerletConstrainedSpring.java,
src.physics/toxi/physics2d/VerletConstrainedSpring2D.java,
src.physics/toxi/physics2d/VerletMinDistanceSpring.java,
src.physics/toxi/physics2d/VerletMinDistanceSpring2D.java,
src.physics/toxi/physics2d/VerletParticle2D.java,
src.physics/toxi/physics2d/VerletPhysics2D.java,
src.physics/toxi/physics2d/VerletSpring2D.java,
src.physics/toxi/physics2d/constraints/AngularConstraint.java:
refactoring of all spring updates (particle constraints are now only
applied in last iteration of time step), made spring restLength and
strength protected and added accessors, added accessor for previous
position to VerletParticle, added AngularConstraint to 2D physics
[7b59d4ae514a] <toxiclibs>
2008-11-15 Karsten Schmidt <k@postspectacular.com>
* ant/build_geom.xml, ant/build_physics.xml,
src.geom/toxi/geom/Vec2D.java,
src.physics/toxi/physics/VerletParticle.java,
src.physics/toxi/physics/constraints/IParticleConstraint.java,
src.physics/toxi/physics/constraints/ParticleConstraint.java,
src.physics/toxi/physics/constraints/XAxisConstraint.java,
src.physics/toxi/physics/constraints/YAxisConstraint.java,
src.physics/toxi/physics/constraints/ZAxisConstraint.java,
src.physics/toxi/physics2d/VerletConstrainedSpring.java,
src.physics/toxi/physics2d/VerletMinDistanceSpring.java,
src.physics/toxi/physics2d/VerletParticle2D.java,
src.physics/toxi/physics2d/VerletPhysics2D.java,
src.physics/toxi/physics2d/VerletSpring2D.java,
src.physics/toxi/physics2d/constraints/Particle2DConstraint.java,
src.physics/toxi/physics2d/constraints/XAxisConstraint.java,
src.physics/toxi/physics2d/constraints/YAxisConstraint.java:
added 2d version of physics engine, renamed IParticleConstraint into
ParticleConstraint, added getPerpenticular() to Vec2D, updated ant
build files for next version
[12923138fd74] <toxiclibs>
2008-10-21 Karsten Schmidt <k@postspectacular.com>
* src.physics/toxi/physics/VerletParticle.java,
src.physics/toxi/physics/constraints/XAxisConstraint.java,
src.physics/toxi/physics/constraints/YAxisConstraint.java,
src.physics/toxi/physics/constraints/ZAxisConstraint.java:
added call to applyConstraint() in update() to also catch particles
which are not connected with springs. Added more javadocs too
[094f1f39cf5d] <toxiclibs>
2008-10-06 Karsten Schmidt <k@postspectacular.com>
* .classpath, README, src.physics/toxi/physics/VerletParticle.java,
src.physics/toxi/physics/constraints/IParticleConstraint.java,
src.physics/toxi/physics/constraints/XAxisConstraint.java,
src.physics/toxi/physics/constraints/YAxisConstraint.java,
src.physics/toxi/physics/constraints/ZAxisConstraint.java:
moved constraints into subpackage and fixed build path issues
[2e83133b4530] <toxiclibs>
* src.physics/toxi/physics/VerletConstrainedSpring.java,
src.physics/toxi/physics/VerletParticle.java,
src.physics/toxi/physics/VerletSpring.java,
src.physics/toxi/physics/constraints/IParticleConstraint.java,
src.physics/toxi/physics/constraints/XAxisConstraint.java,
src.physics/toxi/physics/constraints/YAxisConstraint.java,
src.physics/toxi/physics/constraints/ZAxisConstraint.java:
slight refactoring of VerletParticle to add constraint mechanism
[7b29c7cf33fb] <toxiclibs>
2008-09-24 Karsten Schmidt <k@postspectacular.com>
* src.physics/toxi/physics/VerletPhysics.java:
fixed bug in alternate constructor which didn't initialize the
particle & spring arraylists. Thanks Aaron! :)
[04b40f631804] <toxiclibs>
2008-09-19 Karsten Schmidt <k@postspectacular.com>
* src.physics/toxi/physics/VerletMinDistanceSpring.java,
src.physics/toxi/physics/VerletPhysics.java:
added MinDistanceSpring class and removal methods for springs and
particles to VerletPhysics
[85366c8af039] <toxiclibs>
2008-07-22 Karsten Schmidt <k@postspectacular.com>
* src.physics/toxi/physics/VerletConstrainedSpring.java,
src.physics/toxi/physics/VerletParticle.java,
src.physics/toxi/physics/VerletPhysics.java,
src.physics/toxi/physics/VerletSpring.java:
added check for duplicates to addSpring(), added javadocs, new class
VerletConstrainedSpring and minor refactoring
[4c52f83b8293] <toxiclibs>
2008-07-17 Karsten Schmidt <k@postspectacular.com>
* .classpath, CHANGELOG, LICENSE, LICENSE.txt, ant/build_geom.xml,
ant/build_physics.xml, examples/geom/SplineBlobTest/Spine.pde,
examples/geom/SplineBlobTest/SpineSplineBlob.pde,
examples/geom/SplineBlobTest/SplineBlob.pde,
examples/geom/SplineBlobTest/SplineBlobTest.pde,
readme/geom/README.txt, readme/physics/README.txt,
readme/prefs/README.txt, src.geom/toxi/geom/Spline3D.java,
src.geom/toxi/physics/VerletParticle.java,
src.geom/toxi/physics/VerletPhysics.java,
src.geom/toxi/physics/VerletSpring.java,
src.physics/toxi/physics/VerletParticle.java,
src.physics/toxi/physics/VerletPhysics.java,
src.physics/toxi/physics/VerletSpring.java:
still restructuring project layout for easier builds (this might be
semi-broken though at this point)
[6e2b3abb5ebc] <toxiclibs>