创建拼贴画的最佳方法(Java 中)

Posted

技术标签:

【中文标题】创建拼贴画的最佳方法(Java 中)【英文标题】:Best way to create a collage (in Java) 【发布时间】:2012-05-30 01:27:28 【问题描述】:

我想制作一张照片拼贴画。类似于这张图片(想想照片而不是那些彩色矩形):

应根据以下信息构建拼贴。

我们有一个 2d 插槽地图和一组图像。地图(在本例中为 3x3 插槽)如下所示:

| s1 | s2 | s3 |
| s4 | s5 | s6 |
| s7 | s8 | s9 |

现在,对于每个图像,我们都知道它属于哪个插槽。此外,可能没有图像属于特定插槽;但是,不止一张图片可以属于一个特定的插槽(我们可能有超过 9 张图片)。

除此之外,如果不止一张图像属于一个特定的槽,我们知道图像属于该槽的程度。

那么,创建一个看起来很漂亮但仍保留上述地图结构的拼贴(用 Java 语言)的最佳方法是什么?

(为了获得这个 2d 地图,我们使用 Kohonen 地图)

【问题讨论】:

这闻起来像家庭作业。到目前为止,您尝试过什么? 这不是真正的功课。我也不期待代码 sn-ps 而是一些想法。如果有人知道一些可用的库,我只会提到 Java。 我会建议缩小焦点。没有真正的“最佳”方法可以做到这一点,而且过于宽泛和主观。尝试用特定的方法或特定的语言来修改问题。 在每个slot中使用一个Vector,使用vector index作为图像度数。然后将所有的槽(向量)放入一个二维数组中。但我无法弄清楚您提供的屏幕截图和地图之间的实际联系。 【参考方案1】:

您可以有一个值 (xa),它 += 是每次绘制到画布上的图像的宽度,然后设置下一个图像 x 相对于 xa 的位置,然后不断对该值使用模数,但是然后使用除法计算下一张图像的 Y 值(xa / pageWidth)。这是即兴的,如果没有意义,我很抱歉。

【讨论】:

以上是关于创建拼贴画的最佳方法(Java 中)的主要内容,如果未能解决你的问题,请参考以下文章

Java 并发编程实战-创建和执行任务的最佳实践

使用 HSQLDB 制作登录页面的最佳方法 - Java

使用 Java 将 IPv4 存储在数据库中的最佳方法

Java 并发编程实战-创建和执行任务的最佳实践

Java 并发编程实战-创建和执行任务的最佳实践

为 ods 文件中的列设置边框和最佳宽度