웹사이트 관련 팁들을 모아놓은 곳입니다. 좋은팁 공유 합시다.
  • 웹미니 한줄 전광판 영역 입니다.
글 수 186

0

조회 수 : 7221 신고 : 0

작성자 : 웹기프트
포인트 : 17 | 레벨 : 0

출처 : http://snipplr.com/view/14590/hsv-to-rgb/


HSV TO RGB


Published in: JavaScript 


HSV to RGB color conversion. Ported from the excellent java algorithm by Eugene Vishnevsky at: http://www.cs.rit.edu/~ncs/color/t_convert.html.

<pre class="javascript javascript" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 1em; padding-right: 0px; padding-bottom: 1em; padding-left: 0px; font: normal normal normal 115%/normal monospace; line-height: 1.22em; font-size: 12px; color: black; font-family: monospace; ">
  1. /**
  2.  * HSV to RGB color conversion
  3.  *
  4.  * H runs from 0 to 360 degrees
  5.  * S and V run from 0 to 100
  6.  *
  7.  * Ported from the excellent java algorithm by Eugene Vishnevsky at:
  8.  * http://www.cs.rit.edu/~ncs/color/t_convert.html
  9.  */
  10. function hsvToRgb(h, s, v) {
  11. var r, g, b;
  12. var i;
  13. var f, p, q, t;
  14.  
  15. // Make sure our arguments stay in-range
  16. = Math.max(0, Math.min(360, h));
  17. = Math.max(0, Math.min(100, s));
  18. = Math.max(0, Math.min(100, v));
  19.  
  20. // We accept saturation and value arguments from 0 to 100 because that's
  21. // how Photoshop represents those values. Internally, however, the
  22. // saturation and value are calculated from a range of 0 to 1. We make
  23. // That conversion here.
  24. /= 100;
  25. /= 100;
  26.  
  27. if(== 0) {
  28. // Achromatic (grey)
  29. = g = b = v;
  30. return [Math.round(* 255), Math.round(* 255), Math.round(* 255)];
  31. }
  32.  
  33. /= 60// sector 0 to 5
  34. = Math.floor(h);
  35. = h - i; // factorial part of h
  36. = v * (1 - s);
  37. = v * (1 - s * f);
  38. = v * (1 - s * (1 - f));
  39.  
  40. switch(i) {
  41. case 0:
  42. = v;
  43. = t;
  44. = p;
  45. break;
  46.  
  47. case 1:
  48. = q;
  49. = v;
  50. = p;
  51. break;
  52.  
  53. case 2:
  54. = p;
  55. = v;
  56. = t;
  57. break;
  58.  
  59. case 3:
  60. = p;
  61. = q;
  62. = v;
  63. break;
  64.  
  65. case 4:
  66. = t;
  67. = p;
  68. = v;
  69. break;
  70.  
  71. default: // case 5:
  72. = v;
  73. = p;
  74. = q;
  75. }
  76.  
  77. return [Math.round(* 255), Math.round(* 255), Math.round(* 255)];
  78. }
</pre>

Report this snippet 

소중한 댓글 부탁드립니다.
추천수 10단위당 메달이 1개씩 노출되고, 추천수에 따라 배경색이 변하며, 일정수의 추천수를 받을시 BEST 아이콘이 붙게됩니다.
추천수에 따른 배경색 보기 본문으로 바로가기
  • 추천수 50개이상
  • 추천수 30개이상
  • 추천수 20개이상
  • 추천수 10개이상
  • 추천수 3개이상
닫기

댓글 '2'

스마일조아 (118187)

2009.11.04 20:03:50

좋은 정보 감사합니다.
열혈개미 (207631)

2010.06.18 19:30:18

감사합니다.

List of Articles
번호 제목 글쓴이 날짜 추천 수 조회 수
166 특정 아이피(ip)막기 [1] title: [ani]깜빡이는 표정빽짱구 2011-02-09   5613
165 모바일 환경에서의 마크업 개발 이슈 title: [ani]깜빡이는 표정빽짱구 2010-12-17   5011
164 무단링크 .htaccess에서 막기 [1] title: [ani]깜빡이는 표정빽짱구 2010-12-08   5283
163 웹표준의 규격화된 글이 있어서 올립니다^^ 늘푸른 2010-07-24   5490
162 자신만의 favicon 만들어보세요. file [10] title: 버섯이슬이 2010-01-12   6609
161 파폭에서도 @font-face sky 2009-11-25   7239
160 웹 표준 개발자의 IE8 고려사항 (나라디자인) [3] title: [ani]깜빡이는 표정빽짱구 2009-10-22   7886
159 수평스크롤 스크립트 [5] 웹기프트 2009-10-12   7761
158 HSV TO RGB [2] 웹기프트 2009-10-12   7221
157 디렉토리 리스트를 배열로 가져오기 [2] 웹기프트 2009-10-12   7078
156 반복적으로 파일가져오기 [4] 웹기프트 2009-10-12   6228
155 랜덤 스타일시트 불러오기 [4] 웹기프트 2009-10-11   6579
154 Get URL 파라미터 불러오기 [4] 웹기프트 2009-10-11   7603
153 플래쉬 아래로 레이어가뜰때 해결방법 [1] title: [ani]깜빡이는 표정빽짱구 2009-04-23   6174
152 hit 믹시의 추적버튼에서 &(엔퍼센트) 에러 file [1] [1] title: [ani]깜빡이는 표정빽짱구 2009-02-09   10114
151 hit DTD에 따른 브라우저 박스크기변화 file title: [ani]깜빡이는 표정빽짱구 2008-03-21   11600
150 hit Flash Player 9.0.115.0 ActiveX 콘트롤 문제 title: [ani]깜빡이는 표정빽짱구 2008-03-06   11017
149 hit 플래쉬 액션스크립트 3.0 getURL [1] title: [ani]깜빡이는 표정빽짱구 2008-03-06   12399
148 플래쉬에 마우스 오른쪽 버튼 클릭시 메뉴줄이기 file [2] title: [ani]깜빡이는 표정빽짱구 2008-03-05 1 8042
147 hit 웹표준과 저작프로그램 title: [ani]깜빡이는 표정빽짱구 2008-02-10   12356