Math.inside

From GiderosMobile
Revision as of 14:30, 13 July 2023 by Hgy29 (talk | contribs) (Text replacement - "</source>" to "</syntaxhighlight>")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

Available since: Gideros 2020.9
Class: math

Description

Checks if a point is inside or outside a shape.

(number) = math.inside(point,shape)

Shapes are tables which can have the following forms:

  • { x, y, z, radius }: Represent a sphere (3D) or a circle (2D)
  • { x, y, z, normal }: Represent a plane (3D) or a line (2D)
  • { x, y, z, normal, extent }: Represent a disk (3D) or a segment (2D)
  • { x, y, x2, y2 }: Represent a segment (2D)
  • { x, y, z, 1, 2, ... }: Represent a shape group

Parameters

point: (table) the point to test
shape: (table) the shape to test against

Return values

Returns (number) a positive value if the point is outside, negative if inside, or 0 if on the edge

Examples

print(math.inside({6, 0}, {x=0, y=0, radius=5})) -- 1
print(math.inside({6, 0}, {x=0, y=0, radius=6})) -- 0
print(math.inside({6, 0}, {x=0, y=0, radius=7})) -- -1

See also

math.raycast