色相角度範囲を正しく計算しようとしています。入力デフォルトの色相が120
で、しきい値が20
であれば、範囲は100 - 140
(はい、私は知っています - 複雑な数学)です。赤色の色相角度範囲を計算する
今アプリケーションで、画像をフィルタリングするときに所与の画素は、その範囲に該当する場合、私は確認することができる:ほとんど飽和赤色がある赤色がの範囲で
let inputHue = 120
let threshold = 20
let minHue = inputHue - threshold // 100
let maxHue = inputHue + threshold // 140
if (pixelHue > minHue && pixelHue < maxHue) {
// do something
}
今問題ですカラーホイールの0/360
にあります。入力色相が10
の場合、minHue
は現在-10
(しきい値は20
)であり、maxHue
は30
です。そのためminHue
のためにその負の値の条件は失敗します。
let pixelHue = 355 // this falls into a valid red range I want to get
let minHue = -10
let maxHue = 30
if (pixelHue > minHue && pixelHue < maxHue) {
// do something
}
誰もがカラーホイールのこの問題に取り組むために方法を知っていますか?私は任意の入力色相(赤色だけでなく)で動作する一般的なソリューションを開発しようとしています。
ありがとうございます。