十万火急求救!!!!!

时间:2022-02-10 00:43:22
十万火急求救,请各位大哥帮忙。
我现在想做一个这样的机能:一个16*16的格子,往里面拖动各种物品,各物品的大小分别为2*1,1*1,1*3,3*2不等。请教一个算法,当拖动的物品无法放入格子中时(空间不够大或者该处已有物品时),将物品放回原处,如果可以放入格子,则将此物品画在相应的格子上。

不知谁以前做过类似的技能,跪求解决方法,在线等...

5 个解决方案

#1


拖动物品不符合条件时放回原处应该可以用边缘测试判断,即如果拖动的物品与已经放入的物品边缘有接触的话就判断为不符合条件。
而且我感觉这些物品都应该有自己的一个“中心点”,如果没有这样的点的话应该无法判断操作者是想把它放在哪里的。
比方说一个3×3的格子 现在要拖一个2×2的物品进来   是符合条件的。那么怎么判断操作者是想把它放在哪个2×2的格子里面呢?   如果有个“中心点”   那么就可以判断这个物品的“中心点”在哪里 才好放
当然“中心点”只是个代词并不是中心的意思   其实就是个参照点

#2


只一个人回答啊,好凄凉哦~~~
好在问题已经解决了,楼上的朋友,谢谢拉!

#3


#4


恭喜

#5


解决了,接分啊

#1


拖动物品不符合条件时放回原处应该可以用边缘测试判断,即如果拖动的物品与已经放入的物品边缘有接触的话就判断为不符合条件。
而且我感觉这些物品都应该有自己的一个“中心点”,如果没有这样的点的话应该无法判断操作者是想把它放在哪里的。
比方说一个3×3的格子 现在要拖一个2×2的物品进来   是符合条件的。那么怎么判断操作者是想把它放在哪个2×2的格子里面呢?   如果有个“中心点”   那么就可以判断这个物品的“中心点”在哪里 才好放
当然“中心点”只是个代词并不是中心的意思   其实就是个参照点

#2


只一个人回答啊,好凄凉哦~~~
好在问题已经解决了,楼上的朋友,谢谢拉!

#3


#4


恭喜

#5


解决了,接分啊