java中的图像映射?

java中的图像映射?,java,map,imagemap,Java,Map,Imagemap,我正在创建一个小的儿童游戏,我在面板中有一张爱尔兰地图,然后会弹出一个问题,要求用户单击某个县。 将地图划分为每个县的各个部分的最佳方式是什么 所以我会随机弹出一个问题,问“都柏林在哪里?”然后用户点击都柏林的黑点 我知道如何处理随机出现的问题(如果没有,我会稍后再回来),但是有没有给我的图像分配热点的建议 我假设这是一张图像,并且显示时没有重新缩放 所以你可以 预先计算并在文件或数据结构中记录 黑点(即Photoshop) 当用户单击“获取坐标”时 查找与用户单击的点最近的黑点 UPD:在步骤

我正在创建一个小的儿童游戏,我在面板中有一张爱尔兰地图,然后会弹出一个问题,要求用户单击某个县。 将地图划分为每个县的各个部分的最佳方式是什么

所以我会随机弹出一个问题,问“都柏林在哪里?”然后用户点击都柏林的黑点

我知道如何处理随机出现的问题(如果没有,我会稍后再回来),但是有没有给我的图像分配热点的建议


我假设这是一张图像,并且显示时没有重新缩放

所以你可以

  • 预先计算并在文件或数据结构中记录 黑点(即Photoshop)
  • 当用户单击“获取坐标”时
  • 查找与用户单击的点最近的黑点
  • UPD:在步骤1中,您可以为每个黑点确定一些精度半径。若点击点不在最近黑点的准确半径范围内,你们可以要求用户澄清


    UPD2:提高准确性的另一种方法是记住每个黑点区域的颜色。如果单击点的颜色与最近的黑点区域的颜色不同,则要求用户再次单击。

    您可以将地图矢量化,以便将每个县定义为多边形形状。有一些常用算法可以确定点是否在多边形内。但是有些形状非常复杂,所以这可能需要大量的工作

    当您想要保持栅格化方法时,可以将每个县的图形放在单独的图像对象中,并让每个县在单击时做出反应。当用户单击面板时,首先确定单击所处的所有这些子图形(它们将重叠,因此可以有多个子图形)。然后检查每个子图形中单击的像素是否透明。当它不透明时,用户单击该县


    当你把每个县作为一个单独的图形,你可以玩很多其他的游戏。就像一个拼图或显示形状,用户必须猜测它是哪个县。不过,我不知道你是否会因此而获得报酬。

    第三步有一些问题。如果你点击最低绿色区域的上角,你会发现它旁边的蓝色区域将比绿色区域有一个更近的点。我能不能把目标点缩小到每个点周围的一个简单的小方框?游戏主要针对6岁的孩子,所以我想让这个过程尽可能简单possible@Sawyer05,把UPD和UPD2两种方法结合起来怎么样?它认为它应该提供更好的准确性。获得每个县的确切形状不一定是一个优先事项(尽管这会很好),我在自己的想法中添加了黑点,只是在每个点周围有一个点击“框”,意图让用户必须点击黑点来定义每个县,只是为了避免意外点击其他县。