2016-08-02 1 views
2

색상을 기준으로 이미지를 반환하는 API를 사용하고 있습니다. 16 진수 값 (예 : FF0000)을 보내면 해당 붉은 색으로 이미지가 반환됩니다.신속한 인접 색상

그러나 API는 너무 구체적입니다. 예를 들어 위의 색상의 경우 특정 빨간색 만이 아닌 모든 빨간색 요소를 반환하고 싶습니다.

운좋게도 API는 색상 조합을 허용합니다. FF0000u0000FF는 순수한 빨강 및 파랑입니다.

그래서 내가 API에 전달할 수 있도록, 주요 색상과 가까운 색상의 배열을 생성해야 할 일, 내가 스위프트에서이 작업을 수행 할 방법

?

+1

나는이 질문을 완전히 이해하고 있는지 확신 할 수 없지만, RGB를 HSB로 변환 한 다음 H 차원으로 검색함으로써 유사한 작업을 수행했습니다. – Grimxn

답변

0

해당 색상 공간에는 1600 만 가지 이상의 색상을 사용할 수 있으므로 해당 배열에 추가 할 수있는 수십만 개의 '빨간색'이 될 수 있으므로 실제로 배열을 만드는 것이 실용적이지 않다고 생각합니다. 더 나은 접근법은 API가 각 개별 채널의 값 범위를 비교하여 빨간색이 FF0000과 같지 않고 빨간색 채널이 88 (HEX)보다 크고 색상이 다른 채널은 예를 들어 66 (HEX) 미만입니다. 달성하려는 복잡한 작업이므로 문제를 해결하는 것은 쉽지 않습니다. 일부 코드 또는 API에 대한 링크를 공유하면 누군가가 당신에게 더 구체적인 도움을 줄 수 있습니다.