Example #1
0
vec3 mat3::transformVector(const vec3 &v) const {
	vec3 temp;
	
	temp.x = v.dot(getAxisX());
	temp.y = v.dot(getAxisY());
	temp.z = v.dot(getAxisZ());
	
	return temp;
}
Transform OrientedBox::getTransform_l2p ( void ) const
{
	Transform temp;

	temp.setLocalFrameIJK_p( getAxisX(), getAxisY(), getAxisZ() );
	temp.move_p( m_center );

	return temp;
}
Vector OrientedBox::rotateToLocal ( Vector const & V ) const
{
	Vector temp;

	temp.x = V.dot(getAxisX());
	temp.y = V.dot(getAxisY());
	temp.z = V.dot(getAxisZ());

	return temp;
}
Vector OrientedBox::rotateToWorld ( Vector const & V ) const
{
    Vector temp = Vector::zero;

	temp += getAxisX() * V.x;
	temp += getAxisY() * V.y;
	temp += getAxisZ() * V.z;

	return temp;
}
void Matr4::translateLocal(AxisType dir, Real trans, bool preTransform)
{
   Vect4 axis;
   switch (dir) {
      case Axis_X:
         axis = getAxisX();
   	   break;
      case Axis_Y:
         axis = getAxisY();
         break;
      case Axis_Z:
         axis = getAxisZ();
         break;
   }
   axis.scale(trans);
   translate(axis, preTransform);

   return;
}