示例#1
0
 /// <summary>
 /// Rotate transformation with local delta pitch yaw roll
 /// </summary>
 /// <param name="tr"></param>
 /// <param name="q">Delta quaternion</param>
 public static void LocalRotate(this ElementTransformation tr, Quaternion q)
 {
     tr.Rotation = Quaternion.Normalize(q * tr.Rotation);
 }
示例#2
0
 /// <summary>
 /// Rotate transformation with global delta quaternion
 /// </summary>
 /// <param name="tr"></param>
 /// <param name="q">Delta quaternion</param>
 public static void GlobalRotate(this ElementTransformation tr, Quaternion q)
 {
     tr.Rotation = Quaternion.Normalize(tr.Rotation * q);
 }
示例#3
0
 /// <summary>
 /// Resize transformation with a delta
 /// </summary>
 /// <param name="tr"></param>
 /// <param name="diff">Delta</param>
 public static void Resize(this ElementTransformation tr, Vector3 diff)
 {
     tr.Scale += diff;
 }
示例#4
0
 /// <summary>
 /// Rotate transformation with local delta pitch yaw roll
 /// </summary>
 /// <param name="tr"></param>
 /// <param name="dPitchYawRoll">Delta pitch yaw roll</param>
 public static void LocalRotate(this ElementTransformation tr, Vector3 dPitchYawRoll)
 {
     tr.Rotation = Quaternion.Normalize(Quaternion.CreateFromYawPitchRoll(dPitchYawRoll.Y, dPitchYawRoll.X, dPitchYawRoll.Z) * tr.Rotation);
 }
示例#5
0
 /// <summary>
 /// Translate transformation with a delta
 /// </summary>
 /// <param name="tr"></param>
 /// <param name="diff">Delta</param>
 public static void Translate(this ElementTransformation tr, Vector3 diff)
 {
     tr.Position += diff;
 }