Michael Bayne
41f62de088
getX -> x (in both the literal and algebraic sense).
...
In anticipation of the saying of nay, I offer this: these are value classes,
and in a civilized language, I wouldn't have setters either. "foo.x = x" would
call a setter method over which I had control. However, rather than throwing my
hands up and saying "Gee, I have to have verbose setters, so I guess I better
have verbose getters," I say, "I'll take what I can get."
Methods that verb can be verbs, and we can all agree to understand that methods
that are nouns are getters. foo.width() does not width my foo, it's my foo's
width. foo.invert() inverts up my foo, it is not some attribute of my foo's
nonsensically named invert. I don't want to add my foo's getWidth and
getHeight, I want to add my foo's width and height. So why should I have to
type get over and over again just because I want to protect myself from future
representation change? (Or in this case, to offer immutable views of my value
classes.)
2011-08-12 10:19:37 -07:00
Michael Bayne
a537b6627d
Fixed typo.
2011-08-05 16:47:39 -07:00
Michael Bayne
5e7529d969
Fixed bug in getTy().
2011-08-05 16:45:49 -07:00
Michael Bayne
e7cfc6c350
Fixed translate() methods.
2011-08-05 16:45:32 -07:00
Michael Bayne
e21872e686
GLSL uses column-major matrices, so let's use those as well to avoid confusing
...
mismatch.
2011-08-05 13:56:13 -07:00
Michael Bayne
1cb8b8bff5
Better error reporting on test failure.
2011-08-05 13:55:57 -07:00
Michael Bayne
1936e20380
Fixed FloatMath.toString(), added tests.
2011-07-29 11:00:20 -07:00
Michael Bayne
92f6e0932f
Added an SBT build.
2011-07-22 15:56:43 -07:00
Michael Bayne
102fb340b7
Improved float value formatting.
2011-07-19 09:33:17 -07:00
Michael Bayne
d3b91156b0
Removed IEEERemainder for GWT compatibility.
2011-07-12 07:27:02 -07:00
Michael Bayne
e90f70a0f6
Implemented affine inverse transforms without creating an intermediate inverted
...
transform.
2011-07-11 14:41:34 -07:00
Michael Bayne
ede16ab724
Added ZERO.
2011-07-07 16:08:24 -07:00
Michael Bayne
3206fde292
Moved AffineTransform multiplication methods into Transforms so that
...
performance sensitive callers can make use of them.
2011-07-07 13:43:43 -07:00
Michael Bayne
d241c06771
Use ooojavac to compile test sources as well.
2011-07-07 10:54:41 -07:00
Michael Bayne
1d7ef7cdf7
Added methods to concatenate a translation, rotation or scale directly onto an
...
existing transform.
2011-07-06 14:13:21 -07:00
Michael Bayne
6eda0bb25e
Might as well just lerp directly here.
2011-07-06 13:19:19 -07:00
Michael Bayne
6ee9bcda7e
Reworked intro, added credit to Clyde, from whence much of this transform code
...
originated (though it is now heavily transformed, ha!).
2011-07-06 13:13:52 -07:00
Michael Bayne
aa0fe0f87c
Great big transform revamp.
...
We now have a Transform interface and a bevy of implementations of varying
generality: identity, rigid body, uniform scaling, non-uniform scaling, and
affine.
Along the way, Vector was added, APIs were tidied up, bits were twiddled, but
no platonic shapes were harmed.
2011-07-06 13:08:12 -07:00
Michael Bayne
b6f87af8a0
Added Vector and friends, and Transform interface.
2011-07-05 09:29:36 -07:00
Michael Bayne
339ea761d1
Use FloatMath for our float math.
2011-07-05 09:06:32 -07:00
Michael Bayne
b1c9545f04
Fixed typo.
2011-07-05 09:02:16 -07:00
Michael Bayne
cbacc4ddac
Utility methods and constants for single-precision floating point math.
2011-07-05 09:01:30 -07:00
Michael Bayne
eb56f394ae
Javadoc and clone() improvements.
2011-07-01 16:59:32 -07:00
Michael Bayne
71debc6a17
Moved static factory methods to top of class.
2011-07-01 16:34:05 -07:00
Michael Bayne
fd11be72ee
Documented AffineTransform.
2011-07-01 16:33:13 -07:00
Michael Bayne
9d431ee9fd
Use tx, ty for translation rather than mx, my.
2011-07-01 16:11:24 -07:00
Michael Bayne
246fc97e3f
Reduction in garbage generation.
...
Allow inverse to be computed and stored into target transform. Avoid needless
transform creation in concatenate/preConcatente. Still need to rewrite all the
methods that call getFooInstance.
2011-07-01 16:07:59 -07:00
Michael Bayne
ab28f8390e
Removed code duplication. Fixed bug in setTransform(t).
2011-07-01 15:59:52 -07:00
Michael Bayne
ff27ebcb6a
NonInvertibleTransformException improvements.
...
We only need one copy of this class, and it dang well better not be a checked
exception.
2011-07-01 15:53:52 -07:00
Michael Bayne
d82f957f5c
Added getMin/getMax/getCenter to f/d rectangular shape.
2011-07-01 15:16:52 -07:00
Michael Bayne
043e8fd2e2
Merge pull request #3 from groves/master
...
Use ooo-build to get the maven caching that I so love
2011-06-30 13:25:51 -07:00
Charlie Groves
267c15d9c9
Use ooo-build
2011-06-30 12:53:16 -07:00
Michael Bayne
8931a6aa97
Use latest sonatype oss parent pom.
2011-06-28 13:11:31 -07:00
Michael Bayne
321b3bc565
Nixed unused import.
2011-06-28 13:07:17 -07:00
Michael Bayne
27b2b3b3ee
No more committed Eclipse files. Use m2e.
2011-06-28 13:06:34 -07:00
Michael Bayne
4fdfbee77e
More efficient and actually works. Yay!
2011-06-27 17:34:55 -07:00
Michael Bayne
d549f0b136
No need to recheck the winding rule when cloning.
2011-06-27 17:34:41 -07:00
Michael Bayne
684c92c59e
A bunch of finagling to work around GWT limitations.
2011-06-27 16:17:38 -07:00
Michael Bayne
7a3da3b08c
Added a GWT module declaration file.
2011-06-27 14:43:46 -07:00
Michael Bayne
c521fcd74e
Merge pull request #2 from deadmoose/master
...
Some more cleanup
2011-06-13 14:23:35 -07:00
Michael Bayne
402711b766
Oh god, more grammatic tweaks.
2011-06-13 14:02:52 -07:00
Michael Bayne
de9e5217be
Some editing of the performance notes
2011-06-13 14:01:59 -07:00
Michael Bayne
e79813cc0f
Grr, Markdown doesn't do the right thing with multi-paragraph line items.
2011-06-13 13:59:49 -07:00
Michael Bayne
087f91bfd5
Added a blurb about the read-only interfaces.
2011-06-13 13:59:27 -07:00
Michael Bayne
0dcc0c08e8
Documentation clarification.
2011-06-13 13:48:07 -07:00
Michael Bayne
e274c30e0e
Rationale reorganization.
2011-06-13 13:44:14 -07:00
Michael Bayne
926aa4d51a
Consolidated docs.
2011-06-13 13:42:15 -07:00
Michael Bayne
5ffffebef6
Added link to API docs and info on Maven artifact.
2011-06-13 13:41:14 -07:00
Michael Bayne
058862068f
[maven-release-plugin] prepare for next development iteration
2011-06-13 13:29:46 -07:00
Michael Bayne
f1337ae0ad
[maven-release-plugin] prepare release pythagoras-1.0
2011-06-13 13:29:42 -07:00