diff --git a/utils/geometry/position.go b/utils/geometry/position.go index 0cde776..803bf82 100644 --- a/utils/geometry/position.go +++ b/utils/geometry/position.go @@ -43,6 +43,11 @@ func (slf Point[V]) Negative() bool { return slf.GetX() < V(0) || slf.GetY() < V(0) } +// OutOf 返回该点在特定宽高下是否越界 +func (slf Point[V]) OutOf(minWidth, minHeight, maxWidth, maxHeight V) bool { + return slf.GetX() < minWidth || slf.GetY() < minHeight || slf.GetX() >= maxWidth || slf.GetY() >= maxHeight +} + // Equal 返回两个点是否相等 func (slf Point[V]) Equal(point Point[V]) bool { return slf.GetX() == point.GetX() && slf.GetY() == point.GetY()