public void SetGlobalLock(LockObject gLock) { if (gLock == null) { m_globalLock = new LockObject(); } else { m_globalLock = gLock; } }
public static LockObject Eval(LockAxes[] lockAxes) { LockObject lockObject = new LockObject(); if (lockAxes != null) { lockObject.PositionX = lockAxes.Any(la => la.PositionX); lockObject.PositionY = lockAxes.Any(la => la.PositionY); lockObject.PositionZ = lockAxes.Any(la => la.PositionZ); lockObject.RotationX = lockAxes.Any(la => la.RotationX); lockObject.RotationY = lockAxes.Any(la => la.RotationY); lockObject.RotationZ = lockAxes.Any(la => la.RotationZ); lockObject.RotationFree = lockAxes.Any(la => la.RotationFree); lockObject.RotationScreen = lockAxes.Any(la => la.RotationScreen); lockObject.ScaleX = lockAxes.Any(la => la.ScaleX); lockObject.ScaleY = lockAxes.Any(la => la.ScaleY); lockObject.ScaleZ = lockAxes.Any(la => la.ScaleZ); lockObject.PivotMode = null; if (lockAxes.Any(la => la.PivotMode)) { if (lockAxes.All(la => la.PivotModeValue == RuntimePivotMode.Center)) { lockObject.PivotMode = RuntimePivotMode.Center; } else if (lockAxes.All(la => la.PivotModeValue == RuntimePivotMode.Pivot)) { lockObject.PivotMode = RuntimePivotMode.Pivot; } } lockObject.PivotRotation = null; if (lockAxes.Any(la => la.PivotRotation)) { if (lockAxes.All(la => la.PivotRotationValue == RuntimePivotRotation.Global)) { lockObject.PivotRotation = RuntimePivotRotation.Global; } else if (lockAxes.All(la => la.PivotRotationValue == RuntimePivotRotation.Local)) { lockObject.PivotRotation = RuntimePivotRotation.Local; } } } return(lockObject); }
public static LockObject Eval(LockAxes[] lockAxes) { LockObject lockObject = new LockObject(); if (lockAxes != null) { lockObject.PositionX = lockAxes.Any(la => la.PositionX); lockObject.PositionY = lockAxes.Any(la => la.PositionY); lockObject.PositionZ = lockAxes.Any(la => la.PositionZ); lockObject.RotationX = lockAxes.Any(la => la.RotationX); lockObject.RotationY = lockAxes.Any(la => la.RotationY); lockObject.RotationZ = lockAxes.Any(la => la.RotationZ); lockObject.RotationScreen = lockAxes.Any(la => la.RotationScreen); lockObject.ScaleX = lockAxes.Any(la => la.ScaleX); lockObject.ScaleY = lockAxes.Any(la => la.ScaleY); lockObject.ScaleZ = lockAxes.Any(la => la.ScaleZ); } return(lockObject); }