# double2

> A 2 component vector of doubles.

## Definition

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

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

## Fields

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

## Static Fields

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

## Constructors

| Constructor                                                                                                                        | Description                                                                                                           |
| ---------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------- |
| [double2(System.Boolean)](/engine/6000.7/script-reference/unity/mathematics/double2/ctor.md#double2\(bool\))                       | Constructs a double2 vector from a single bool value by converting it to double and assigning it to every component.  |
| [double2(System.Double)](/engine/6000.7/script-reference/unity/mathematics/double2/ctor.md#double2\(double\))                      | Constructs a double2 vector from a single double value by assigning it to every component.                            |
| [double2(System.Double,System.Double)](/engine/6000.7/script-reference/unity/mathematics/double2/ctor.md#double2\(double-double\)) | Constructs a double2 vector from two double values.                                                                   |
| [double2(System.Int32)](/engine/6000.7/script-reference/unity/mathematics/double2/ctor.md#double2\(int\))                          | Constructs a double2 vector from a single int value by converting it to double and assigning it to every component.   |
| [double2(System.Single)](/engine/6000.7/script-reference/unity/mathematics/double2/ctor.md#double2\(float\))                       | Constructs a double2 vector from a single float value by converting it to double and assigning it to every component. |
| [double2(System.UInt32)](/engine/6000.7/script-reference/unity/mathematics/double2/ctor.md#double2\(uint\))                        | Constructs a double2 vector from a single uint value by converting it to double and assigning it to every component.  |
| [double2(Unity.Mathematics.bool2)](/engine/6000.7/script-reference/unity/mathematics/double2/ctor.md#double2\(bool2\))             | Constructs a double2 vector from a bool2 vector by componentwise conversion.                                          |
| [double2(Unity.Mathematics.double2)](/engine/6000.7/script-reference/unity/mathematics/double2/ctor.md#double2\(double2\))         | Constructs a double2 vector from a double2 vector.                                                                    |
| [double2(Unity.Mathematics.float2)](/engine/6000.7/script-reference/unity/mathematics/double2/ctor.md#double2\(float2\))           | Constructs a double2 vector from a float2 vector by componentwise conversion.                                         |
| [double2(Unity.Mathematics.half)](/engine/6000.7/script-reference/unity/mathematics/double2/ctor.md#double2\(half\))               | Constructs a double2 vector from a single half value by converting it to double and assigning it to every component.  |
| [double2(Unity.Mathematics.half2)](/engine/6000.7/script-reference/unity/mathematics/double2/ctor.md#double2\(half2\))             | Constructs a double2 vector from a half2 vector by componentwise conversion.                                          |
| [double2(Unity.Mathematics.int2)](/engine/6000.7/script-reference/unity/mathematics/double2/ctor.md#double2\(int2\))               | Constructs a double2 vector from a int2 vector by componentwise conversion.                                           |
| [double2(Unity.Mathematics.uint2)](/engine/6000.7/script-reference/unity/mathematics/double2/ctor.md#double2\(uint2\))             | Constructs a double2 vector from a uint2 vector by componentwise conversion.                                          |

## Properties

| Property                                                                      | Description                                      |
| ----------------------------------------------------------------------------- | ------------------------------------------------ |
| [this\[\]](/engine/6000.7/script-reference/unity/mathematics/double2/item.md) | Returns the double element at a specified index. |
| [xx](/engine/6000.7/script-reference/unity/mathematics/double2/xx.md)         | Swizzles the vector.                             |
| [xxx](/engine/6000.7/script-reference/unity/mathematics/double2/xxx.md)       | Swizzles the vector.                             |
| [xxxx](/engine/6000.7/script-reference/unity/mathematics/double2/xxxx.md)     | Swizzles the vector.                             |
| [xxxy](/engine/6000.7/script-reference/unity/mathematics/double2/xxxy.md)     | Swizzles the vector.                             |
| [xxy](/engine/6000.7/script-reference/unity/mathematics/double2/xxy.md)       | Swizzles the vector.                             |
| [xxyx](/engine/6000.7/script-reference/unity/mathematics/double2/xxyx.md)     | Swizzles the vector.                             |
| [xxyy](/engine/6000.7/script-reference/unity/mathematics/double2/xxyy.md)     | Swizzles the vector.                             |
| [xy](/engine/6000.7/script-reference/unity/mathematics/double2/xy.md)         | Swizzles the vector.                             |
| [xyx](/engine/6000.7/script-reference/unity/mathematics/double2/xyx.md)       | Swizzles the vector.                             |
| [xyxx](/engine/6000.7/script-reference/unity/mathematics/double2/xyxx.md)     | Swizzles the vector.                             |
| [xyxy](/engine/6000.7/script-reference/unity/mathematics/double2/xyxy.md)     | Swizzles the vector.                             |
| [xyy](/engine/6000.7/script-reference/unity/mathematics/double2/xyy.md)       | Swizzles the vector.                             |
| [xyyx](/engine/6000.7/script-reference/unity/mathematics/double2/xyyx.md)     | Swizzles the vector.                             |
| [xyyy](/engine/6000.7/script-reference/unity/mathematics/double2/xyyy.md)     | Swizzles the vector.                             |
| [yx](/engine/6000.7/script-reference/unity/mathematics/double2/yx.md)         | Swizzles the vector.                             |
| [yxx](/engine/6000.7/script-reference/unity/mathematics/double2/yxx.md)       | Swizzles the vector.                             |
| [yxxx](/engine/6000.7/script-reference/unity/mathematics/double2/yxxx.md)     | Swizzles the vector.                             |
| [yxxy](/engine/6000.7/script-reference/unity/mathematics/double2/yxxy.md)     | Swizzles the vector.                             |
| [yxy](/engine/6000.7/script-reference/unity/mathematics/double2/yxy.md)       | Swizzles the vector.                             |
| [yxyx](/engine/6000.7/script-reference/unity/mathematics/double2/yxyx.md)     | Swizzles the vector.                             |
| [yxyy](/engine/6000.7/script-reference/unity/mathematics/double2/yxyy.md)     | Swizzles the vector.                             |
| [yy](/engine/6000.7/script-reference/unity/mathematics/double2/yy.md)         | Swizzles the vector.                             |
| [yyx](/engine/6000.7/script-reference/unity/mathematics/double2/yyx.md)       | Swizzles the vector.                             |
| [yyxx](/engine/6000.7/script-reference/unity/mathematics/double2/yyxx.md)     | Swizzles the vector.                             |
| [yyxy](/engine/6000.7/script-reference/unity/mathematics/double2/yyxy.md)     | Swizzles the vector.                             |
| [yyy](/engine/6000.7/script-reference/unity/mathematics/double2/yyy.md)       | Swizzles the vector.                             |
| [yyyx](/engine/6000.7/script-reference/unity/mathematics/double2/yyyx.md)     | Swizzles the vector.                             |
| [yyyy](/engine/6000.7/script-reference/unity/mathematics/double2/yyyy.md)     | Swizzles the vector.                             |

## Methods

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

## Operators

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