Example #1
0
Vector3 Frame::TransformVector(const Vector3& vec, const Date& t, const Frame& ref) const
{
	double transform[3][3];

	CSPICE_ASSERT(pxform_c(GetSpiceName().c_str(), ref.GetSpiceName().c_str(), t.AsDouble(), transform));

	double axisLocal[3] = {vec.x, vec.y, vec.z};
	double axisGlobal[3];

	CSPICE_ASSERT(mxv_c(transform, axisLocal, axisGlobal));

	return Vector3(axisGlobal);
}