Hi Andrew,

2013/5/29 Andrew Hundt <athundt@gmail.com>
I recommend taking a look at how eigen does things for ideas before any major design decisions, and consider the possibility of directly integrating with ublas as well once you start getting into real matrix operations.


I've taken a look but this is linear algebra library and this probably is out of scope of Boost.Geometry. We should probably only support generation and use of various components of transformations, i.e. translation, rotations and scale. Also, allow to connect those components together to form a transformation. And of course, allow easy adaptation of vectors, matrices, quaternions, etc. from other libraries.
 
You may also want to have a pose object that defines the relative position and orientation of the object in space, for both 2D and 3D. This is closely related to a transform but in many cases more useful/easier to use. Given an object with one pose you can simply provide a function with the object, pose and the new desired pose, rather than having to construct a transform from one to the other. Of course this is not exclusive to the transform functions, and they should exist as well.

https://en.wikipedia.org/wiki/Pose_(computer_vision)


Thanks for the reminder. For now it would be good to provide building blocks which might be used to construct some representation of a pose. Because AFAIK pose may have various representations, e.g. position point and direction vector, point/translation and angle/rotation, probably transformation matrix, etc.

Regards,
Adam