🗺️

认识游戏世界地图

第1-5关:笛卡尔坐标系大冒险

📍 原点
➖ 一维数轴
➕ 二维坐标

📍 笛卡尔坐标 (Cartesian Coordinates)

想象一下,你有一张藏宝图,图上有两条神奇的线:

  • 👉 横坐标 (X):东西方向的街道(左右走)
  • 👆 纵坐标 (Y):南北方向的大路(上下走)

两条线交叉的地方就是原点 (Origin) (0,0) —— 城市的中心广场!

🗣️ 生动比喻:
"就像跳格子,X 告诉你往右跳几格,Y 告诉你往上跳几格!"
原点 (0,0)
X轴 (东) ➡
⬆ Y轴 (北)

➖ 一维数轴 (1D Number Line)

就像一条笔直的马路,你只能做两件事:前进 或者 后退

在这条线上,只需要一个数字就能找到你!

# 只能在一个方向上移动
位置 = 5 # 你在马路的第5个路灯下
0
5
10
🏃
位置=5

➕ 二维数轴 (2D Plane)

现在,我们不仅能左右走,还能上下走!这就是整个城市的地图。

我们需要两个数字 (x, y) 才能找到你。

# 可以在两个方向上移动
我的位置 = (3, 4)
# 意思:向右走3步,向上走4步
(3, 4)
x=3
y=4

🌍 生活中的经纬度 (Lat & Long)

其实,我们生活的地球就是一个巨大的坐标系!

  • 🌐 经度 (Longitude) = 地球的 X 坐标(东西)
  • 🌐 纬度 (Latitude) = 地球的 Y 坐标(南北)
例如:北京天安门
东经 116° (X), 北纬 39° (Y)
📍

🎮 看看我们的游戏代码

在游戏中,我们使用代码控制英雄移动,就像给英雄一张藏宝图!

# 使用XY坐标移动到所有宝石的所在地,然后移动到红色X标记

# 第一站:位置(8,48)
hero.moveXY(8, 48) # 往右走8步,往上走48步

# 第二站:位置(8,12)
hero.moveXY(8, 12) # 保持在X=8,但往下走到Y=12

# 继续寻宝之旅...
hero.moveXY(12, 26)
hero.moveXY(24, 26) # Y不变,只改变X - 水平移动!
hero.moveXY(34, 14)
hero.moveXY(24, 26) # 又回到刚才经过的地方!
hero.moveXY(40, 56)
hero.moveXY(74, 34) # 最终目的地!
💎
💎
💎
💎
💎
🦸

🎯 编程小知识

函数 (Function) - 像魔法咒语!

hero.moveXY() 就是一个函数,就像念咒语让英雄移动:

  • 括号里的数字就是咒语的参数 (Arguments)
  • ➡️ 第一个数字控制左右移动 (X坐标)
  • ⬆️ 第二个数字控制上下移动 (Y坐标)

就像魔法师念咒语:

魔法师念: "阿布拉卡达布拉!飞到(5,3)!"
程序员写: hero.moveXY(5, 3)

英雄就会乖乖地移动到X=5,Y=3的位置!

🧙‍♂️
魔法师准备念咒语
🦸
➡️
moveXY(5, 3)
➡️
🦸
(5,3)

记住:函数就像魔法咒语,参数就是咒语的具体内容!