/// <summary> /// Creates a right-handed view trafo, where z-negative points into the scene. /// </summary> public static Trafo3d ViewTrafoRH(V3d location, V3d up, V3d forward) { return(Trafo3d.ViewTrafo(location, forward.Cross(up), up, -forward)); }
/// <summary> /// Creates a left-handed view trafo, where z-positive points into the scene. /// </summary> public static Trafo3d ViewTrafoLH(V3d location, V3d up, V3d forward) { return(Trafo3d.ViewTrafo(location, up.Cross(forward), up, forward)); }
/// <summary> /// Sets location and axes in a single transaction. /// </summary> public void Set(V3d location, V3d right, V3d up, V3d forward) { m_trafo = Trafo3d.ViewTrafo(location, right, up, -forward); m_trafoChanges.Emit(m_trafo); }