设为首页收藏本站|繁體中文

Project1

 找回密码
 注册会员
搜索
查看: 2595|回复: 4
打印 上一主题 下一主题

[已经解决] 怎么判断一个事件在椭圆的范围之内

[复制链接]

Lv1.梦旅人

梦石
0
星屑
50
在线时间
200 小时
注册时间
2008-3-1
帖子
360
跳转到指定楼层
1
 楼主| 发表于 2013-1-29 08:12:05 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

加入我们,或者,欢迎回来。

您需要 登录 才可以下载或查看,没有帐号?注册会员

x
本帖最后由 木许许 于 2013-2-6 09:57 编辑

比如在地图上判断:1号事件是否在一个以坐标11,12为中心,256宽,128高的椭圆范围之内

Lv1.梦旅人

巴斯克维尔的猎犬

梦石
0
星屑
50
在线时间
66 小时
注册时间
2007-6-25
帖子
8320

第1届Title华丽大赛冠军

2
发表于 2013-1-29 09:18:43 | 只看该作者
取地图上i号事件的具体象素坐标的方法是
x = $game_map.events[i].@real_x/4;
y = $game_map.events[i].@real_y/4;
然后判断这个坐标是否在椭圆内就可以了。
x^2/a^2+y^2/b^2<=1
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
200 小时
注册时间
2008-3-1
帖子
360
3
 楼主| 发表于 2013-1-29 10:59:03 | 只看该作者
匈魔剑 发表于 2013-1-29 09:18
取地图上i号事件的具体象素坐标的方法是
x = $game_map.events.@real_x/4;
y = $game_map.events.@real_y/4 ...

这样写?那么a和b是什么?椭圆的长轴和短轴?如果椭圆的中心坐标是会变化的呢?

if ($game_map.events.@real_x/4)^2/a^2+($game_map.events.@real_y/4)^2/b^2<=1
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
24 小时
注册时间
2012-8-29
帖子
48
4
发表于 2013-1-29 14:02:05 | 只看该作者
脚本无敌....嗷嗷嗷
[
回复 支持 反对

使用道具 举报

Lv1.梦旅人

巴斯克维尔的猎犬

梦石
0
星屑
50
在线时间
66 小时
注册时间
2007-6-25
帖子
8320

第1届Title华丽大赛冠军

5
发表于 2013-2-4 22:09:59 | 只看该作者
木许许 发表于 2013-1-29 10:59
这样写?那么a和b是什么?椭圆的长轴和短轴?如果椭圆的中心坐标是会变化的呢?

if ($game_map.events.@ ...

那个是椭圆的标准方程啊OTL,中心会变的话,就需要在方程里减坐标变化量……
都是高中数学的知识。不了解可以去百度一下。感觉这就不是应该在这里讨论的问题了。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

拿上你的纸笔,建造一个属于你的梦想世界,加入吧。
 注册会员
找回密码

站长信箱:[email protected]|手机版|小黑屋|无图版|Project1游戏制作

GMT+8, 2025-1-1 16:26

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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