萝卜说 - 罗布乐思 - 口袋核心

查看: 805|回复: 0

[讨论] 圆形随机坐标与矩形随机坐标,可用于随机位置放置东西

[复制链接]

0

收听

0

听众

61

帖子

正式用户

Rank: 1

萝卜币
74
发表于 2021-5-31 12:23:32 | 显示全部楼层 |阅读模式
圆形随机坐标会比较复杂一些,主要是给定一个半径和圆心,然后在[0,半径长度]区间,随机一个数,在按照随机360度的角度随机出圆内的一个坐标。
矩形随机坐标比较简单一些,只需要一个随机的X值和Z值(随机的区间内就是矩形的边长)。
圆形随机坐标:
function radius(x,y,z,r)
    --x,y,z坐标原点,r为半径
    local radiusnum = math.random(0,r)
    local currentAngle = math.random(0,360)
    local w = math.sin(currentAngle*math.pi/180)*radiusnum + x
    local h = math.cos(currentAngle*math.pi/180)*radiusnum + z
    return Vector3.new(w,y,h) --返回计算完的坐标
end
矩形随机坐标:
local function rectangle(x1,x2,z1,z2,h)
    --x1和x2是矩形的两个边的x值,z1和z2是矩形的两个边的z值,h是矩形的所在的高度
    local x = math.random(x1,x2)
    local z = math.random(z1,z2)
    local pos = Vector3.new(x,h,z)
    return pos
end
随机坐标一般用在物品随机位置放置东西,这样就不用去写固定坐标放置东西了,比较实用。
圆形随机坐标还可以拓展很多随机坐标,比如圆环,扇形随机等等。我就不一一详细解释了,如果有需要的话我再分享给大家。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋| |京公网安备11010502045240号

Copyright © 2001-2013 Comsenz Inc.   All Rights Reserved.

Powered by Discuz! X3.4  备案:京ICP备2021013067号-2

快速回复 返回顶部 返回列表