NineBlock一代

时间:2009-02-05 14:15:07

标签: math identicon

我希望自己在StackOverflow上找到这些Identicons或Gravatars的实现。我能找到的大多数问题都是关于利用现有的第三方库,特别是那些与Gravatar挂钩的人。

alt text
(来源:levitated.net

经过一番搜索,我偶然发现this page。从它的外观来看,它并不那么难。需要随机选择的是:

  • 一个中间的形状
  • 角落的一个形状
  • 边缘的一个形状
  • 2种颜色
  • 除中间形状外的所有形状的旋转

使用md5哈希值对随机数器进行种子设定并开始检索随机数。然后,将(pi / 2)* i添加到边缘周围的每个形状,以创建冷却的径向对称效果。

你可以说我在这里用文字思考,但我想知道我是否误解了任何事情。此外,如果你有任何想法,还可以随机增加多样性。如果我开始更改:

,外观或感觉会“破碎”吗?
  • 形状的比例?
  • 然后也许也可能是块内形状的偏移量?
  • 挑选两种以上的颜色?每个块两种颜色具有相同的径向对称性?

2 个答案:

答案 0 :(得分:2)

正如您在本网站上的自己的gravatar中所看到的,您可以选择4x4字段。每侧偶数个单元格对中间使用的形状的限制较少,因为它们也会旋转。

如果旋转,可以允许偏移。在两个维度上相等的偏移量可能看起来更加对称并且可能更受青睐,但是没有必要这样做。

您也可以180°旋转,失去一些对称性,但正如您所看到的here,它确实为您提供了有趣的识别。

当然你可以挑选两种颜色。从一个统计的角度来看,明智地选择某种方案中的颜色。也许一些效果,比如逐渐使颜色更浅或更暗,看起来非常有趣。

我是否正确理解您是否会使用用户电子邮件地址的MD5值为随机发生器播种,从而能够动态重新计算他​​的gravatar?不需要让他创建一个帐户。

答案 1 :(得分:1)