首页 > 解决方案 > 有没有程序可以输出黑色像素周边的 X 和 Y 坐标?

问题描述

我正在制作一个 VB 迷宫游戏,我希望玩家光标无法移过迷宫中的黑线。但是我正在努力使用具有透明度的图片框。

我尝试编写我的代码,以便当播放器图片框的边界与迷宫图片框的(黑色)像素相交时,它将停止移动。但是我无法在 VB 中找到该函数。

创建黑线周边坐标的列表是否更好,以便当 cursor.location = 指定坐标之一时它会“反弹”?

我的问题是有一个程序可以轻松分析我的简单黑白迷宫图像并输出黑色像素周边的所有坐标吗?

迷宫:https ://ibb.co/rwN9S4f

标签: vb.netimageedge-detection

解决方案


您应该考虑两种方法,具体取决于您构建迷宫的方式。

如果要使用图像,则需要进行一些图像处理。无需进一步解释,我已经可以告诉您,您将希望使用库来执行此操作。但是,这可能不适合您的需求,因为这可能是学校作业或其他东西。

至于“如何使用图像处理库”,这本身就是一个问题。当你决定一个时,你应该阅读教程。

如果你不想使用特殊的库,你可以自己画迷宫。网上有迷宫搭建算法。例如,本页将是一个很好的起点。原理通常是相同的:你将空间划分为网格,并将这些网格划分为带有墙壁的白色块。

玩得开心!

编辑:

(1)

这是一种将图像转换为字节数组的有趣方法:

Dim converter As New ImageConverter
nRow.Signature = converter.ConvertTo(imgSignature, GetType(Byte())

推荐阅读