From: Gerrit V. <vo...@ca...> - 2008-05-30 11:12:27
|
Hi, On Wed, 2008-05-28 at 15:45 -0500, tra...@vr... wrote: > Author: cneumann > Date: Wed May 28 15:45:12 2008 > New Revision: 1253 > Trac changeset: http://opensg.vrsource.org/trac/changeset/1253 > ViewVC: http://realityforge.vrsource.org/viewvc/opensg?view=rev&revision=1253 > > Modified: > changed: reduced the number of matrix * {pnt, vec} multiplication functions > and shortened their names. what I don't understand is you took out some functions just to put them back in as free functions. So why change these at all, that doesn't seem to make sense to me. On the operator side if the lhs of an operator is one of our classes it should be inside this class. Cluttering the global osg namespace is quite annoying as all the possible variants are listed in case of errors. So you get totally unrelated suggestions as to which possible operators are available. I'm also not sure where they will show up in the documentation. So can we put these operators back into the classes they belong. I only see exceptions if the lhs is not of our type or if you get order conflicts, like having operator *(Pnt &rhs) inside Matrix and operator *(Matrix &rhs) inside point. If resolving this results in ugly include orders free operators can be used as the last resort. kind regards, gerrit |