如何对等距图块上的点击进行编程?

时间:2019-04-15 20:42:43

标签: swift click tile isometric

我有一个等距网格,其中包含用于我的iOS项目的图块,并且希望能够单击相应的图块。网格看起来像这样:enter image description here

它是通过使用

绘制直线而创建的
let path = UIBezierPath()
path.move(to: CGPoint(x:0, y:size.height / 2.0))
path.addLine(to: CGPoint(x:size.width / 2.0, y:0))

...等等,直到创建了一个等轴测图块。然后根据某种算法放置图块。

所有图块已存储在array中,可以像这样访问:

gameBoardArray[4][3].fillColor = SKColor.brown

现在,我不确定如何实际按下(并用颜色标记)一个特定的图块。我想我应该使用函数

func touchDown(atPoint pos : CGPoint)

那又是什么?函数中的pos显示您所按下位置的xy位置,而print(gameBoard[0][0])给出的坐标类似于{{-218.60400390625, -17.207000732421875}, {65.207000732421875, 34.415000915527344}}。 (我不完全理解为什么有4个坐标。难道不应该只有一个坐标x和一个坐标y?)

我应该检查pos坐标是否在gameBoard坐标之内还是有更简单的方法?

0 个答案:

没有答案