$include_dir="/home/hyper-archives/boost/include"; include("$include_dir/msg-header.inc") ?>
Subject: Re: [boost] Preview 3 of the Geometry Library
From: Mathias Gaunard (mathias.gaunard_at_[hidden])
Date: 2008-10-21 14:58:51
Mathias Gaunard wrote:
> - specifying the coordinate system, which also defines the dimension.
Actually, this is wrong.
It doesn't specify a coordinate system, but a geometry.
That means the topology of space gets different, and thus rules of what 
objects are and can be in the space are different.
So the distance trait is no mere strategy: it actually defines the 
topology of the space.
I think it should clearly be redesigned to show that we are selecting a 
type of geometry, defining the space we're working on.
Instead of pythagoras/harvesine/vincenty, it should be 
euclidian/spherical/ellipsoid.
By the way, the objects need to be defined not only in a 
dimension-agnostic way, but also in a space-agnostic way.
Apart from that, allowing multiple coordinate systems within a given 
space would be fairly useless, and in Euclidian space the Cartesian 
system is the best choice since it was made for algebra and computations.
For example, points expressed in polar coordinates should automatically 
perform conversions from/to cartesian when using get.