Let me try:
*gt-metadata: *looks to just be data structure (Point3d and
MismatchedSizeException)
org.geotools.math.Line
org.geotools.math.Plane
*gt-referencing: *uses assorted exceptions, extends GMatrix, and
Matrix3d/Matrix4d multiply
org.geotools.referencing.operation.DefaultCoordinateOperationFactory
org.geotools.referencing.operation.builder.AdvancedAffineBuilder
org.geotools.referencing.operation.builder.AffineTransformBuilder
org.geotools.referencing.operation.builder.BursaWolfTransformBuilder
- Imports GMatrix but does not use it
org.geotools.referencing.operation.builder.MathTransformBuilder
org.geotools.referencing.operation.builder.ProjectiveTransformBuilder
org.geotools.referencing.operation.builder.RubberSheetBuilder
org.geotools.referencing.operation.builder.SimilarTransformBuilder
org.geotools.referencing.operation.matrix.GeneralMatrix
- extends GMatrix (this is the key integration point with vecmath)
org.geotools.referencing.operation.matrix.Matrix1.java
org.geotools.referencing.operation.matrix.Matrix2.java
org.geotools.referencing.operation.matrix.Matrix3.java
- uses Matrix3d.multiply
org.geotools.referencing.operation.matrix.Matrix4.java
- uses Matrix4d.multiply
org.geotools.referencing.operation.matrix.XMatrix.java
org.geotools.referencing.operation.transform.AbstractMathTransform
org.geotools.referencing.operation.transform.ProjectiveTransform
So it comes down to:
* Extending GMatrix
* delegating to Matricx3d multiply and Matrix4d.muiltiply
So we are stuck going through the GMatrix methods and seeing which ones are
called. Going to ignore things like constructors/equals/set/get (so we can
focus on where the math is used)
- GMatrix.add(GMatrix,GMatrix) - used by cglib-nodep-2.1_3.jar (not sure
what this is)
- GMatrix.invert() - called by AdvancedAffineBuilder,
BursaWolfTransformBuilderm ProjectiveTransformBuilder
- GMatrix.mul(GMatrix) called by BursaWolfTransformBuilder, GeneralMatrix
- GMatrix.mul(GMatrix,GMatrix) called by AdvancedAffineBuilder,
BursaWolfTransformBuilder, ProjectiveTransformBuilder, ConcatenatedTransform
- GMatrix.negate() called by AdvancedAffineBuilder,
BursaWolfTransformBuilder
- GMatrix.sub(GMatrix) called by MathTransformBuilderTest
- GMatrix.sub(GMatrix,GMatrix) called by AdvancedAffineBuilder,
BursaWolfTransformBuilder
- GMatrix.transform() called by AdvancedAffineBuilder,
BursaWolfTransformBuilder, ProjectiveTransformBuilder
Not quite sure what to make of that .. looks like multiply, invert, negate,
transform are our actual requirements.
--
Jody Garnett
On 4 February 2015 at 18:58, Eric Engle <een...@google.com> wrote:
> I've used almost all of those options at one time or another, but is there
> a synopsis of the vecmath features that are actually used within Geotools?
>
> On Wed, Feb 4, 2015 at 1:20 PM, Tyler Battle <tbat...@boundlessgeo.com>
> wrote:
>
>> Thanks to Jody, for pointing me at
>> http://docs.codehaus.org/display/GEOTOOLS/Replace+Vecmath
>>
>> Has anyone worked with any of these (or similar) libraries?
>>
>> When I have some free time, I'm going to try some of the drop-in (fingers
>> crossed) replacements. If there isn't a loss in performance, this would be
>> an easy short/medium term solution. Does anyone have any suggestions for
>> testing the performance of these libs?
>>
>> Switching to a more specialized library or rolling our own is also an
>> option. My expertise is very limited in this respect, so I'd need a lot of
>> help if we want to consider this option.
>>
>> --
>>
>> Tyler Battle
>>
>> Software Engineer| Boundless
>>
>> tbat...@boundlessgeo.com <cami...@boundlessgeo.com>
>>
>> Victoria, BC, Canada
>>
>>
>> <https://twitter.com/boundlessgeo>
>>
>>
>>
>> ------------------------------------------------------------------------------
>> Dive into the World of Parallel Programming. The Go Parallel Website,
>> sponsored by Intel and developed in partnership with Slashdot Media, is
>> your
>> hub for all things parallel software development, from weekly thought
>> leadership blogs to news, videos, case studies, tutorials and more. Take a
>> look and join the conversation now. http://goparallel.sourceforge.net/
>> _______________________________________________
>> GeoTools-Devel mailing list
>> GeoTools-Devel@lists.sourceforge.net
>> https://lists.sourceforge.net/lists/listinfo/geotools-devel
>>
>>
>
>
> ------------------------------------------------------------------------------
> Dive into the World of Parallel Programming. The Go Parallel Website,
> sponsored by Intel and developed in partnership with Slashdot Media, is
> your
> hub for all things parallel software development, from weekly thought
> leadership blogs to news, videos, case studies, tutorials and more. Take a
> look and join the conversation now. http://goparallel.sourceforge.net/
> _______________________________________________
> GeoTools-Devel mailing list
> GeoTools-Devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/geotools-devel
>
>
------------------------------------------------------------------------------
Dive into the World of Parallel Programming. The Go Parallel Website,
sponsored by Intel and developed in partnership with Slashdot Media, is your
hub for all things parallel software development, from weekly thought
leadership blogs to news, videos, case studies, tutorials and more. Take a
look and join the conversation now. http://goparallel.sourceforge.net/
_______________________________________________
GeoTools-Devel mailing list
GeoTools-Devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geotools-devel