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 /// A three-dimensional vector.
24 public class Vector3 : global::System.IDisposable
26 private global::System.Runtime.InteropServices.HandleRef swigCPtr;
30 protected bool swigCMemOwn;
32 internal Vector3(global::System.IntPtr cPtr, bool cMemoryOwn)
34 swigCMemOwn = cMemoryOwn;
35 swigCPtr = new global::System.Runtime.InteropServices.HandleRef(this, cPtr);
38 internal static global::System.Runtime.InteropServices.HandleRef getCPtr(Vector3 obj)
40 return (obj == null) ? new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero) : obj.swigCPtr;
43 //A Flag to check who called Dispose(). (By User or DisposeQueue)
44 private bool isDisposeQueued = false;
47 /// A Flat to check if it is already disposed.
49 protected bool disposed = false;
54 /// <since_tizen> 3 </since_tizen>
59 isDisposeQueued = true;
60 DisposeQueue.Instance.Add(this);
67 /// <since_tizen> 3 </since_tizen>
70 //Throw excpetion if Dispose() is called in separate thread.
71 if (!Window.IsInstalled())
73 throw new System.InvalidOperationException("This API called from separate thread. This API must be called from MainThread.");
78 Dispose(DisposeTypes.Implicit);
82 Dispose(DisposeTypes.Explicit);
83 System.GC.SuppressFinalize(this);
90 /// <param name="type">The dispose type</param>
91 /// <since_tizen> 3 </since_tizen>
92 protected virtual void Dispose(DisposeTypes type)
99 if(type == DisposeTypes.Explicit)
102 //Release your own managed resources here.
103 //You should release all of your own disposable objects here.
106 //Release your own unmanaged resources here.
107 //You should not access any managed member here except static instance.
108 //because the execution order of Finalizes is non-deterministic.
110 if (swigCPtr.Handle != global::System.IntPtr.Zero)
115 NDalicPINVOKE.delete_Vector3(swigCPtr);
117 swigCPtr = new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero);
123 /// The addition operator.
125 /// <param name="arg1">The first value.</param>
126 /// <param name="arg2">The second value.</param>
127 /// <returns>The vector containing the result of the addition.</returns>
128 /// <since_tizen> 3 </since_tizen>
129 public static Vector3 operator +(Vector3 arg1, Vector3 arg2)
131 return arg1.Add(arg2);
135 /// The subtraction operator.
137 /// <param name="arg1">The first value.</param>
138 /// <param name="arg2">The second value.</param>
139 /// <returns>The vector containing the result of the subtraction.</returns>
140 /// <since_tizen> 3 </since_tizen>
141 public static Vector3 operator -(Vector3 arg1, Vector3 arg2)
143 return arg1.Subtract(arg2);
147 /// The unary negation operator.
149 /// <param name="arg1">The target value.</param>
150 /// <returns>The vector containg the negation.</returns>
151 /// <since_tizen> 3 </since_tizen>
152 public static Vector3 operator -(Vector3 arg1)
154 return arg1.Subtract();
158 /// The multiplication operator.
160 /// <param name="arg1">The first value.</param>
161 /// <param name="arg2">The second value.</param>
162 /// <returns>The vector containing the result of the multiplication.</returns>
163 /// <since_tizen> 3 </since_tizen>
164 public static Vector3 operator *(Vector3 arg1, Vector3 arg2)
166 return arg1.Multiply(arg2);
170 /// The multiplication operator.
172 /// <param name="arg1">The first value.</param>
173 /// <param name="arg2">The float value to scale the vector.</param>
174 /// <returns>The vector containing the result of the scaling.</returns>
175 /// <since_tizen> 3 </since_tizen>
176 public static Vector3 operator *(Vector3 arg1, float arg2)
178 return arg1.Multiply(arg2);
182 /// The division operator.
184 /// <param name="arg1">The first value.</param>
185 /// <param name="arg2">The second value.</param>
186 /// <returns>The vector containing the result of the division.</returns>
187 /// <since_tizen> 3 </since_tizen>
188 public static Vector3 operator /(Vector3 arg1, Vector3 arg2)
190 return arg1.Divide(arg2);
194 /// The division operator.
196 /// <param name="arg1">The first value.</param>
197 /// <param name="arg2">The float value to scale the vector by.</param>
198 /// <returns>The vector containing the result of the scaling.</returns>
199 /// <since_tizen> 3 </since_tizen>
200 public static Vector3 operator /(Vector3 arg1, float arg2)
202 return arg1.Divide(arg2);
206 /// An array subscript operator overload.
208 /// <param name="index">The subscript index.</param>
209 /// <returns>The float at the given index.</returns>
210 /// <since_tizen> 3 </since_tizen>
211 public float this[uint index]
215 return ValueOfIndex(index);
219 internal static Vector3 GetVector3FromPtr(global::System.IntPtr cPtr)
221 Vector3 ret = new Vector3(cPtr, false);
222 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
229 /// <since_tizen> 3 </since_tizen>
230 public Vector3() : this(NDalicPINVOKE.new_Vector3__SWIG_0(), true)
232 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
236 /// The default constructor initializes the vector to 0.
238 /// <param name="x">The x (or width) component.</param>
239 /// <param name="y">The y (or height) component.</param>
240 /// <param name="z">The z (or depth) component.</param>
241 /// <since_tizen> 3 </since_tizen>
242 public Vector3(float x, float y, float z) : this(NDalicPINVOKE.new_Vector3__SWIG_1(x, y, z), true)
244 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
248 /// Conversion constructor from an array of three floats.
250 /// <param name="array">An array of xyz.</param>
251 /// <since_tizen> 3 </since_tizen>
252 public Vector3(float[] array) : this(NDalicPINVOKE.new_Vector3__SWIG_2(array), true)
254 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
260 /// <param name="vec2">Vector2 to create this vector from.</param>
261 /// <since_tizen> 3 </since_tizen>
262 public Vector3(Vector2 vec2) : this(NDalicPINVOKE.new_Vector3__SWIG_3(Vector2.getCPtr(vec2)), true)
264 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
270 /// <param name="vec4">Vector4 to create this vector from.</param>
271 /// <since_tizen> 3 </since_tizen>
272 public Vector3(Vector4 vec4) : this(NDalicPINVOKE.new_Vector3__SWIG_4(Vector4.getCPtr(vec4)), true)
274 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
278 /// (1.0f,1.0f,1.0f).
280 /// <since_tizen> 3 </since_tizen>
281 public static Vector3 One
285 global::System.IntPtr cPtr = NDalicPINVOKE.Vector3_ONE_get();
286 Vector3 ret = (cPtr == global::System.IntPtr.Zero) ? null : new Vector3(cPtr, false);
287 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
293 /// The vector representing the x-axis.
295 /// <since_tizen> 3 </since_tizen>
296 public static Vector3 XAxis
300 global::System.IntPtr cPtr = NDalicPINVOKE.Vector3_XAXIS_get();
301 Vector3 ret = (cPtr == global::System.IntPtr.Zero) ? null : new Vector3(cPtr, false);
302 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
308 /// The vector representing the y-axis.
310 /// <since_tizen> 3 </since_tizen>
311 public static Vector3 YAxis
315 global::System.IntPtr cPtr = NDalicPINVOKE.Vector3_YAXIS_get();
316 Vector3 ret = (cPtr == global::System.IntPtr.Zero) ? null : new Vector3(cPtr, false);
317 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
323 /// The vector representing the z-axis.
325 /// <since_tizen> 3 </since_tizen>
326 public static Vector3 ZAxis
330 global::System.IntPtr cPtr = NDalicPINVOKE.Vector3_ZAXIS_get();
331 Vector3 ret = (cPtr == global::System.IntPtr.Zero) ? null : new Vector3(cPtr, false);
332 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
338 /// The vector representing the negative x-axis.
340 /// <since_tizen> 3 </since_tizen>
341 public static Vector3 NegativeXAxis
345 global::System.IntPtr cPtr = NDalicPINVOKE.Vector3_NEGATIVE_XAXIS_get();
346 Vector3 ret = (cPtr == global::System.IntPtr.Zero) ? null : new Vector3(cPtr, false);
347 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
353 /// Th vector representing the negative y-axis.
355 /// <since_tizen> 3 </since_tizen>
356 public static Vector3 NegativeYAxis
360 global::System.IntPtr cPtr = NDalicPINVOKE.Vector3_NEGATIVE_YAXIS_get();
361 Vector3 ret = (cPtr == global::System.IntPtr.Zero) ? null : new Vector3(cPtr, false);
362 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
368 /// The vector representing the negative z-axis.
370 /// <since_tizen> 3 </since_tizen>
371 public static Vector3 NegativeZAxis
375 global::System.IntPtr cPtr = NDalicPINVOKE.Vector3_NEGATIVE_ZAXIS_get();
376 Vector3 ret = (cPtr == global::System.IntPtr.Zero) ? null : new Vector3(cPtr, false);
377 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
383 /// (0.0f, 0.0f, 0.0f).
385 /// <since_tizen> 3 </since_tizen>
386 public static Vector3 Zero
390 global::System.IntPtr cPtr = NDalicPINVOKE.Vector3_ZERO_get();
391 Vector3 ret = (cPtr == global::System.IntPtr.Zero) ? null : new Vector3(cPtr, false);
392 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
397 private Vector3 Add(Vector3 rhs)
399 Vector3 ret = new Vector3(NDalicPINVOKE.Vector3_Add(swigCPtr, Vector3.getCPtr(rhs)), true);
400 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
404 private Vector3 AddAssign(Vector3 rhs)
406 Vector3 ret = new Vector3(NDalicPINVOKE.Vector3_AddAssign(swigCPtr, Vector3.getCPtr(rhs)), false);
407 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
411 private Vector3 Subtract(Vector3 rhs)
413 Vector3 ret = new Vector3(NDalicPINVOKE.Vector3_Subtract__SWIG_0(swigCPtr, Vector3.getCPtr(rhs)), true);
414 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
418 private Vector3 SubtractAssign(Vector3 rhs)
420 Vector3 ret = new Vector3(NDalicPINVOKE.Vector3_SubtractAssign(swigCPtr, Vector3.getCPtr(rhs)), false);
421 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
425 private Vector3 Multiply(Vector3 rhs)
427 Vector3 ret = new Vector3(NDalicPINVOKE.Vector3_Multiply__SWIG_0(swigCPtr, Vector3.getCPtr(rhs)), true);
428 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
432 private Vector3 Multiply(float rhs)
434 Vector3 ret = new Vector3(NDalicPINVOKE.Vector3_Multiply__SWIG_1(swigCPtr, rhs), true);
435 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
439 private Vector3 MultiplyAssign(Vector3 rhs)
441 Vector3 ret = new Vector3(NDalicPINVOKE.Vector3_MultiplyAssign__SWIG_0(swigCPtr, Vector3.getCPtr(rhs)), false);
442 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
446 private Vector3 MultiplyAssign(float rhs)
448 Vector3 ret = new Vector3(NDalicPINVOKE.Vector3_MultiplyAssign__SWIG_1(swigCPtr, rhs), false);
449 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
453 private Vector3 MultiplyAssign(Rotation rhs)
455 Vector3 ret = new Vector3(NDalicPINVOKE.Vector3_MultiplyAssign__SWIG_2(swigCPtr, Rotation.getCPtr(rhs)), false);
456 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
460 private Vector3 Divide(Vector3 rhs)
462 Vector3 ret = new Vector3(NDalicPINVOKE.Vector3_Divide__SWIG_0(swigCPtr, Vector3.getCPtr(rhs)), true);
463 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
467 private Vector3 Divide(float rhs)
469 Vector3 ret = new Vector3(NDalicPINVOKE.Vector3_Divide__SWIG_1(swigCPtr, rhs), true);
470 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
474 private Vector3 DivideAssign(Vector3 rhs)
476 Vector3 ret = new Vector3(NDalicPINVOKE.Vector3_DivideAssign__SWIG_0(swigCPtr, Vector3.getCPtr(rhs)), false);
477 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
481 private Vector3 DivideAssign(float rhs)
483 Vector3 ret = new Vector3(NDalicPINVOKE.Vector3_DivideAssign__SWIG_1(swigCPtr, rhs), false);
484 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
488 private Vector3 Subtract()
490 Vector3 ret = new Vector3(NDalicPINVOKE.Vector3_Subtract__SWIG_1(swigCPtr), true);
491 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
495 private bool EqualTo(Vector3 rhs)
497 bool ret = NDalicPINVOKE.Vector3_EqualTo(swigCPtr, Vector3.getCPtr(rhs));
498 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
502 private bool NotEqualTo(Vector3 rhs)
504 bool ret = NDalicPINVOKE.Vector3_NotEqualTo(swigCPtr, Vector3.getCPtr(rhs));
505 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
509 private float ValueOfIndex(uint index)
511 float ret = NDalicPINVOKE.Vector3_ValueOfIndex__SWIG_0(swigCPtr, index);
512 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
516 internal float Dot(Vector3 other)
518 float ret = NDalicPINVOKE.Vector3_Dot(swigCPtr, Vector3.getCPtr(other));
519 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
523 internal Vector3 Cross(Vector3 other)
525 Vector3 ret = new Vector3(NDalicPINVOKE.Vector3_Cross(swigCPtr, Vector3.getCPtr(other)), true);
526 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
531 /// Returns the length of the vector.
533 /// <returns>The length of the vector.</returns>
534 /// <since_tizen> 3 </since_tizen>
535 public float Length()
537 float ret = NDalicPINVOKE.Vector3_Length(swigCPtr);
538 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
543 /// Returns the length of the vector squared.<br />
544 /// This is more efficient than Length() for threshold
545 /// testing as it avoids the use of a square root.<br />
547 /// <returns>The length of the vector squared.</returns>
548 /// <since_tizen> 3 </since_tizen>
549 public float LengthSquared()
551 float ret = NDalicPINVOKE.Vector3_LengthSquared(swigCPtr);
552 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
557 /// Sets the vector to be unit length, whilst maintaining its direction.
559 /// <since_tizen> 3 </since_tizen>
560 public void Normalize()
562 NDalicPINVOKE.Vector3_Normalize(swigCPtr);
563 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
567 /// Clamps the vector between minimum and maximum vectors.
569 /// <param name="min">The minimum vector.</param>
570 /// <param name="max">The maximum vector.</param>
571 /// <since_tizen> 3 </since_tizen>
572 public void Clamp(Vector3 min, Vector3 max)
574 NDalicPINVOKE.Vector3_Clamp(swigCPtr, Vector3.getCPtr(min), Vector3.getCPtr(max));
575 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
578 internal SWIGTYPE_p_float AsFloat()
580 global::System.IntPtr cPtr = NDalicPINVOKE.Vector3_AsFloat__SWIG_0(swigCPtr);
581 SWIGTYPE_p_float ret = (cPtr == global::System.IntPtr.Zero) ? null : new SWIGTYPE_p_float(cPtr, false);
582 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
587 /// Returns the x and y components (or width and height, or r and g) as a Vector2.
589 /// <returns>The partial vector contents as Vector2 (x,y).</returns>
590 /// <since_tizen> 3 </since_tizen>
591 public Vector2 GetVectorXY()
593 Vector2 ret = new Vector2(NDalicPINVOKE.Vector3_GetVectorXY__SWIG_0(swigCPtr), false);
594 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
599 /// Returns the y and z components (or height and depth, or g and b) as a Vector2.
601 /// <returns>The partial vector contents as Vector2 (y,z).</returns>
602 /// <since_tizen> 3 </since_tizen>
603 public Vector2 GetVectorYZ()
605 Vector2 ret = new Vector2(NDalicPINVOKE.Vector3_GetVectorYZ__SWIG_0(swigCPtr), false);
606 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
613 /// <since_tizen> 3 </since_tizen>
618 NDalicPINVOKE.Vector3_X_set(swigCPtr, value);
619 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
623 float ret = NDalicPINVOKE.Vector3_X_get(swigCPtr);
624 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
630 /// The width component.
632 /// <since_tizen> 3 </since_tizen>
637 NDalicPINVOKE.Vector3_Width_set(swigCPtr, value);
638 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
642 float ret = NDalicPINVOKE.Vector3_Width_get(swigCPtr);
643 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
649 /// The red component.
651 /// <since_tizen> 3 </since_tizen>
656 NDalicPINVOKE.Vector3_r_set(swigCPtr, value);
657 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
661 float ret = NDalicPINVOKE.Vector3_r_get(swigCPtr);
662 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
670 /// <since_tizen> 3 </since_tizen>
675 NDalicPINVOKE.Vector3_Y_set(swigCPtr, value);
676 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
680 float ret = NDalicPINVOKE.Vector3_Y_get(swigCPtr);
681 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
687 /// The height component.
689 /// <since_tizen> 3 </since_tizen>
694 NDalicPINVOKE.Vector3_Height_set(swigCPtr, value);
695 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
699 float ret = NDalicPINVOKE.Vector3_Height_get(swigCPtr);
700 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
706 /// The green component.
708 /// <since_tizen> 3 </since_tizen>
713 NDalicPINVOKE.Vector3_g_set(swigCPtr, value);
714 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
718 float ret = NDalicPINVOKE.Vector3_g_get(swigCPtr);
719 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
727 /// <since_tizen> 3 </since_tizen>
732 NDalicPINVOKE.Vector3_Z_set(swigCPtr, value);
733 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
737 float ret = NDalicPINVOKE.Vector3_Z_get(swigCPtr);
738 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
744 /// The depth component.
746 /// <since_tizen> 3 </since_tizen>
751 NDalicPINVOKE.Vector3_Depth_set(swigCPtr, value);
752 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
756 float ret = NDalicPINVOKE.Vector3_Depth_get(swigCPtr);
757 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
763 /// The blue component.
765 /// <since_tizen> 3 </since_tizen>
770 NDalicPINVOKE.Vector3_b_set(swigCPtr, value);
771 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
775 float ret = NDalicPINVOKE.Vector3_b_get(swigCPtr);
776 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();