2 * Copyright (c) 2017 Samsung Electronics Co., Ltd.
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
8 * http://www.apache.org/licenses/LICENSE-2.0
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
22 /// Position is a three dimensional vector.
24 public class Position : global::System.IDisposable
26 private global::System.Runtime.InteropServices.HandleRef swigCPtr;
27 protected bool swigCMemOwn;
29 internal Position(global::System.IntPtr cPtr, bool cMemoryOwn)
31 swigCMemOwn = cMemoryOwn;
32 swigCPtr = new global::System.Runtime.InteropServices.HandleRef(this, cPtr);
35 internal static global::System.Runtime.InteropServices.HandleRef getCPtr(Position obj)
37 return (obj == null) ? new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero) : obj.swigCPtr;
42 DisposeQueue.Instance.Add(this);
45 public virtual void Dispose()
47 if (!Stage.IsInstalled())
49 DisposeQueue.Instance.Add(this);
55 if (swigCPtr.Handle != global::System.IntPtr.Zero)
60 NDalicPINVOKE.delete_Vector3(swigCPtr);
62 swigCPtr = new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero);
64 global::System.GC.SuppressFinalize(this);
70 /// Addition operator.
72 /// <param name="arg1">Vector to add</param>
73 /// <param name="arg2">Vector to add</param>
74 /// <returns>A vector containing the result of the addition</returns>
75 public static Position operator +(Position arg1, Position arg2)
77 return arg1.Add(arg2);
81 /// Subtraction operator.
83 /// <param name="arg1">Vector to subtract</param>
84 /// <param name="arg2">Vector to subtract</param>
85 /// <returns>A vector containing the result of the subtraction</returns>
86 public static Position operator -(Position arg1, Position arg2)
88 return arg1.Subtract(arg2);
92 /// Unary negation operator.
94 /// <param name="arg1">Vector to netate</param>
95 /// <returns>A vector containg the negation</returns>
96 public static Position operator -(Position arg1)
98 return arg1.Subtract();
102 /// Multiplication operator.
104 /// <param name="arg1">The vector to multiply</param>
105 /// <param name="arg2">The vector to multiply</param>
106 /// <returns>A vector containing the result of the multiplication</returns>
107 public static Position operator *(Position arg1, Position arg2)
109 return arg1.Multiply(arg2);
113 /// Multiplication operator.
115 /// <param name="arg1">The vector to multiply</param>
116 /// <param name="arg2">The float value to scale the vector</param>
117 /// <returns>A vector containing the result of the scaling</returns>
118 public static Position operator *(Position arg1, float arg2)
120 return arg1.Multiply(arg2);
124 /// Division operator.
126 /// <param name="arg1">The vector to divide</param>
127 /// <param name="arg2">The vector to divide</param>
128 /// <returns>A vector containing the result of the division</returns>
129 public static Position operator /(Position arg1, Position arg2)
131 return arg1.Divide(arg2);
135 /// Division operator.
137 /// <param name="arg1">The vector to divide</param>
138 /// <param name="arg2">The float value to scale the vector by</param>
139 /// <returns>A vector containing the result of the scaling</returns>
140 public static Position operator /(Position arg1, float arg2)
142 return arg1.Divide(arg2);
147 /// Const array subscript operator overload. Should be 0, 1 or 2.
149 /// <param name="index">Subscript index</param>
150 /// <returns>The float at the given index</returns>
151 public float this[uint index]
155 return ValueOfIndex(index);
161 internal static Position GetPositionFromPtr(global::System.IntPtr cPtr)
163 Position ret = new Position(cPtr, false);
164 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
172 public Position() : this(NDalicPINVOKE.new_Vector3__SWIG_0(), true)
174 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
180 /// <param name="x">x component</param>
181 /// <param name="y">y component</param>
182 /// <param name="z">z component</param>
183 public Position(float x, float y, float z) : this(NDalicPINVOKE.new_Vector3__SWIG_1(x, y, z), true)
185 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
191 /// <param name="position2d">Position2D to create this vector from</param>
192 public Position(Position2D position2d) : this(NDalicPINVOKE.new_Vector3__SWIG_3(Position2D.getCPtr(position2d)), true)
194 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
199 private Position Add(Position rhs)
201 Position ret = new Position(NDalicPINVOKE.Vector3_Add(swigCPtr, Position.getCPtr(rhs)), true);
202 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
206 private Position Subtract(Position rhs)
208 Position ret = new Position(NDalicPINVOKE.Vector3_Subtract__SWIG_0(swigCPtr, Position.getCPtr(rhs)), true);
209 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
213 private Position Multiply(Position rhs)
215 Position ret = new Position(NDalicPINVOKE.Vector3_Multiply__SWIG_0(swigCPtr, Position.getCPtr(rhs)), true);
216 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
220 private Position Multiply(float rhs)
222 Position ret = new Position(NDalicPINVOKE.Vector3_Multiply__SWIG_1(swigCPtr, rhs), true);
223 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
227 private Position Divide(Position rhs)
229 Position ret = new Position(NDalicPINVOKE.Vector3_Divide__SWIG_0(swigCPtr, Position.getCPtr(rhs)), true);
230 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
234 private Position Divide(float rhs)
236 Position ret = new Position(NDalicPINVOKE.Vector3_Divide__SWIG_1(swigCPtr, rhs), true);
237 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
241 private Position Subtract()
243 Position ret = new Position(NDalicPINVOKE.Vector3_Subtract__SWIG_1(swigCPtr), true);
244 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
248 private float ValueOfIndex(uint index)
250 float ret = NDalicPINVOKE.Vector3_ValueOfIndex__SWIG_0(swigCPtr, index);
251 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
256 /// Compare if rhs is equal to
258 /// <param name="rhs">The vector to compare</param>
259 /// <returns>Returns true if the two vectors are equal, otherwise false</returns>
260 public bool EqualTo(Position rhs)
262 bool ret = NDalicPINVOKE.Vector3_EqualTo(swigCPtr, Position.getCPtr(rhs));
263 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
268 /// Compare if rhs is not equal to
270 /// <param name="rhs">The vector to compare</param>
271 /// <returns>Returns true if the two vectors are not equal, otherwise false</returns>
272 public bool NotEqualTo(Position rhs)
274 bool ret = NDalicPINVOKE.Vector3_NotEqualTo(swigCPtr, Position.getCPtr(rhs));
275 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
287 NDalicPINVOKE.Vector3_X_set(swigCPtr, value);
288 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
292 float ret = NDalicPINVOKE.Vector3_X_get(swigCPtr);
293 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
305 NDalicPINVOKE.Vector3_Y_set(swigCPtr, value);
306 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
310 float ret = NDalicPINVOKE.Vector3_Y_get(swigCPtr);
311 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
323 NDalicPINVOKE.Vector3_Z_set(swigCPtr, value);
324 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
328 float ret = NDalicPINVOKE.Vector3_Z_get(swigCPtr);
329 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
335 /// ParentOrigin constants. It's 0.0.
337 public static float ParentOriginTop
341 float ret = NDalicPINVOKE.ParentOriginTop_get();
342 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
348 /// ParentOrigin constants. It's 1.0.
350 public static float ParentOriginBottom
354 float ret = NDalicPINVOKE.ParentOriginBottom_get();
355 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
361 /// ParentOrigin constants. It's 0.0.
363 public static float ParentOriginLeft
367 float ret = NDalicPINVOKE.ParentOriginLeft_get();
368 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
374 /// ParentOrigin constants. It's 1.0.
376 public static float ParentOriginRight
380 float ret = NDalicPINVOKE.ParentOriginRight_get();
381 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
387 /// ParentOrigin constants. It's 0.5.
389 public static float ParentOriginMiddle
393 float ret = NDalicPINVOKE.ParentOriginMiddle_get();
394 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
400 /// ParentOrigin constants: 0.0, 0.0, 0.5
402 public static Position ParentOriginTopLeft
406 global::System.IntPtr cPtr = NDalicPINVOKE.ParentOriginTopLeft_get();
407 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
408 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
414 /// ParentOrigin constants: 0.5, 0.0, 0.5
416 public static Position ParentOriginTopCenter
420 global::System.IntPtr cPtr = NDalicPINVOKE.ParentOriginTopCenter_get();
421 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
422 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
428 /// ParentOrigin constants: 1.0, 0.0, 0.5
430 public static Position ParentOriginTopRight
434 global::System.IntPtr cPtr = NDalicPINVOKE.ParentOriginTopRight_get();
435 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
436 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
442 /// ParentOrigin constants: 0.0, 0.5, 0.5
444 public static Position ParentOriginCenterLeft
448 global::System.IntPtr cPtr = NDalicPINVOKE.ParentOriginCenterLeft_get();
449 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
450 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
456 /// ParentOrigin constants: 0.0, 0.5, 0.5
458 public static Position ParentOriginCenter
462 global::System.IntPtr cPtr = NDalicPINVOKE.ParentOriginCenter_get();
463 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
464 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
470 /// ParentOrigin constants: 1.0, 0.5, 0.5
472 public static Position ParentOriginCenterRight
476 global::System.IntPtr cPtr = NDalicPINVOKE.ParentOriginCenterRight_get();
477 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
478 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
484 /// ParentOrigin constants: 0.0f, 1.0f, 0.5f
486 public static Position ParentOriginBottomLeft
490 global::System.IntPtr cPtr = NDalicPINVOKE.ParentOriginBottomLeft_get();
491 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
492 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
498 /// ParentOrigin constants: 0.5, 1.0, 0.5
500 public static Position ParentOriginBottomCenter
504 global::System.IntPtr cPtr = NDalicPINVOKE.ParentOriginBottomCenter_get();
505 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
506 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
512 /// ParentOrigin constants: 1.0, 1.0, 0.5
514 public static Position ParentOriginBottomRight
518 global::System.IntPtr cPtr = NDalicPINVOKE.ParentOriginBottomRight_get();
519 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
520 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
526 /// AnchorPoint constants: 0.0
528 public static float AnchorPointTop
532 float ret = NDalicPINVOKE.AnchorPointTop_get();
533 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
539 /// AnchorPoint constants: 1.0
541 public static float AnchorPointBottom
545 float ret = NDalicPINVOKE.AnchorPointBottom_get();
546 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
552 /// AnchorPoint constants: 0.0
554 public static float AnchorPointLeft
558 float ret = NDalicPINVOKE.AnchorPointLeft_get();
559 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
565 /// AnchorPoint constants: 1.0
567 public static float AnchorPointRight
571 float ret = NDalicPINVOKE.AnchorPointRight_get();
572 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
578 /// AnchorPoint constants: 0.0
580 public static float AnchorPointMiddle
584 float ret = NDalicPINVOKE.AnchorPointMiddle_get();
585 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
591 /// AnchorPoint constants: 0.0, 0.0, 0.5
593 public static Position AnchorPointTopLeft
597 global::System.IntPtr cPtr = NDalicPINVOKE.AnchorPointTopLeft_get();
598 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
599 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
605 /// AnchorPoint constants: 0.5, 0.0, 0.5
607 public static Position AnchorPointTopCenter
611 global::System.IntPtr cPtr = NDalicPINVOKE.AnchorPointTopCenter_get();
612 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
613 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
619 /// AnchorPoint constants: 1.0, 0.0, 0.5
621 public static Position AnchorPointTopRight
625 global::System.IntPtr cPtr = NDalicPINVOKE.AnchorPointTopRight_get();
626 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
627 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
633 /// AnchorPoint constants: 0.0, 0.5, 0.5
635 public static Position AnchorPointCenterLeft
639 global::System.IntPtr cPtr = NDalicPINVOKE.AnchorPointCenterLeft_get();
640 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
641 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
647 /// AnchorPoint constants: 0.5, 0.5, 0.5
649 public static Position AnchorPointCenter
653 global::System.IntPtr cPtr = NDalicPINVOKE.AnchorPointCenter_get();
654 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
655 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
661 /// AnchorPoint constants: 1.0, 0.5, 0.5
663 public static Position AnchorPointCenterRight
667 global::System.IntPtr cPtr = NDalicPINVOKE.AnchorPointCenterRight_get();
668 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
669 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
675 /// AnchorPoint constants: 0.0, 1.0, 0.5
677 public static Position AnchorPointBottomLeft
681 global::System.IntPtr cPtr = NDalicPINVOKE.AnchorPointBottomLeft_get();
682 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
683 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
689 /// AnchorPoint constants: 0.5, 1.0, 0.5
691 public static Position AnchorPointBottomCenter
695 global::System.IntPtr cPtr = NDalicPINVOKE.AnchorPointBottomCenter_get();
696 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
697 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
703 /// AnchorPoint constants: 1.0, 1.0, 0.5
705 public static Position AnchorPointBottomRight
709 global::System.IntPtr cPtr = NDalicPINVOKE.AnchorPointBottomRight_get();
710 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
711 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
717 /// Constant ( 1.0f, 1.0f, 1.0f )
719 public static Position One
723 global::System.IntPtr cPtr = NDalicPINVOKE.Vector3_ONE_get();
724 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
725 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
730 internal static Position XAxis
734 global::System.IntPtr cPtr = NDalicPINVOKE.Vector3_XAXIS_get();
735 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
736 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
741 internal static Position YAxis
745 global::System.IntPtr cPtr = NDalicPINVOKE.Vector3_YAXIS_get();
746 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
747 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
752 internal static Position ZAxis
756 global::System.IntPtr cPtr = NDalicPINVOKE.Vector3_ZAXIS_get();
757 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
758 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
763 internal static Position NegativeXAxis
767 global::System.IntPtr cPtr = NDalicPINVOKE.Vector3_NEGATIVE_XAXIS_get();
768 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
769 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
774 internal static Position NegativeYAxis
778 global::System.IntPtr cPtr = NDalicPINVOKE.Vector3_NEGATIVE_YAXIS_get();
779 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
780 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
785 internal static Position NegativeZAxis
789 global::System.IntPtr cPtr = NDalicPINVOKE.Vector3_NEGATIVE_ZAXIS_get();
790 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
791 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
797 /// Constant ( 0.0f, 0.0f, 0.0f )
799 public static Position Zero
803 global::System.IntPtr cPtr = NDalicPINVOKE.Vector3_ZERO_get();
804 Position ret = (cPtr == global::System.IntPtr.Zero) ? null : new Position(cPtr, false);
805 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
812 public static implicit operator Vector3(Position Position)
814 return new Vector3(Position.X, Position.Y, Position.Z);
819 public static implicit operator Position(Vector3 vec)
821 return new Position(vec.X, vec.Y, vec.Z);
826 public struct ParentOrigin
828 public static readonly float Top = Position.ParentOriginTop;
829 public static readonly float Bottom = Position.ParentOriginBottom;
830 public static readonly float Left = Position.ParentOriginLeft;
831 public static readonly float Right = Position.ParentOriginRight;
832 public static readonly float Middle = Position.ParentOriginMiddle;
833 public static readonly Position TopLeft = Position.ParentOriginTopLeft;
834 public static readonly Position TopCenter = Position.ParentOriginTopCenter;
835 public static readonly Position TopRight = Position.ParentOriginTopRight;
836 public static readonly Position CenterLeft = Position.ParentOriginCenterLeft;
837 public static readonly Position Center = Position.ParentOriginCenter;
838 public static readonly Position CenterRight = Position.ParentOriginCenterRight;
839 public static readonly Position BottomLeft = Position.ParentOriginBottomLeft;
840 public static readonly Position BottomCenter = Position.ParentOriginBottomCenter;
841 public static readonly Position BottomRight = Position.ParentOriginBottomRight;
843 public struct AnchorPoint
845 public static readonly float Top = Position.AnchorPointTop;
846 public static readonly float Bottom = Position.AnchorPointBottom;
847 public static readonly float Left = Position.AnchorPointLeft;
848 public static readonly float Right = Position.AnchorPointRight;
849 public static readonly float Middle = Position.AnchorPointMiddle;
850 public static readonly Position TopLeft = Position.AnchorPointTopLeft;
851 public static readonly Position TopCenter = Position.AnchorPointTopCenter;
852 public static readonly Position TopRight = Position.AnchorPointTopRight;
853 public static readonly Position CenterLeft = Position.AnchorPointCenterLeft;
854 public static readonly Position Center = Position.AnchorPointCenter;
855 public static readonly Position CenterRight = Position.AnchorPointCenterRight;
856 public static readonly Position BottomLeft = Position.AnchorPointBottomLeft;
857 public static readonly Position BottomCenter = Position.AnchorPointBottomCenter;
858 public static readonly Position BottomRight = Position.AnchorPointBottomRight;
860 public struct PositionAxis
862 public static readonly Position X = Position.XAxis;
863 public static readonly Position Y = Position.YAxis;
864 public static readonly Position Z = Position.ZAxis;
865 public static readonly Position NegativeX = Position.NegativeXAxis;
866 public static readonly Position NegativeY = Position.NegativeYAxis;
867 public static readonly Position NegativeZ = Position.NegativeZAxis;