A* Pathfinding Project  3.7.2
The A* Pathfinding Project for Unity 3D
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Properties Events Macros Groups Pages
Int2 Struct Reference

Two Dimensional Integer Coordinate Pair. More...

Detailed Description

Two Dimensional Integer Coordinate Pair.

Public Member Functions

 Int2 (int x, int y)
 
override bool Equals (System.Object o)
 
override int GetHashCode ()
 
override string ToString ()
 

Static Public Member Functions

static int Dot (Int2 a, Int2 b)
 
static long DotLong (Int2 a, Int2 b)
 
static Int2 FromInt3XZ (Int3 o)
 
static Int2 Max (Int2 a, Int2 b)
 
static Int2 Min (Int2 a, Int2 b)
 
static bool operator!= (Int2 a, Int2 b)
 
static Int2 operator+ (Int2 a, Int2 b)
 
static Int2 operator- (Int2 a, Int2 b)
 
static bool operator== (Int2 a, Int2 b)
 
static Int2 Rotate (Int2 v, int r)
 Returns a new Int2 rotated 90*r degrees around the origin.
 
static Int3 ToInt3XZ (Int2 o)
 

Public Attributes

int x
 
int y
 

Properties

int sqrMagnitude [get]
 
long sqrMagnitudeLong [get]
 

Static Private Attributes

static readonly int[] Rotations
 Matrices for rotation.
 

Constructor & Destructor Documentation

Int2 ( int  x,
int  y 
)

Member Function Documentation

static int Dot ( Int2  a,
Int2  b 
)
static
static long DotLong ( Int2  a,
Int2  b 
)
static
override bool Equals ( System.Object  o)
static Int2 FromInt3XZ ( Int3  o)
static
override int GetHashCode ( )
static Int2 Max ( Int2  a,
Int2  b 
)
static
static Int2 Min ( Int2  a,
Int2  b 
)
static
static bool operator!= ( Int2  a,
Int2  b 
)
static
static Int2 operator+ ( Int2  a,
Int2  b 
)
static
static Int2 operator- ( Int2  a,
Int2  b 
)
static
static bool operator== ( Int2  a,
Int2  b 
)
static
static Int2 Rotate ( Int2  v,
int  r 
)
static

Returns a new Int2 rotated 90*r degrees around the origin.

static Int3 ToInt3XZ ( Int2  o)
static
override string ToString ( )

Member Data Documentation

readonly int [] Rotations
staticprivate
Initial value:
= {
1, 0,
0, 1,
0, 1,
-1, 0,
-1, 0,
0,-1,
0,-1,
1, 0
}

Matrices for rotation.

Each group of 4 elements is a 2x2 matrix. The XZ position is multiplied by this. So

//A rotation by 90 degrees clockwise, second matrix in the array
(5,2) * ((0, 1), (-1, 0)) = (2,-5)
int x
int y

Property Documentation

int sqrMagnitude
get
long sqrMagnitudeLong
get

The documentation for this struct was generated from the following file: