Difference between revisions of "Math.distance"
From GiderosMobile
(Created page with "__NOTOC__ <languages /> '''<translate>Available since</translate>:''' Gideros 2020.9<br/> '''<translate>Class</translate>:''' math<br/> === <transl...") |
m (Text replacement - "</source>" to "</syntaxhighlight>") |
||
(5 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
__NOTOC__ | __NOTOC__ | ||
− | + | '''Available since:''' Gideros 2020.9<br/> | |
− | ''' | + | '''Class:''' [[math]]<br/> |
− | ''' | + | |
− | === | + | === Description === |
− | + | Returns the distance betwen two points. | |
− | < | + | <syntaxhighlight lang="lua"> |
(number) = math.distance(x1,y1,z1,x2,y2,z2) | (number) = math.distance(x1,y1,z1,x2,y2,z2) | ||
(number) = math.distance({x1,y1,z1},{x2,y2,z2}) | (number) = math.distance({x1,y1,z1},{x2,y2,z2}) | ||
(number) = math.distance({x=x1,y=y1,z=z1},{x=x2,y=y2,z=z2}) | (number) = math.distance({x=x1,y=y1,z=z1},{x=x2,y=y2,z=z2}) | ||
− | </ | + | </syntaxhighlight> |
− | === | + | |
− | '''x1''': (number) | + | '''Note''': the number will always be a positive number |
− | '''y1''': (number) | + | |
− | '''z1''': (number) | + | === Parameters === |
− | '''x2''': (number) | + | '''x1''': (number) X component of the first point<br/> |
− | '''y2''': (number) | + | '''y1''': (number) Y component of the first point<br/> |
− | '''z2''': (number) | + | '''z1''': (number) Z component of the first point '''optional'''<br/> |
+ | '''x2''': (number) X component of the second point<br/> | ||
+ | '''y2''': (number) Y component of the second point<br/> | ||
+ | '''z2''': (number) Z component of the second point '''optional'''<br/> | ||
+ | |||
+ | === Return values === | ||
+ | '''Returns''' (number) the distance between the two points (always positive)<br/> | ||
− | === < | + | === Example === |
− | + | <syntaxhighlight lang="lua"> | |
+ | local mydist = 256 | ||
+ | function LevelX:onEnterFrame(e) | ||
+ | -- player position | ||
+ | posx, posy = self.player1.body:getPosition() | ||
+ | -- for perfs | ||
+ | for k, v in pairs(self.myobjects) do -- k=sprite, v=box2d body | ||
+ | local x1, y1 = v:getPosition() | ||
+ | if math.distance(x1, y1, posx, posy) > mydist then | ||
+ | k:setVisible(false) | ||
+ | else | ||
+ | k:setVisible(true) | ||
+ | end | ||
+ | end | ||
+ | end | ||
+ | </syntaxhighlight> | ||
{{Math}} | {{Math}} |
Latest revision as of 15:30, 13 July 2023
Available since: Gideros 2020.9
Class: math
Description
Returns the distance betwen two points.
(number) = math.distance(x1,y1,z1,x2,y2,z2)
(number) = math.distance({x1,y1,z1},{x2,y2,z2})
(number) = math.distance({x=x1,y=y1,z=z1},{x=x2,y=y2,z=z2})
Note: the number will always be a positive number
Parameters
x1: (number) X component of the first point
y1: (number) Y component of the first point
z1: (number) Z component of the first point optional
x2: (number) X component of the second point
y2: (number) Y component of the second point
z2: (number) Z component of the second point optional
Return values
Returns (number) the distance between the two points (always positive)
Example
local mydist = 256
function LevelX:onEnterFrame(e)
-- player position
posx, posy = self.player1.body:getPosition()
-- for perfs
for k, v in pairs(self.myobjects) do -- k=sprite, v=box2d body
local x1, y1 = v:getPosition()
if math.distance(x1, y1, posx, posy) > mydist then
k:setVisible(false)
else
k:setVisible(true)
end
end
end
- 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