Files
stgsharp/源代码/StgSharp/Math/Graphic/vec2dInt.cs
T
2023-04-29 03:06:32 +08:00

45 lines
1.1 KiB
C#

using Steamworks;
using System;
using System.Collections.Generic;
using System.Data.Common;
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
using System.Text;
namespace StgSharp.Math
{
[StructLayout(LayoutKind.Explicit,Size = 8)]
public unsafe struct vec2dInt
{
[FieldOffset(0)]
public int X;
[FieldOffset(4)]
public int Y;
public vec2dInt(int x, int y)
{
this.X = x;
this.Y = y;
}
public static implicit operator vec2d(vec2dInt vec)
{
return new vec2d(vec.X,vec.Y);
}
public static implicit operator vec2dInt(vec2d vec)
{
return new vec2dInt((int)vec.X, (int)vec.Y);
}
public static vec2dInt operator +(vec2dInt vec1, vec2dInt vec2)
{
return new vec2dInt(vec1.X + vec2.X, vec1.Y + vec2.Y);
}
public static vec2dInt operator -(vec2dInt vec1, vec2dInt vec2)
{
return new vec2dInt(vec1.X - vec2.X, vec1.Y - vec2.Y);
}
}
}