From: Noah Stein (Noah_at_[hidden])
Date: 2003-05-22 03:14:59
> -----Original Message-----
> From: boost-bounces_at_[hidden]
> [mailto:boost-bounces_at_[hidden]]On Behalf Of Andrew J. P. Maclean
> Sent: Wednesday, May 21, 2003 4:48 PM
> To: 'Reece Dunn'; boost_at_[hidden]
> Subject: RE: [boost] proposal for efficient geom. vector class
> You also need the full set of homogeneous transforms.
> This is essential in performing perspective transforms and also
> simplifies working with affine transforms and helps to clearly
> distinguish between points and vectors. A point has 1 as the forth
> coordinate and a vector has 0. In fact this can be generalised to:
> "A n-dimensional point has 1 as the (n+1)th coordinate and a vector has
> 0 as the (n+1)th coordinate."
> This makes handling of affine transformations easy.
> Check out:
> "Computer Graphics using Open GL" F.S. Hill Prentice Hall
> "Computer Graphics Principles and Practise in C", Foley et.al.
> Addison Wesley
If you have access to the ACM's digital library, I highly recommend reading
the following paper:
It has IMHO an excellent discussion of different vector spaces and their
issues in regards computer graphics. It points out a number of subtleties
that really should be considered in a geometric vector library.
I've fooled with the basics of a few different libraries for geometric
vectors. From my experience, I'd have to say that there are a number of
gotchas. If anyone wants, I can try scouring my hard drive and possibly
post one or more of my implementations to the sandbox.
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk