Advertisement
napland

CustomInspector.AlignTo

Aug 19th, 2016
434
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 1.03 KB | None | 0 0
  1.     private void AlignTo(AlignToType to , AxisFlag axis)
  2.     {
  3.         Transform[] selectedTransforms = Selection.transforms;
  4.  
  5.         int targetIndex = 0;
  6.         if (to == AlignToType.lastSelected)
  7.             targetIndex = selectedTransforms.Length - 1;
  8.  
  9.         for (int i = 0; i < selectedTransforms.Length; i++)
  10.         {
  11.             if (i == targetIndex)
  12.                 continue;
  13.  
  14.             Vector3 temp = selectedTransforms[i].position;
  15.  
  16.             if ((axis & AxisFlag.X) == AxisFlag.X)
  17.                 temp.x = selectedTransforms[targetIndex].position.x;
  18.  
  19.             if ((axis & AxisFlag.Y) == AxisFlag.Y)
  20.                 temp.y = selectedTransforms[targetIndex].position.y;
  21.  
  22.             if ((axis & AxisFlag.Z) == AxisFlag.Z)
  23.                 temp.z = selectedTransforms[targetIndex].position.z;
  24.  
  25.             Undo.RecordObject(
  26.                 selectedTransforms[i],
  27.                 selectedTransforms[i].name +  " aligned to " + selectedTransforms[targetIndex].name);
  28.  
  29.             selectedTransforms[i].position = temp;
  30.         }
  31.     }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement