代码之家  ›  专栏  ›  技术社区  ›  Julien Robitaille-Brisson

如何在P5中创建彼此不重叠的随机不协调形状。js[关闭]

  •  0
  • Julien Robitaille-Brisson  · 技术社区  · 8 年前

    我希望创建如下形状: https://www.lucegallard.com/?lightbox=dataItem-isiz1h39 但它们必须是随机生成的,决不能重叠。只使用beginShape()和curveVErtex(x,y)等太容易了。 再加上结果是静态的,它需要很容易地随机更改。我的问题是“有没有一个函数可以创建‘奇怪’的省略号?”或者“有谁能帮我找到一个算法来实现这一点吗?”

    感谢提前分配!

    1 回复  |  直到 8 年前
        1
  •  1
  •   Kevin Workman    8 年前

    堆栈溢出并不是为一般的“我该怎么做”类型的问题而设计的。这是针对特定的“我尝试了X,预期是Y,但得到了Z”类型的问题。但我会尽力在一般意义上提供帮助:

    你需要 break your problem down into smaller pieces 把这些碎片一次一块拿出来。尝试创建一个只生成单个随机形状的程序。然后尝试添加第二个随机生成的形状,该形状与第一个形状不相交。

    想想你会如何向那些看不到你在帖子中链接的网站的人描述这个程序。尽可能详细地描述它。假装你有一个从未见过你在说什么的朋友。你能写下这位朋友可以遵循的一组步骤来画出你在说什么吗?当你把这些步骤写下来后,你就可以开始考虑用代码来实现这个算法了。

    一个简单的检查就是为您生成的每个新点检查它是否在任何以前的形状中。如果是这样,请返回并选择一个不同的新点。这至少会让你开始朝着一个方向前进。

    如果你被卡住了,请张贴 MCVE 还有一个更具体的技术问题。祝你好运

    推荐文章