在一个二维数组中,如何根据一个特定值随机画出多个不相交的小矩形? 在线等待,请求各位帮忙!

blyshaohua 2004-05-13 09:40:54
在一个二维数组中,如何根据一个特定值随机画出多个不相交的小矩形?
比如:假设二维数组array[4000][400],特定值float fValue=74.4444,使用循环语句把数组中的每一个数据都和fValue进行比较,若大于fValue,就记录数组索引值,然后根据这些索引值去画矩形,但是必须保证这些画矩形不能相交。也就是像是在波形图上画出,有问题的波形区域。
这个算法要怎么设计好呢?最好能给出源码。
你有更好的方法吗??
...全文
45 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
blyshaohua 2004-05-14
  • 打赏
  • 举报
回复
举一个很俗例子,大家应该都见过心电图,就是在心电图上画出有问题的矩形区域
byry 2004-05-13
  • 打赏
  • 举报
回复
array[4000][400] 记录的是什么信息?

索引值是点的坐标么? 画矩形需要顶点坐标,请问你提供了所有点的坐标了么?

如果你有一系列点的坐标,需要随机画出多个不相交的小矩形,那么你可以这么做:

从这些点列中任取一点p,然后从其他点中找到离点p最近的点p1,如果该点与p点不在同一水平位置或竖直位置,那么就可以根据p点和p1点构造一个矩形,pp1就是该矩形的对角线.然后,将这两个点从你的点列中去除, 再从中任取一点,重复上述操作,最终即可将这些点列划分成若干不相交的矩形,应该看到,划分矩形的结果不是唯一的.
Javcs 2004-05-13
  • 打赏
  • 举报
回复
不懂帮你UP一下,
顺便学习一下!
blyshaohua 2004-05-13
  • 打赏
  • 举报
回复
array[4000][400] 记录的是管道监测器检测的数据,如:每个一个管道长12米,管道监测器每隔3.33毫米取一次数据,管道监测器上面有400个探头,每走3.33毫米400个探头都取一次数据,array[4000][400]记录的就是这些数据
blyshaohua 2004-05-13
  • 打赏
  • 举报
回复
索引值是点的坐标,而且提供了所有大于特定值float fValue=74.4444点的坐标。

19,468

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 图形处理/算法
社区管理员
  • 图形处理/算法社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧