thanks for your reply
Michael Platings wrote: > However that could lead to people doing > mat.setTrans(...) > mat.setRotation(...) > mat.setScale(...) > and then wondering why setting the rotation didn't have any effect (setting > the scale would overwrite it). okay, i wasn't aware of setRotation overwriting the scale. since setTrans doesn't overwrite the basis i consider this as inconsistent. would have been a nasty surprise if i tried to use this in the way i understood it... what i ment was setScale should of course maintain the rotation and just normalize and then scale the basis. but nevermind, the matrix interface is inconsistent anyway. Michael Platings wrote: > matA.invert(matB) sets matA to be the inverse of matB. this doesn't make any sense to me. if i want to invert a matrix, i would expect a method for that... Michael Platings wrote: > However something that doesn't make sense to me is why to get the inverse of > a matrix you have to do Matrix::inverse(mat) rather than just mat.inverse(). you're perfectly right. well, that there are static and non-static methods doing the same job is just fine (albeit the names are misleading sometimes), but in the case of invert the interface is just circuitous. i mean: m.inverse( m ); ? btw: i am not the only one struggling with the matrix interface, maybe it would be worth the thought of re-engineering it? Michael Platings wrote: > The MatrixTransform needs to know when its matrix has been modified so that > it can set its flags to dirty. oh. you're right, thanks. ------------------------ ithrak (Jason Fisher) ------------------ Read this topic online here: http://forum.openscenegraph.org/viewtopic.php?p=26829#26829 _______________________________________________ osg-users mailing list [email protected] http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org

