I am trying to use boost.geometry with the integration of boost.units.
What I want to do is store a coordinate point (e.g: Cartesian or spherical)
which should be unit safe.(e.g a cartesian point with length unit meter
should give error with cross product is done with cartesian point with
length unit millimeter).
For this I am using boost::geometry::model::point.
Problems I am facing:
1. If I use something like boost::geometry::model::point<UnitClass, 3
,boost::geometry::cs::cartesian> then all the operations like cross product
and dot product will fail as units can not be multiplied and if we multiply
then dimensions and units will change.
2. suppose I want to use spherical 3d coordinate then
is cable accommodate only one type of class for all the underlying
dimension(eg: distance, longitude and latitude). But in real case distance
should be in length and longitude and latitude should be in angle unit.
Is there any way to integrate boost.units with boost.geometry for the
purpose I mentioned above.