zworld-demo/plugin/math/ivec2/ivec2.go
2023-12-22 22:04:27 +08:00

33 lines
335 B
Go

package ivec2
var Zero = T{}
var One = T{X: 1, Y: 1}
var UnitX = T{X: 1}
var UnitY = T{Y: 1}
type T struct {
X int
Y int
}
func New(x, y int) T {
return T{
X: x,
Y: y,
}
}
func (v T) Add(v2 T) T {
return T{
X: v.X + v2.X,
Y: v.Y + v2.Y,
}
}
func (v T) Sub(v2 T) T {
return T{
X: v.X - v2.X,
Y: v.Y - v2.Y,
}
}