X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=src%2FTizen.NUI%2Fsrc%2Fpublic%2FVector3.cs;h=1e5cb08f4e2619fef79b15a820ed8e789cf5f38f;hb=46b8a31f5c1c75a22b648ca394a4de8a50898513;hp=dcd16e67fdd07fc7d8785f1ab629b98cf6f8e634;hpb=8dc7df9539c350a70db76c2f0d0ef144d5a0ddd9;p=platform%2Fcore%2Fcsapi%2Ftizenfx.git diff --git a/src/Tizen.NUI/src/public/Vector3.cs b/src/Tizen.NUI/src/public/Vector3.cs index dcd16e6..1e5cb08 100755 --- a/src/Tizen.NUI/src/public/Vector3.cs +++ b/src/Tizen.NUI/src/public/Vector3.cs @@ -1,727 +1,763 @@ -/** Copyright (c) 2017 Samsung Electronics Co., Ltd. -* -* Licensed under the Apache License, Version 2.0 (the "License"); -* you may not use this file except in compliance with the License. -* You may obtain a copy of the License at -* -* http://www.apache.org/licenses/LICENSE-2.0 -* -* Unless required by applicable law or agreed to in writing, software -* distributed under the License is distributed on an "AS IS" BASIS, -* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -* See the License for the specific language governing permissions and -* limitations under the License. -* -*/ +/* + * Copyright(c) 2018 Samsung Electronics Co., Ltd. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + */ +using System; +using Tizen.NUI.Binding; namespace Tizen.NUI { /// - /// A three dimensional vector. + /// A three-dimensional vector. /// - public class Vector3 : global::System.IDisposable + /// 3 + [TypeConverter(typeof(Vector3TypeConverter))] + public class Vector3 : Disposable { - private global::System.Runtime.InteropServices.HandleRef swigCPtr; + /// + /// swigCMemOwn. + /// + /// 3 protected bool swigCMemOwn; + private global::System.Runtime.InteropServices.HandleRef swigCPtr; - internal Vector3(global::System.IntPtr cPtr, bool cMemoryOwn) - { - swigCMemOwn = cMemoryOwn; - swigCPtr = new global::System.Runtime.InteropServices.HandleRef(this, cPtr); - } - - internal static global::System.Runtime.InteropServices.HandleRef getCPtr(Vector3 obj) - { - return (obj == null) ? new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero) : obj.swigCPtr; - } - - //A Flag to check who called Dispose(). (By User or DisposeQueue) - private bool isDisposeQueued = false; - //A Flat to check if it is already disposed. - protected bool disposed = false; - - ~Vector3() - { - if(!isDisposeQueued) - { - isDisposeQueued = true; - DisposeQueue.Instance.Add(this); - } - } - - public void Dispose() - { - //Throw excpetion if Dispose() is called in separate thread. - if (!Window.IsInstalled()) - { - throw new System.InvalidOperationException("This API called from separate thread. This API must be called from MainThread."); - } - - if (isDisposeQueued) - { - Dispose(DisposeTypes.Implicit); - } - else - { - Dispose(DisposeTypes.Explicit); - System.GC.SuppressFinalize(this); - } - } - - protected virtual void Dispose(DisposeTypes type) + /// + /// The constructor. + /// + /// 3 + public Vector3() : this(Interop.Vector3.new_Vector3__SWIG_0(), true) { - if (disposed) - { - return; - } - - if(type == DisposeTypes.Explicit) - { - //Called by User - //Release your own managed resources here. - //You should release all of your own disposable objects here. - } - - //Release your own unmanaged resources here. - //You should not access any managed member here except static instance. - //because the execution order of Finalizes is non-deterministic. - - if (swigCPtr.Handle != global::System.IntPtr.Zero) - { - if (swigCMemOwn) - { - swigCMemOwn = false; - NDalicPINVOKE.delete_Vector3(swigCPtr); - } - swigCPtr = new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero); - } - disposed = true; + if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); } /// - /// Addition operator. + /// The default constructor initializes the vector to 0. /// - /// First Value - /// Second Value - /// A vector containing the result of the addition - public static Vector3 operator +(Vector3 arg1, Vector3 arg2) + /// The x (or width) component. + /// The y (or height) component. + /// The z (or depth) component. + /// 3 + public Vector3(float x, float y, float z) : this(Interop.Vector3.new_Vector3__SWIG_1(x, y, z), true) { - return arg1.Add(arg2); + if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); } /// - /// Subtraction operator. + /// Conversion constructor from an array of three floats. /// - /// First Value - /// Second Value - /// A vector containing the result of the subtraction - public static Vector3 operator -(Vector3 arg1, Vector3 arg2) + /// An array of xyz. + /// 3 + public Vector3(float[] array) : this(Interop.Vector3.new_Vector3__SWIG_2(array), true) { - return arg1.Subtract(arg2); + if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); } /// - /// Unary negation operator. + /// The constructor. /// - /// Target Value - /// A vector containg the negation - public static Vector3 operator -(Vector3 arg1) + /// Vector2 to create this vector from. + /// 3 + public Vector3(Vector2 vec2) : this(Interop.Vector3.new_Vector3__SWIG_3(Vector2.getCPtr(vec2)), true) { - return arg1.Subtract(); + if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); } /// - /// Multiplication operator. + /// The constructor. /// - /// First Value - /// Second Value - /// A vector containing the result of the multiplication - public static Vector3 operator *(Vector3 arg1, Vector3 arg2) + /// Vector4 to create this vector from. + /// 3 + public Vector3(Vector4 vec4) : this(Interop.Vector3.new_Vector3__SWIG_4(Vector4.getCPtr(vec4)), true) { - return arg1.Multiply(arg2); + if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); } - /// - /// Multiplication operator. - /// - /// First Value - /// The float value to scale the vector - /// A vector containing the result of the scaling - public static Vector3 operator *(Vector3 arg1, float arg2) + internal Vector3(global::System.IntPtr cPtr, bool cMemoryOwn) { - return arg1.Multiply(arg2); + swigCMemOwn = cMemoryOwn; + swigCPtr = new global::System.Runtime.InteropServices.HandleRef(this, cPtr); } /// - /// Division operator. + /// (1.0f,1.0f,1.0f). /// - /// First Value - /// Second Value - /// A vector containing the result of the division - public static Vector3 operator /(Vector3 arg1, Vector3 arg2) + /// 3 + public static Vector3 One { - return arg1.Divide(arg2); + get + { + global::System.IntPtr cPtr = Interop.Vector3.Vector3_ONE_get(); + Vector3 ret = (cPtr == global::System.IntPtr.Zero) ? null : new Vector3(cPtr, false); + if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); + return ret; + } } /// - /// Division operator. + /// The vector representing the x-axis. /// - /// First Value - /// The float value to scale the vector by - /// A vector containing the result of the scaling - public static Vector3 operator /(Vector3 arg1, float arg2) + /// 3 + public static Vector3 XAxis { - return arg1.Divide(arg2); + get + { + global::System.IntPtr cPtr = Interop.Vector3.Vector3_XAXIS_get(); + Vector3 ret = (cPtr == global::System.IntPtr.Zero) ? null : new Vector3(cPtr, false); + if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); + return ret; + } } /// - /// Array subscript operator overload. + /// The vector representing the y-axis. /// - /// Subscript index - /// The float at the given index - public float this[uint index] + /// 3 + public static Vector3 YAxis { get { - return ValueOfIndex(index); + global::System.IntPtr cPtr = Interop.Vector3.Vector3_YAXIS_get(); + Vector3 ret = (cPtr == global::System.IntPtr.Zero) ? null : new Vector3(cPtr, false); + if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); + return ret; } } - internal static Vector3 GetVector3FromPtr(global::System.IntPtr cPtr) + /// + /// The vector representing the z-axis. + /// + /// 3 + public static Vector3 ZAxis { - Vector3 ret = new Vector3(cPtr, false); - if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); - return ret; + get + { + global::System.IntPtr cPtr = Interop.Vector3.Vector3_ZAXIS_get(); + Vector3 ret = (cPtr == global::System.IntPtr.Zero) ? null : new Vector3(cPtr, false); + if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); + return ret; + } } /// - /// Constructor. + /// The vector representing the negative x-axis. /// - public Vector3() : this(NDalicPINVOKE.new_Vector3__SWIG_0(), true) + /// 3 + public static Vector3 NegativeXAxis { - if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); + get + { + global::System.IntPtr cPtr = Interop.Vector3.Vector3_NEGATIVE_XAXIS_get(); + Vector3 ret = (cPtr == global::System.IntPtr.Zero) ? null : new Vector3(cPtr, false); + if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); + return ret; + } } /// - /// Default constructor, initializes the vector to 0. + /// Th vector representing the negative y-axis. /// - /// x (or width) component - /// y (or height) component - /// z (or depth) component - public Vector3(float x, float y, float z) : this(NDalicPINVOKE.new_Vector3__SWIG_1(x, y, z), true) + /// 3 + public static Vector3 NegativeYAxis { - if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); + get + { + global::System.IntPtr cPtr = Interop.Vector3.Vector3_NEGATIVE_YAXIS_get(); + Vector3 ret = (cPtr == global::System.IntPtr.Zero) ? null : new Vector3(cPtr, false); + if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); + return ret; + } } /// - /// Conversion constructor from an array of three floats. + /// The vector representing the negative z-axis. /// - /// Array of xyz - public Vector3(float[] array) : this(NDalicPINVOKE.new_Vector3__SWIG_2(array), true) + /// 3 + public static Vector3 NegativeZAxis { - if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); + get + { + global::System.IntPtr cPtr = Interop.Vector3.Vector3_NEGATIVE_ZAXIS_get(); + Vector3 ret = (cPtr == global::System.IntPtr.Zero) ? null : new Vector3(cPtr, false); + if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); + return ret; + } } /// - /// Constructor. + /// (0.0f, 0.0f, 0.0f). /// - /// Vector2 to create this vector from - public Vector3(Vector2 vec2) : this(NDalicPINVOKE.new_Vector3__SWIG_3(Vector2.getCPtr(vec2)), true) + /// 3 + public static Vector3 Zero { - if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); + get + { + global::System.IntPtr cPtr = Interop.Vector3.Vector3_ZERO_get(); + Vector3 ret = (cPtr == global::System.IntPtr.Zero) ? null : new Vector3(cPtr, false); + if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); + return ret; + } } /// - /// Constructor + /// The x component. /// - /// Vector4 to create this vector from - public Vector3(Vector4 vec4) : this(NDalicPINVOKE.new_Vector3__SWIG_4(Vector4.getCPtr(vec4)), true) + /// 3 + public float X { - if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); + set + { + Interop.Vector3.Vector3_X_set(swigCPtr, value); + if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); + } + get + { + float ret = Interop.Vector3.Vector3_X_get(swigCPtr); + if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); + return ret; + } } /// - /// (1.0f,1.0f,1.0f) + /// The width component. /// - public static Vector3 One + /// 3 + public float Width { + set + { + Interop.Vector3.Vector3_Width_set(swigCPtr, value); + if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); + } get { - global::System.IntPtr cPtr = NDalicPINVOKE.Vector3_ONE_get(); - Vector3 ret = (cPtr == global::System.IntPtr.Zero) ? null : new Vector3(cPtr, false); + float ret = Interop.Vector3.Vector3_Width_get(swigCPtr); if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); return ret; } } /// - /// Vector representing the X axis + /// The red component. /// - public static Vector3 XAxis + /// 3 + public float R { + set + { + Interop.Vector3.Vector3_r_set(swigCPtr, value); + if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); + } get { - global::System.IntPtr cPtr = NDalicPINVOKE.Vector3_XAXIS_get(); - Vector3 ret = (cPtr == global::System.IntPtr.Zero) ? null : new Vector3(cPtr, false); + float ret = Interop.Vector3.Vector3_r_get(swigCPtr); if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); return ret; } } /// - /// Vector representing the Y axis + /// The y component. /// - public static Vector3 YAxis + /// 3 + public float Y { + set + { + Interop.Vector3.Vector3_Y_set(swigCPtr, value); + if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); + } get { - global::System.IntPtr cPtr = NDalicPINVOKE.Vector3_YAXIS_get(); - Vector3 ret = (cPtr == global::System.IntPtr.Zero) ? null : new Vector3(cPtr, false); + float ret = Interop.Vector3.Vector3_Y_get(swigCPtr); if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); return ret; } } /// - /// Vector representing the Z axis + /// The height component. /// - public static Vector3 ZAxis + /// 3 + public float Height { + set + { + Interop.Vector3.Vector3_Height_set(swigCPtr, value); + if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); + } get { - global::System.IntPtr cPtr = NDalicPINVOKE.Vector3_ZAXIS_get(); - Vector3 ret = (cPtr == global::System.IntPtr.Zero) ? null : new Vector3(cPtr, false); + float ret = Interop.Vector3.Vector3_Height_get(swigCPtr); if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); return ret; } } /// - /// Vector representing the negative X axis + /// The green component. /// - public static Vector3 NegativeXAxis + /// 3 + public float G { + set + { + Interop.Vector3.Vector3_g_set(swigCPtr, value); + if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); + } get { - global::System.IntPtr cPtr = NDalicPINVOKE.Vector3_NEGATIVE_XAXIS_get(); - Vector3 ret = (cPtr == global::System.IntPtr.Zero) ? null : new Vector3(cPtr, false); + float ret = Interop.Vector3.Vector3_g_get(swigCPtr); if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); return ret; } } /// - /// Vector representing the negative Y axis + /// The z component. /// - public static Vector3 NegativeYAxis + /// 3 + public float Z { + set + { + Interop.Vector3.Vector3_Z_set(swigCPtr, value); + if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); + } get { - global::System.IntPtr cPtr = NDalicPINVOKE.Vector3_NEGATIVE_YAXIS_get(); - Vector3 ret = (cPtr == global::System.IntPtr.Zero) ? null : new Vector3(cPtr, false); + float ret = Interop.Vector3.Vector3_Z_get(swigCPtr); if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); return ret; } } /// - /// Vector representing the negative Z axis + /// The depth component. /// - public static Vector3 NegativeZAxis + /// 3 + public float Depth { + set + { + Interop.Vector3.Vector3_Depth_set(swigCPtr, value); + if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); + } get { - global::System.IntPtr cPtr = NDalicPINVOKE.Vector3_NEGATIVE_ZAXIS_get(); - Vector3 ret = (cPtr == global::System.IntPtr.Zero) ? null : new Vector3(cPtr, false); + float ret = Interop.Vector3.Vector3_Depth_get(swigCPtr); if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); return ret; } } /// - /// (0.0f, 0.0f, 0.0f) + /// The blue component. /// - public static Vector3 Zero + /// 3 + public float B { + set + { + Interop.Vector3.Vector3_b_set(swigCPtr, value); + if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); + } get { - global::System.IntPtr cPtr = NDalicPINVOKE.Vector3_ZERO_get(); - Vector3 ret = (cPtr == global::System.IntPtr.Zero) ? null : new Vector3(cPtr, false); + float ret = Interop.Vector3.Vector3_b_get(swigCPtr); if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); return ret; } } - private Vector3 Add(Vector3 rhs) + /// + /// An array subscript operator overload. + /// + /// The subscript index. + /// The float at the given index. + /// 3 + public float this[uint index] { - Vector3 ret = new Vector3(NDalicPINVOKE.Vector3_Add(swigCPtr, Vector3.getCPtr(rhs)), true); - if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); - return ret; + get + { + return ValueOfIndex(index); + } } - private Vector3 AddAssign(Vector3 rhs) + /// + /// The addition operator. + /// + /// The first value. + /// The second value. + /// The vector containing the result of the addition. + /// 3 + public static Vector3 operator +(Vector3 arg1, Vector3 arg2) { - Vector3 ret = new Vector3(NDalicPINVOKE.Vector3_AddAssign(swigCPtr, Vector3.getCPtr(rhs)), false); - if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); - return ret; + return arg1.Add(arg2); } - private Vector3 Subtract(Vector3 rhs) + /// + /// The subtraction operator. + /// + /// The first value. + /// The second value. + /// The vector containing the result of the subtraction. + /// 3 + public static Vector3 operator -(Vector3 arg1, Vector3 arg2) { - Vector3 ret = new Vector3(NDalicPINVOKE.Vector3_Subtract__SWIG_0(swigCPtr, Vector3.getCPtr(rhs)), true); - if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); - return ret; + return arg1.Subtract(arg2); } - private Vector3 SubtractAssign(Vector3 rhs) + /// + /// The unary negation operator. + /// + /// The target value. + /// The vector containg the negation. + /// 3 + public static Vector3 operator -(Vector3 arg1) { - Vector3 ret = new Vector3(NDalicPINVOKE.Vector3_SubtractAssign(swigCPtr, Vector3.getCPtr(rhs)), false); - if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); - return ret; + return arg1.Subtract(); } - private Vector3 Multiply(Vector3 rhs) + /// + /// The multiplication operator. + /// + /// The first value. + /// The second value. + /// The vector containing the result of the multiplication. + /// 3 + public static Vector3 operator *(Vector3 arg1, Vector3 arg2) { - Vector3 ret = new Vector3(NDalicPINVOKE.Vector3_Multiply__SWIG_0(swigCPtr, Vector3.getCPtr(rhs)), true); - if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); - return ret; + return arg1.Multiply(arg2); } - private Vector3 Multiply(float rhs) + /// + /// The multiplication operator. + /// + /// The first value. + /// The float value to scale the vector. + /// The vector containing the result of the scaling. + /// 3 + public static Vector3 operator *(Vector3 arg1, float arg2) { - Vector3 ret = new Vector3(NDalicPINVOKE.Vector3_Multiply__SWIG_1(swigCPtr, rhs), true); - if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); - return ret; + return arg1.Multiply(arg2); } - private Vector3 MultiplyAssign(Vector3 rhs) + /// + /// The division operator. + /// + /// The first value. + /// The second value. + /// The vector containing the result of the division. + /// 3 + public static Vector3 operator /(Vector3 arg1, Vector3 arg2) { - Vector3 ret = new Vector3(NDalicPINVOKE.Vector3_MultiplyAssign__SWIG_0(swigCPtr, Vector3.getCPtr(rhs)), false); - if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); - return ret; + return arg1.Divide(arg2); } - private Vector3 MultiplyAssign(float rhs) + /// + /// The division operator. + /// + /// The first value. + /// The float value to scale the vector by. + /// The vector containing the result of the scaling. + /// 3 + public static Vector3 operator /(Vector3 arg1, float arg2) { - Vector3 ret = new Vector3(NDalicPINVOKE.Vector3_MultiplyAssign__SWIG_1(swigCPtr, rhs), false); - if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); - return ret; + return arg1.Divide(arg2); } - private Vector3 MultiplyAssign(Rotation rhs) + /// + /// Determines whether the specified object is equal to the current object. + /// + /// The object to compare with the current object. + /// true if the specified object is equal to the current object; otherwise, false. + public override bool Equals(System.Object obj) { - Vector3 ret = new Vector3(NDalicPINVOKE.Vector3_MultiplyAssign__SWIG_2(swigCPtr, Rotation.getCPtr(rhs)), false); + Vector3 vector3 = obj as Vector3; + bool equal = false; + if (X == vector3?.X && Y == vector3?.Y && Z == vector3?.Z) + { + equal = true; + } + return equal; + } + + /// + /// Gets the the hash code of this Vector3. + /// + /// The Hash Code. + /// 6 + public override int GetHashCode() + { + return swigCPtr.Handle.GetHashCode(); + } + + /// + /// Returns the length of the vector. + /// + /// The length of the vector. + /// 3 + public float Length() + { + float ret = Interop.Vector3.Vector3_Length(swigCPtr); if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); return ret; } - private Vector3 Divide(Vector3 rhs) + /// + /// Returns the length of the vector squared.
+ /// This is more efficient than Length() for threshold + /// testing as it avoids the use of a square root.
+ ///
+ /// The length of the vector squared. + /// 3 + public float LengthSquared() { - Vector3 ret = new Vector3(NDalicPINVOKE.Vector3_Divide__SWIG_0(swigCPtr, Vector3.getCPtr(rhs)), true); + float ret = Interop.Vector3.Vector3_LengthSquared(swigCPtr); if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); return ret; } - private Vector3 Divide(float rhs) + /// + /// Sets the vector to be unit length, whilst maintaining its direction. + /// + /// 3 + public void Normalize() { - Vector3 ret = new Vector3(NDalicPINVOKE.Vector3_Divide__SWIG_1(swigCPtr, rhs), true); + Interop.Vector3.Vector3_Normalize(swigCPtr); if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); - return ret; } - private Vector3 DivideAssign(Vector3 rhs) + /// + /// Clamps the vector between minimum and maximum vectors. + /// + /// The minimum vector. + /// The maximum vector. + /// 3 + public void Clamp(Vector3 min, Vector3 max) { - Vector3 ret = new Vector3(NDalicPINVOKE.Vector3_DivideAssign__SWIG_0(swigCPtr, Vector3.getCPtr(rhs)), false); + Interop.Vector3.Vector3_Clamp(swigCPtr, Vector3.getCPtr(min), Vector3.getCPtr(max)); if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); - return ret; } - private Vector3 DivideAssign(float rhs) + /// + /// Returns the x and y components (or width and height, or r and g) as a Vector2. + /// + /// The partial vector contents as Vector2 (x,y). + /// 3 + public Vector2 GetVectorXY() { - Vector3 ret = new Vector3(NDalicPINVOKE.Vector3_DivideAssign__SWIG_1(swigCPtr, rhs), false); + Vector2 ret = new Vector2(Interop.Vector3.Vector3_GetVectorXY__SWIG_0(swigCPtr), false); if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); return ret; } - private Vector3 Subtract() + /// + /// Returns the y and z components (or height and depth, or g and b) as a Vector2. + /// + /// The partial vector contents as Vector2 (y,z). + /// 3 + public Vector2 GetVectorYZ() { - Vector3 ret = new Vector3(NDalicPINVOKE.Vector3_Subtract__SWIG_1(swigCPtr), true); + Vector2 ret = new Vector2(Interop.Vector3.Vector3_GetVectorYZ__SWIG_0(swigCPtr), false); if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); return ret; } - private bool EqualTo(Vector3 rhs) + internal static global::System.Runtime.InteropServices.HandleRef getCPtr(Vector3 obj) { - bool ret = NDalicPINVOKE.Vector3_EqualTo(swigCPtr, Vector3.getCPtr(rhs)); + return (obj == null) ? new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero) : obj.swigCPtr; + } + + internal static Vector3 GetVector3FromPtr(global::System.IntPtr cPtr) + { + Vector3 ret = new Vector3(cPtr, false); if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); return ret; } - private bool NotEqualTo(Vector3 rhs) + internal SWIGTYPE_p_float AsFloat() { - bool ret = NDalicPINVOKE.Vector3_NotEqualTo(swigCPtr, Vector3.getCPtr(rhs)); + global::System.IntPtr cPtr = Interop.Vector3.Vector3_AsFloat__SWIG_0(swigCPtr); + SWIGTYPE_p_float ret = (cPtr == global::System.IntPtr.Zero) ? null : new SWIGTYPE_p_float(cPtr, false); if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); return ret; } - private float ValueOfIndex(uint index) + /// + /// Dispose. + /// + /// The dispose type + /// 3 + protected override void Dispose(DisposeTypes type) { - float ret = NDalicPINVOKE.Vector3_ValueOfIndex__SWIG_0(swigCPtr, index); + if (disposed) + { + return; + } + + //Release your own unmanaged resources here. + //You should not access any managed member here except static instance. + //because the execution order of Finalizes is non-deterministic. + + if (swigCPtr.Handle != global::System.IntPtr.Zero) + { + if (swigCMemOwn) + { + swigCMemOwn = false; + Interop.Vector3.delete_Vector3(swigCPtr); + } + swigCPtr = new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero); + } + base.Dispose(type); + } + + private Vector3 Add(Vector3 rhs) + { + Vector3 ret = new Vector3(Interop.Vector3.Vector3_Add(swigCPtr, Vector3.getCPtr(rhs)), true); if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); return ret; } - internal float Dot(Vector3 other) + private Vector3 AddAssign(Vector3 rhs) { - float ret = NDalicPINVOKE.Vector3_Dot(swigCPtr, Vector3.getCPtr(other)); + Vector3 ret = new Vector3(Interop.Vector3.Vector3_AddAssign(swigCPtr, Vector3.getCPtr(rhs)), false); if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); return ret; } - internal Vector3 Cross(Vector3 other) + private Vector3 Subtract(Vector3 rhs) { - Vector3 ret = new Vector3(NDalicPINVOKE.Vector3_Cross(swigCPtr, Vector3.getCPtr(other)), true); + Vector3 ret = new Vector3(Interop.Vector3.Vector3_Subtract__SWIG_0(swigCPtr, Vector3.getCPtr(rhs)), true); if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); return ret; } - /// - /// Returns the length of the vector. - /// - /// The length of the vector - public float Length() + private Vector3 SubtractAssign(Vector3 rhs) { - float ret = NDalicPINVOKE.Vector3_Length(swigCPtr); + Vector3 ret = new Vector3(Interop.Vector3.Vector3_SubtractAssign(swigCPtr, Vector3.getCPtr(rhs)), false); if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); return ret; } - /// - /// Returns the length of the vector squared.
- /// This is more efficient than Length() for threshold - /// testing as it avoids the use of a square root.
- ///
- /// The length of the vector squared - public float LengthSquared() + private Vector3 Multiply(Vector3 rhs) { - float ret = NDalicPINVOKE.Vector3_LengthSquared(swigCPtr); + Vector3 ret = new Vector3(Interop.Vector3.Vector3_Multiply__SWIG_0(swigCPtr, Vector3.getCPtr(rhs)), true); if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); return ret; } - /// - /// Sets the vector to be unit length, whilst maintaining its direction. - /// - public void Normalize() + private Vector3 Multiply(float rhs) { - NDalicPINVOKE.Vector3_Normalize(swigCPtr); + Vector3 ret = new Vector3(Interop.Vector3.Vector3_Multiply__SWIG_1(swigCPtr, rhs), true); if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); + return ret; } - /// - /// Clamps the vector between minimum and maximum vectors. - /// - /// The minimum vector - /// The maximum vector - public void Clamp(Vector3 min, Vector3 max) + private Vector3 MultiplyAssign(Vector3 rhs) { - NDalicPINVOKE.Vector3_Clamp(swigCPtr, Vector3.getCPtr(min), Vector3.getCPtr(max)); + Vector3 ret = new Vector3(Interop.Vector3.Vector3_MultiplyAssign__SWIG_0(swigCPtr, Vector3.getCPtr(rhs)), false); if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); + return ret; } - internal SWIGTYPE_p_float AsFloat() + private Vector3 MultiplyAssign(float rhs) { - global::System.IntPtr cPtr = NDalicPINVOKE.Vector3_AsFloat__SWIG_0(swigCPtr); - SWIGTYPE_p_float ret = (cPtr == global::System.IntPtr.Zero) ? null : new SWIGTYPE_p_float(cPtr, false); + Vector3 ret = new Vector3(Interop.Vector3.Vector3_MultiplyAssign__SWIG_1(swigCPtr, rhs), false); if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); return ret; } - /// - /// Returns the x & y components (or width & height, or r & g) as a Vector2. - /// - /// The partial vector contents as Vector2 (x,y) - public Vector2 GetVectorXY() + private Vector3 MultiplyAssign(Rotation rhs) { - Vector2 ret = new Vector2(NDalicPINVOKE.Vector3_GetVectorXY__SWIG_0(swigCPtr), false); + Vector3 ret = new Vector3(Interop.Vector3.Vector3_MultiplyAssign__SWIG_2(swigCPtr, Rotation.getCPtr(rhs)), false); if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); return ret; } - /// - /// Returns the y & z components (or height & depth, or g & b) as a Vector2. - /// - /// The partial vector contents as Vector2 (y,z) - public Vector2 GetVectorYZ() + private Vector3 Divide(Vector3 rhs) { - Vector2 ret = new Vector2(NDalicPINVOKE.Vector3_GetVectorYZ__SWIG_0(swigCPtr), false); + Vector3 ret = new Vector3(Interop.Vector3.Vector3_Divide__SWIG_0(swigCPtr, Vector3.getCPtr(rhs)), true); if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); return ret; } - /// - /// x component - /// - public float X + private Vector3 Divide(float rhs) { - set - { - NDalicPINVOKE.Vector3_X_set(swigCPtr, value); - if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); - } - get - { - float ret = NDalicPINVOKE.Vector3_X_get(swigCPtr); - if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); - return ret; - } + Vector3 ret = new Vector3(Interop.Vector3.Vector3_Divide__SWIG_1(swigCPtr, rhs), true); + if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); + return ret; } - /// - /// width component - /// - public float Width + private Vector3 DivideAssign(Vector3 rhs) { - set - { - NDalicPINVOKE.Vector3_Width_set(swigCPtr, value); - if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); - } - get - { - float ret = NDalicPINVOKE.Vector3_Width_get(swigCPtr); - if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); - return ret; - } + Vector3 ret = new Vector3(Interop.Vector3.Vector3_DivideAssign__SWIG_0(swigCPtr, Vector3.getCPtr(rhs)), false); + if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); + return ret; } - /// - /// red component - /// - public float R + private Vector3 DivideAssign(float rhs) { - set - { - NDalicPINVOKE.Vector3_r_set(swigCPtr, value); - if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); - } - get - { - float ret = NDalicPINVOKE.Vector3_r_get(swigCPtr); - if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); - return ret; - } + Vector3 ret = new Vector3(Interop.Vector3.Vector3_DivideAssign__SWIG_1(swigCPtr, rhs), false); + if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); + return ret; } - /// - /// y component - /// - public float Y + private Vector3 Subtract() { - set - { - NDalicPINVOKE.Vector3_Y_set(swigCPtr, value); - if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); - } - get - { - float ret = NDalicPINVOKE.Vector3_Y_get(swigCPtr); - if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); - return ret; - } + Vector3 ret = new Vector3(Interop.Vector3.Vector3_Subtract__SWIG_1(swigCPtr), true); + if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); + return ret; } - /// - /// height component - /// - public float Height + private bool EqualTo(Vector3 rhs) { - set - { - NDalicPINVOKE.Vector3_Height_set(swigCPtr, value); - if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); - } - get - { - float ret = NDalicPINVOKE.Vector3_Height_get(swigCPtr); - if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); - return ret; - } + bool ret = Interop.Vector3.Vector3_EqualTo(swigCPtr, Vector3.getCPtr(rhs)); + if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); + return ret; } - /// - /// green component - /// - public float G + private bool NotEqualTo(Vector3 rhs) { - set - { - NDalicPINVOKE.Vector3_g_set(swigCPtr, value); - if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); - } - get - { - float ret = NDalicPINVOKE.Vector3_g_get(swigCPtr); - if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); - return ret; - } + bool ret = Interop.Vector3.Vector3_NotEqualTo(swigCPtr, Vector3.getCPtr(rhs)); + if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); + return ret; } - /// - /// z component - /// - public float Z + private float ValueOfIndex(uint index) { - set - { - NDalicPINVOKE.Vector3_Z_set(swigCPtr, value); - if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); - } - get - { - float ret = NDalicPINVOKE.Vector3_Z_get(swigCPtr); - if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); - return ret; - } + float ret = Interop.Vector3.Vector3_ValueOfIndex__SWIG_0(swigCPtr, index); + if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); + return ret; } - /// - /// depth component - /// - public float Depth + internal float Dot(Vector3 other) { - set - { - NDalicPINVOKE.Vector3_Depth_set(swigCPtr, value); - if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); - } - get - { - float ret = NDalicPINVOKE.Vector3_Depth_get(swigCPtr); - if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); - return ret; - } + float ret = Interop.Vector3.Vector3_Dot(swigCPtr, Vector3.getCPtr(other)); + if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); + return ret; } - /// - /// blue component - /// - public float B + internal Vector3 Cross(Vector3 other) { - set - { - NDalicPINVOKE.Vector3_b_set(swigCPtr, value); - if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); - } - get - { - float ret = NDalicPINVOKE.Vector3_b_get(swigCPtr); - if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); - return ret; - } + Vector3 ret = new Vector3(Interop.Vector3.Vector3_Cross(swigCPtr, Vector3.getCPtr(other)), true); + if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); + return ret; } } -} +} \ No newline at end of file