javascript - 如何在 JavaScript 中旋转色调

标签 javascript colors rotation

我看到了here一个从 -360 到 360 的 spin 函数,这对我来说没有意义,我认为它会从 0- 360.

我想扩展补色、三元组和四元组的概念(它们已内置到另一个库中),并生成相当于调色板的任意 n 边形,例如五元组、六元组、七元组等。我尝试简单地执行 angle *position 来获取五元组,但是 5 种颜色中的 2 种是重复的(这是因为我要从 0-360 开始)。

不知道如何让它发挥作用。

最佳答案

它允许您从 -360 到 360 进行旋转,尽管其中很多都是相同的,因为它们都是您在概念上使用的值。因此,-20 度的色调有意义,+340 度的色调也有意义,尽管它们是同一件事。

var tc = tinycolor({
  r: Math.floor(Math.random() * 0xFF),
  g: Math.floor(Math.random() * 0xFF),
  b: Math.floor(Math.random() * 0xFF)
})
colors = []
var parts = 2 + Math.floor(Math.random() * 5);
for (var i = 0; i < parts; i++) {
  tc = tc.spin(360 / parts);
  colors.push('#' + tc.toHex())
}

div = document.createElement("div");
document.body.appendChild(div);
colors.forEach(function(element) {
  var d = document.createElement("button");
  d.style.cssText = 'padding:5px; font-size:22px; width:50px; height:50px; background-color:' + element;
  div.appendChild(d);
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/tinycolor/1.4.1/tinycolor.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>

关于javascript - 如何在 JavaScript 中旋转色调,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56513783/

相关文章:

javascript - Firebase 云 Firestore + 身份验证 : write only for signed in users

javascript - 为什么我没有收到警告 "a promise was created in a handler but was not returned from it"?

javascript - 如何在 CKEditor 中用颜色填充整个单元格

java - 为什么 JFrame 中的绘图颜色没有更新?

java - 顺时针旋转数组

javascript - 由于 uglifyJsPlguin,webpack 构建失败

javascript - 有人可以在这个 "function factory"中解释 x 和 y 吗?

c++ - 如何在不影响 Windows 操作系统上的 C++ 中的文本颜色的情况下更改整个控制台的背景颜色

java - 如何在 Java 或 AS3 中创建和旋转三维矩阵

css - 旋转对象上的底部填充动画如何导致 -DIAGONAL- 运动?