# double3

> A 3 component vector of doubles.

## Definition

* **Type:** Struct
* **Namespace:** [Unity.Mathematics](/engine/6000.5/script-reference/unity/mathematics.md)
* **Assembly:** UnityEngine.MathematicsModule
* **Implements:** [IEquatable\<double3>](https://learn.microsoft.com/dotnet/api/system.iequatable-1), [IFormattable](https://learn.microsoft.com/dotnet/api/system.iformattable)

```csharp
public struct double3 : IEquatable<double3>, IFormattable
```

## Fields

| Value                                                               | Description                |
| ------------------------------------------------------------------- | -------------------------- |
| [x](/engine/6000.5/script-reference/unity/mathematics/double3/x.md) | x component of the vector. |
| [y](/engine/6000.5/script-reference/unity/mathematics/double3/y.md) | y component of the vector. |
| [z](/engine/6000.5/script-reference/unity/mathematics/double3/z.md) | z component of the vector. |

## Static Fields

| Value                                                                     | Description         |
| ------------------------------------------------------------------------- | ------------------- |
| [zero](/engine/6000.5/script-reference/unity/mathematics/double3/zero.md) | double3 zero value. |

## Constructors

| Constructor                                                                                                                                             | Description                                                                                                           |
| ------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------- |
| [double3(System.Boolean)](/engine/6000.5/script-reference/unity/mathematics/double3/ctor.md#double3\(bool\))                                            | Constructs a double3 vector from a single bool value by converting it to double and assigning it to every component.  |
| [double3(System.Double)](/engine/6000.5/script-reference/unity/mathematics/double3/ctor.md#double3\(double\))                                           | Constructs a double3 vector from a single double value by assigning it to every component.                            |
| [double3(System.Double,System.Double,System.Double)](/engine/6000.5/script-reference/unity/mathematics/double3/ctor.md#double3\(double-double-double\)) | Constructs a double3 vector from three double values.                                                                 |
| [double3(System.Double,Unity.Mathematics.double2)](/engine/6000.5/script-reference/unity/mathematics/double3/ctor.md#double3\(double-double2\))         | Constructs a double3 vector from a double value and a double2 vector.                                                 |
| [double3(System.Int32)](/engine/6000.5/script-reference/unity/mathematics/double3/ctor.md#double3\(int\))                                               | Constructs a double3 vector from a single int value by converting it to double and assigning it to every component.   |
| [double3(System.Single)](/engine/6000.5/script-reference/unity/mathematics/double3/ctor.md#double3\(float\))                                            | Constructs a double3 vector from a single float value by converting it to double and assigning it to every component. |
| [double3(System.UInt32)](/engine/6000.5/script-reference/unity/mathematics/double3/ctor.md#double3\(uint\))                                             | Constructs a double3 vector from a single uint value by converting it to double and assigning it to every component.  |
| [double3(Unity.Mathematics.bool3)](/engine/6000.5/script-reference/unity/mathematics/double3/ctor.md#double3\(bool3\))                                  | Constructs a double3 vector from a bool3 vector by componentwise conversion.                                          |
| [double3(Unity.Mathematics.double2,System.Double)](/engine/6000.5/script-reference/unity/mathematics/double3/ctor.md#double3\(double2-double\))         | Constructs a double3 vector from a double2 vector and a double value.                                                 |
| [double3(Unity.Mathematics.double3)](/engine/6000.5/script-reference/unity/mathematics/double3/ctor.md#double3\(double3\))                              | Constructs a double3 vector from a double3 vector.                                                                    |
| [double3(Unity.Mathematics.float3)](/engine/6000.5/script-reference/unity/mathematics/double3/ctor.md#double3\(float3\))                                | Constructs a double3 vector from a float3 vector by componentwise conversion.                                         |
| [double3(Unity.Mathematics.half)](/engine/6000.5/script-reference/unity/mathematics/double3/ctor.md#double3\(half\))                                    | Constructs a double3 vector from a single half value by converting it to double and assigning it to every component.  |
| [double3(Unity.Mathematics.half3)](/engine/6000.5/script-reference/unity/mathematics/double3/ctor.md#double3\(half3\))                                  | Constructs a double3 vector from a half3 vector by componentwise conversion.                                          |
| [double3(Unity.Mathematics.int3)](/engine/6000.5/script-reference/unity/mathematics/double3/ctor.md#double3\(int3\))                                    | Constructs a double3 vector from a int3 vector by componentwise conversion.                                           |
| [double3(Unity.Mathematics.uint3)](/engine/6000.5/script-reference/unity/mathematics/double3/ctor.md#double3\(uint3\))                                  | Constructs a double3 vector from a uint3 vector by componentwise conversion.                                          |

## Properties

| Property                                                                      | Description                                      |
| ----------------------------------------------------------------------------- | ------------------------------------------------ |
| [this\[\]](/engine/6000.5/script-reference/unity/mathematics/double3/item.md) | Returns the double element at a specified index. |
| [xx](/engine/6000.5/script-reference/unity/mathematics/double3/xx.md)         | Swizzles the vector.                             |
| [xxx](/engine/6000.5/script-reference/unity/mathematics/double3/xxx.md)       | Swizzles the vector.                             |
| [xxxx](/engine/6000.5/script-reference/unity/mathematics/double3/xxxx.md)     | Swizzles the vector.                             |
| [xxxy](/engine/6000.5/script-reference/unity/mathematics/double3/xxxy.md)     | Swizzles the vector.                             |
| [xxxz](/engine/6000.5/script-reference/unity/mathematics/double3/xxxz.md)     | Swizzles the vector.                             |
| [xxy](/engine/6000.5/script-reference/unity/mathematics/double3/xxy.md)       | Swizzles the vector.                             |
| [xxyx](/engine/6000.5/script-reference/unity/mathematics/double3/xxyx.md)     | Swizzles the vector.                             |
| [xxyy](/engine/6000.5/script-reference/unity/mathematics/double3/xxyy.md)     | Swizzles the vector.                             |
| [xxyz](/engine/6000.5/script-reference/unity/mathematics/double3/xxyz.md)     | Swizzles the vector.                             |
| [xxz](/engine/6000.5/script-reference/unity/mathematics/double3/xxz.md)       | Swizzles the vector.                             |
| [xxzx](/engine/6000.5/script-reference/unity/mathematics/double3/xxzx.md)     | Swizzles the vector.                             |
| [xxzy](/engine/6000.5/script-reference/unity/mathematics/double3/xxzy.md)     | Swizzles the vector.                             |
| [xxzz](/engine/6000.5/script-reference/unity/mathematics/double3/xxzz.md)     | Swizzles the vector.                             |
| [xy](/engine/6000.5/script-reference/unity/mathematics/double3/xy.md)         | Swizzles the vector.                             |
| [xyx](/engine/6000.5/script-reference/unity/mathematics/double3/xyx.md)       | Swizzles the vector.                             |
| [xyxx](/engine/6000.5/script-reference/unity/mathematics/double3/xyxx.md)     | Swizzles the vector.                             |
| [xyxy](/engine/6000.5/script-reference/unity/mathematics/double3/xyxy.md)     | Swizzles the vector.                             |
| [xyxz](/engine/6000.5/script-reference/unity/mathematics/double3/xyxz.md)     | Swizzles the vector.                             |
| [xyy](/engine/6000.5/script-reference/unity/mathematics/double3/xyy.md)       | Swizzles the vector.                             |
| [xyyx](/engine/6000.5/script-reference/unity/mathematics/double3/xyyx.md)     | Swizzles the vector.                             |
| [xyyy](/engine/6000.5/script-reference/unity/mathematics/double3/xyyy.md)     | Swizzles the vector.                             |
| [xyyz](/engine/6000.5/script-reference/unity/mathematics/double3/xyyz.md)     | Swizzles the vector.                             |
| [xyz](/engine/6000.5/script-reference/unity/mathematics/double3/xyz.md)       | Swizzles the vector.                             |
| [xyzx](/engine/6000.5/script-reference/unity/mathematics/double3/xyzx.md)     | Swizzles the vector.                             |
| [xyzy](/engine/6000.5/script-reference/unity/mathematics/double3/xyzy.md)     | Swizzles the vector.                             |
| [xyzz](/engine/6000.5/script-reference/unity/mathematics/double3/xyzz.md)     | Swizzles the vector.                             |
| [xz](/engine/6000.5/script-reference/unity/mathematics/double3/xz.md)         | Swizzles the vector.                             |
| [xzx](/engine/6000.5/script-reference/unity/mathematics/double3/xzx.md)       | Swizzles the vector.                             |
| [xzxx](/engine/6000.5/script-reference/unity/mathematics/double3/xzxx.md)     | Swizzles the vector.                             |
| [xzxy](/engine/6000.5/script-reference/unity/mathematics/double3/xzxy.md)     | Swizzles the vector.                             |
| [xzxz](/engine/6000.5/script-reference/unity/mathematics/double3/xzxz.md)     | Swizzles the vector.                             |
| [xzy](/engine/6000.5/script-reference/unity/mathematics/double3/xzy.md)       | Swizzles the vector.                             |
| [xzyx](/engine/6000.5/script-reference/unity/mathematics/double3/xzyx.md)     | Swizzles the vector.                             |
| [xzyy](/engine/6000.5/script-reference/unity/mathematics/double3/xzyy.md)     | Swizzles the vector.                             |
| [xzyz](/engine/6000.5/script-reference/unity/mathematics/double3/xzyz.md)     | Swizzles the vector.                             |
| [xzz](/engine/6000.5/script-reference/unity/mathematics/double3/xzz.md)       | Swizzles the vector.                             |
| [xzzx](/engine/6000.5/script-reference/unity/mathematics/double3/xzzx.md)     | Swizzles the vector.                             |
| [xzzy](/engine/6000.5/script-reference/unity/mathematics/double3/xzzy.md)     | Swizzles the vector.                             |
| [xzzz](/engine/6000.5/script-reference/unity/mathematics/double3/xzzz.md)     | Swizzles the vector.                             |
| [yx](/engine/6000.5/script-reference/unity/mathematics/double3/yx.md)         | Swizzles the vector.                             |
| [yxx](/engine/6000.5/script-reference/unity/mathematics/double3/yxx.md)       | Swizzles the vector.                             |
| [yxxx](/engine/6000.5/script-reference/unity/mathematics/double3/yxxx.md)     | Swizzles the vector.                             |
| [yxxy](/engine/6000.5/script-reference/unity/mathematics/double3/yxxy.md)     | Swizzles the vector.                             |
| [yxxz](/engine/6000.5/script-reference/unity/mathematics/double3/yxxz.md)     | Swizzles the vector.                             |
| [yxy](/engine/6000.5/script-reference/unity/mathematics/double3/yxy.md)       | Swizzles the vector.                             |
| [yxyx](/engine/6000.5/script-reference/unity/mathematics/double3/yxyx.md)     | Swizzles the vector.                             |
| [yxyy](/engine/6000.5/script-reference/unity/mathematics/double3/yxyy.md)     | Swizzles the vector.                             |
| [yxyz](/engine/6000.5/script-reference/unity/mathematics/double3/yxyz.md)     | Swizzles the vector.                             |
| [yxz](/engine/6000.5/script-reference/unity/mathematics/double3/yxz.md)       | Swizzles the vector.                             |
| [yxzx](/engine/6000.5/script-reference/unity/mathematics/double3/yxzx.md)     | Swizzles the vector.                             |
| [yxzy](/engine/6000.5/script-reference/unity/mathematics/double3/yxzy.md)     | Swizzles the vector.                             |
| [yxzz](/engine/6000.5/script-reference/unity/mathematics/double3/yxzz.md)     | Swizzles the vector.                             |
| [yy](/engine/6000.5/script-reference/unity/mathematics/double3/yy.md)         | Swizzles the vector.                             |
| [yyx](/engine/6000.5/script-reference/unity/mathematics/double3/yyx.md)       | Swizzles the vector.                             |
| [yyxx](/engine/6000.5/script-reference/unity/mathematics/double3/yyxx.md)     | Swizzles the vector.                             |
| [yyxy](/engine/6000.5/script-reference/unity/mathematics/double3/yyxy.md)     | Swizzles the vector.                             |
| [yyxz](/engine/6000.5/script-reference/unity/mathematics/double3/yyxz.md)     | Swizzles the vector.                             |
| [yyy](/engine/6000.5/script-reference/unity/mathematics/double3/yyy.md)       | Swizzles the vector.                             |
| [yyyx](/engine/6000.5/script-reference/unity/mathematics/double3/yyyx.md)     | Swizzles the vector.                             |
| [yyyy](/engine/6000.5/script-reference/unity/mathematics/double3/yyyy.md)     | Swizzles the vector.                             |
| [yyyz](/engine/6000.5/script-reference/unity/mathematics/double3/yyyz.md)     | Swizzles the vector.                             |
| [yyz](/engine/6000.5/script-reference/unity/mathematics/double3/yyz.md)       | Swizzles the vector.                             |
| [yyzx](/engine/6000.5/script-reference/unity/mathematics/double3/yyzx.md)     | Swizzles the vector.                             |
| [yyzy](/engine/6000.5/script-reference/unity/mathematics/double3/yyzy.md)     | Swizzles the vector.                             |
| [yyzz](/engine/6000.5/script-reference/unity/mathematics/double3/yyzz.md)     | Swizzles the vector.                             |
| [yz](/engine/6000.5/script-reference/unity/mathematics/double3/yz.md)         | Swizzles the vector.                             |
| [yzx](/engine/6000.5/script-reference/unity/mathematics/double3/yzx.md)       | Swizzles the vector.                             |
| [yzxx](/engine/6000.5/script-reference/unity/mathematics/double3/yzxx.md)     | Swizzles the vector.                             |
| [yzxy](/engine/6000.5/script-reference/unity/mathematics/double3/yzxy.md)     | Swizzles the vector.                             |
| [yzxz](/engine/6000.5/script-reference/unity/mathematics/double3/yzxz.md)     | Swizzles the vector.                             |
| [yzy](/engine/6000.5/script-reference/unity/mathematics/double3/yzy.md)       | Swizzles the vector.                             |
| [yzyx](/engine/6000.5/script-reference/unity/mathematics/double3/yzyx.md)     | Swizzles the vector.                             |
| [yzyy](/engine/6000.5/script-reference/unity/mathematics/double3/yzyy.md)     | Swizzles the vector.                             |
| [yzyz](/engine/6000.5/script-reference/unity/mathematics/double3/yzyz.md)     | Swizzles the vector.                             |
| [yzz](/engine/6000.5/script-reference/unity/mathematics/double3/yzz.md)       | Swizzles the vector.                             |
| [yzzx](/engine/6000.5/script-reference/unity/mathematics/double3/yzzx.md)     | Swizzles the vector.                             |
| [yzzy](/engine/6000.5/script-reference/unity/mathematics/double3/yzzy.md)     | Swizzles the vector.                             |
| [yzzz](/engine/6000.5/script-reference/unity/mathematics/double3/yzzz.md)     | Swizzles the vector.                             |
| [zx](/engine/6000.5/script-reference/unity/mathematics/double3/zx.md)         | Swizzles the vector.                             |
| [zxx](/engine/6000.5/script-reference/unity/mathematics/double3/zxx.md)       | Swizzles the vector.                             |
| [zxxx](/engine/6000.5/script-reference/unity/mathematics/double3/zxxx.md)     | Swizzles the vector.                             |
| [zxxy](/engine/6000.5/script-reference/unity/mathematics/double3/zxxy.md)     | Swizzles the vector.                             |
| [zxxz](/engine/6000.5/script-reference/unity/mathematics/double3/zxxz.md)     | Swizzles the vector.                             |
| [zxy](/engine/6000.5/script-reference/unity/mathematics/double3/zxy.md)       | Swizzles the vector.                             |
| [zxyx](/engine/6000.5/script-reference/unity/mathematics/double3/zxyx.md)     | Swizzles the vector.                             |
| [zxyy](/engine/6000.5/script-reference/unity/mathematics/double3/zxyy.md)     | Swizzles the vector.                             |
| [zxyz](/engine/6000.5/script-reference/unity/mathematics/double3/zxyz.md)     | Swizzles the vector.                             |
| [zxz](/engine/6000.5/script-reference/unity/mathematics/double3/zxz.md)       | Swizzles the vector.                             |
| [zxzx](/engine/6000.5/script-reference/unity/mathematics/double3/zxzx.md)     | Swizzles the vector.                             |
| [zxzy](/engine/6000.5/script-reference/unity/mathematics/double3/zxzy.md)     | Swizzles the vector.                             |
| [zxzz](/engine/6000.5/script-reference/unity/mathematics/double3/zxzz.md)     | Swizzles the vector.                             |
| [zy](/engine/6000.5/script-reference/unity/mathematics/double3/zy.md)         | Swizzles the vector.                             |
| [zyx](/engine/6000.5/script-reference/unity/mathematics/double3/zyx.md)       | Swizzles the vector.                             |
| [zyxx](/engine/6000.5/script-reference/unity/mathematics/double3/zyxx.md)     | Swizzles the vector.                             |
| [zyxy](/engine/6000.5/script-reference/unity/mathematics/double3/zyxy.md)     | Swizzles the vector.                             |
| [zyxz](/engine/6000.5/script-reference/unity/mathematics/double3/zyxz.md)     | Swizzles the vector.                             |
| [zyy](/engine/6000.5/script-reference/unity/mathematics/double3/zyy.md)       | Swizzles the vector.                             |
| [zyyx](/engine/6000.5/script-reference/unity/mathematics/double3/zyyx.md)     | Swizzles the vector.                             |
| [zyyy](/engine/6000.5/script-reference/unity/mathematics/double3/zyyy.md)     | Swizzles the vector.                             |
| [zyyz](/engine/6000.5/script-reference/unity/mathematics/double3/zyyz.md)     | Swizzles the vector.                             |
| [zyz](/engine/6000.5/script-reference/unity/mathematics/double3/zyz.md)       | Swizzles the vector.                             |
| [zyzx](/engine/6000.5/script-reference/unity/mathematics/double3/zyzx.md)     | Swizzles the vector.                             |
| [zyzy](/engine/6000.5/script-reference/unity/mathematics/double3/zyzy.md)     | Swizzles the vector.                             |
| [zyzz](/engine/6000.5/script-reference/unity/mathematics/double3/zyzz.md)     | Swizzles the vector.                             |
| [zz](/engine/6000.5/script-reference/unity/mathematics/double3/zz.md)         | Swizzles the vector.                             |
| [zzx](/engine/6000.5/script-reference/unity/mathematics/double3/zzx.md)       | Swizzles the vector.                             |
| [zzxx](/engine/6000.5/script-reference/unity/mathematics/double3/zzxx.md)     | Swizzles the vector.                             |
| [zzxy](/engine/6000.5/script-reference/unity/mathematics/double3/zzxy.md)     | Swizzles the vector.                             |
| [zzxz](/engine/6000.5/script-reference/unity/mathematics/double3/zzxz.md)     | Swizzles the vector.                             |
| [zzy](/engine/6000.5/script-reference/unity/mathematics/double3/zzy.md)       | Swizzles the vector.                             |
| [zzyx](/engine/6000.5/script-reference/unity/mathematics/double3/zzyx.md)     | Swizzles the vector.                             |
| [zzyy](/engine/6000.5/script-reference/unity/mathematics/double3/zzyy.md)     | Swizzles the vector.                             |
| [zzyz](/engine/6000.5/script-reference/unity/mathematics/double3/zzyz.md)     | Swizzles the vector.                             |
| [zzz](/engine/6000.5/script-reference/unity/mathematics/double3/zzz.md)       | Swizzles the vector.                             |
| [zzzx](/engine/6000.5/script-reference/unity/mathematics/double3/zzzx.md)     | Swizzles the vector.                             |
| [zzzy](/engine/6000.5/script-reference/unity/mathematics/double3/zzzy.md)     | Swizzles the vector.                             |
| [zzzz](/engine/6000.5/script-reference/unity/mathematics/double3/zzzz.md)     | Swizzles the vector.                             |

## Methods

| Method                                                                                  | Description                                                               |
| --------------------------------------------------------------------------------------- | ------------------------------------------------------------------------- |
| [Equals](/engine/6000.5/script-reference/unity/mathematics/double3/equals.md)           | Returns true if the double3 is equal to a given double3, false otherwise. |
| [GetHashCode](/engine/6000.5/script-reference/unity/mathematics/double3/gethashcode.md) | Returns a hash code for the double3.                                      |
| [ToString](/engine/6000.5/script-reference/unity/mathematics/double3/tostring.md)       | Returns a string representation of the double3.                           |

## Operators

| Operator                                                                                          | Description                                                                                                                 |
| ------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------- |
| [operator +](/engine/6000.5/script-reference/unity/mathematics/double3/op-addition.md)            | Returns the result of a componentwise addition operation on a double value and a double3 vector.                            |
| [operator --](/engine/6000.5/script-reference/unity/mathematics/double3/op-decrement.md)          | Returns the result of a componentwise decrement operation on a double3 vector.                                              |
| [operator /](/engine/6000.5/script-reference/unity/mathematics/double3/op-division.md)            | Returns the result of a componentwise division operation on a double value and a double3 vector.                            |
| [operator ==](/engine/6000.5/script-reference/unity/mathematics/double3/op-equality.md)           | Returns the result of a componentwise equality operation on a double value and a double3 vector.                            |
| [double3](/engine/6000.5/script-reference/unity/mathematics/double3/op-explicit.md)               | Explicitly converts a single bool value to a double3 vector by converting it to double and assigning it to every component. |
| [operator >](/engine/6000.5/script-reference/unity/mathematics/double3/op-greaterthan.md)         | Returns the result of a componentwise greater than operation on a double value and a double3 vector.                        |
| [operator >=](/engine/6000.5/script-reference/unity/mathematics/double3/op-greaterthanorequal.md) | Returns the result of a componentwise greater or equal operation on a double value and a double3 vector.                    |
| [operator ++](/engine/6000.5/script-reference/unity/mathematics/double3/op-increment.md)          | Returns the result of a componentwise increment operation on a double3 vector.                                              |
| [operator !=](/engine/6000.5/script-reference/unity/mathematics/double3/op-inequality.md)         | Returns the result of a componentwise not equal operation on a double value and a double3 vector.                           |
| [operator \<](/engine/6000.5/script-reference/unity/mathematics/double3/op-lessthan.md)           | Returns the result of a componentwise less than operation on a double value and a double3 vector.                           |
| [operator \<=](/engine/6000.5/script-reference/unity/mathematics/double3/op-lessthanorequal.md)   | Returns the result of a componentwise less or equal operation on a double value and a double3 vector.                       |
| [operator %](/engine/6000.5/script-reference/unity/mathematics/double3/op-modulus.md)             | Returns the result of a componentwise modulus operation on a double value and a double3 vector.                             |
| [operator \*](/engine/6000.5/script-reference/unity/mathematics/double3/op-multiply.md)           | Returns the result of a componentwise multiplication operation on a double value and a double3 vector.                      |
| [operator -](/engine/6000.5/script-reference/unity/mathematics/double3/op-subtraction.md)         | Returns the result of a componentwise subtraction operation on a double value and a double3 vector.                         |
