Difference between revisions of "Math.inside"
From GiderosMobile
(added examples) |
m (Text replacement - "<source" to "<syntaxhighlight") |
||
Line 5: | Line 5: | ||
=== Description === | === Description === | ||
Checks if a point is inside or outside a shape. | Checks if a point is inside or outside a shape. | ||
− | < | + | <syntaxhighlight lang="lua"> |
(number) = math.inside(point,shape) | (number) = math.inside(point,shape) | ||
</source> | </source> | ||
Line 24: | Line 24: | ||
=== Examples === | === Examples === | ||
− | < | + | <syntaxhighlight lang="lua"> |
print(math.inside({6, 0}, {x=0, y=0, radius=5})) -- 1 | 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=6})) -- 0 |
Revision as of 14:28, 13 July 2023
Available since: Gideros 2020.9
Class: math
Description
Checks if a point is inside or outside a shape. <syntaxhighlight lang="lua"> (number) = math.inside(point,shape) </source>
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
<syntaxhighlight lang="lua"> 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 </source>
See also
- Math
- Math.abs
- Math.acos
- Math.asin
- Math.atan
- Math.atan2
- Math.ceil
- Math.clamp
- Math.cos
- Math.cosh
- Math.cross
- Math.deg
- Math.distance
- Math.distances
- Math.dot
- Math.edge
- Math.exp
- Math.fft
- Math.floor
- Math.fmod
- Math.frexp
- Math.ifft
- Math.inside
- Math.ldexp
- Math.length
- Math.log
- Math.log10
- Math.max
- Math.min
- Math.modf
- Math.nearest
- Math.noise
- Math.normalize
- Math.pow
- Math.rad
- Math.random
- Math.randomseed
- Math.raycast
- Math.round
- Math.sign
- Math.sin
- Math.sinh
- Math.sqrt
- Math.tan
- Math.tanh