관리 메뉴

웹개발자의 기지개

[ASP] 랜덤색상값 추출함수 본문

ASP

[ASP] 랜덤색상값 추출함수

http://portfolio.wonpaper.net 2024. 1. 17. 23:10

 

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
<%
Function GetRandomColor()
    ' 랜덤한 RGB 값 생성
    Dim red, green, blue
    red = Int(256 * Rnd())
    green = Int(256 * Rnd())
    blue = Int(256 * Rnd())
    
    ' RGB 값을 16진수로 변환하고 #을 붙여서 반환
    GetRandomColor = "#" & Right("0" & Hex(red), 2& Right("0" & Hex(green), 2& Right("0" & Hex(blue), 2)
End Function
 
 
Function GetRandomColor2()
    ' 랜덤한 RGB 값 생성
    Dim red, green, blue
    red = Int(256 * Rnd())
    green = Int(256 * Rnd())
    blue = Int(256 * Rnd())
 
    ' HSV로 변환
    Dim hue, saturation, value
    hue = Rnd()
    saturation = 0.5 + 0.5 * Rnd() ' 채도를 0.5에서 1 사이로 설정
    value = 0.5 + 0.5 * Rnd() ' 명도를 0.5에서 1 사이로 설정
 
    ' HSV를 RGB로 변환
    If saturation = 0 Then
        red = value * 255
        green = value * 255
        blue = value * 255
    Else
        Dim i, f, p, q, t
        If hue = 1 Then hue = 0
        hue = hue * 6
        i = Int(hue)
        f = hue - i
        p = value * (1 - saturation)
        q = value * (1 - (saturation * f))
        t = value * (1 - (saturation * (1 - f)))
        Select Case i
            Case 0
                red = value * 255
                green = t * 255
                blue = p * 255
            Case 1
                red = q * 255
                green = value * 255
                blue = p * 255
            Case 2
                red = p * 255
                green = value * 255
                blue = t * 255
            Case 3
                red = p * 255
                green = q * 255
                blue = value * 255
            Case 4
                red = t * 255
                green = p * 255
                blue = value * 255
            Case Else
                red = value * 255
                green = p * 255
                blue = q * 255
        End Select
    End If
 
    ' RGB 값을 16진수로 변환하고 #을 붙여서 반환
    GetRandomColor2 = "#" & Right("0" & Hex(Int(red)), 2& Right("0" & Hex(Int(green)), 2& Right("0" & Hex(Int(blue)), 2)
End Function
%>
 
cs

 

 

Comments