From: Amitha P. <pe...@cs...> - 2002-10-17 17:19:36
|
"Wheeler, Fred (Research)" <wh...@cr...> writes: > MSVC 6 has been having some trouble with VXL the past couple of days. There is a problem with > multiplying two vnl_matrix_fixed objects. I've been poking at this, but do not know enough about the > vnl regular/fixed magic to fix it. Ian Scott recently (in the last few days) committed a change to vnl that may fix the problem. It seems that VS 6 has trouble determining template parameters and overloads for the built-in operator*. A temporary solution would be to change the multiplication to be E2.ref() * L.ref(). This has the same effect as the explicit conversions you tried, but is much cheaper. > // multiplying by a vector compiles fine > > vnl_double_3 x; > E2 * x; Hmm. Since this works, does static_cast<vnl_matrix_fixed<double,3,3>&>(E2) * static_cast<vnl_matrix_fixed<double,3,3>&>(x); work? Amitha. |