程序代码
<%
Option Classe explicite
FiveStarredFlag
Largeur privée
Hauteur privée
Remplisseur privé
Taille privéeImage
Taille du fichier privé
BitMap privé ()
Sous-classe privée_Initialize
Hauteur = 200
Largeur = 300
Remplissage = (32 - Largeur Mod 32) Mod 32
SizeImage = (Largeur + Remplissage) * Hauteur 8
FileSize = SizeImage + 14 + 40 + 8
ReDim BitMap (Largeur + Filler - 1, Hauteur - 1)
Hauteur de l'étoile * 0,25, Hauteur * 0,75, Hauteur * 0,15, 0
Largeur étoile / 3, hauteur * 0,9, hauteur * 0,05, 120,9637565320735
Largeur étoile * 0,4, hauteur * 0,8, hauteur * 0,05, 98.13010235415598
Largeur étoile * 0,4, hauteur * 0,65, hauteur * 0,05, 74,0546040990771
Largeur étoile / 3, Hauteur * 0,55, Hauteur * 0,05, 51.3401917459099
Fin de la
sous-classe privée_Terminate
Réponse.ContentType = "image/bmp"
Response.BinaryWrite FileHeader & InfoHeader & Palette & ImageData
Fin du sous-
marin privé sous-étoile (x, y, r, a)
Dim pi, v, d, i, j, k, m2
pi = 3,1415926535897932
v = r * Sin(pi * 0.1) / Sin(pi * 0.7)
Pour j = -r Pour r
Pour i = -r Pour r
d = Sqr(i ^ 2 + j ^ 2)
Si d < v Alors
BitMap(x + je, y + j) = 1
SinonSi d < r Alors
Si je = 0 Alors
Si j > 0 Alors k = 90 Sinon k = -90
Autre
k = Atn(j / je) * 180 / pi
Si je < 0 Alors k = k + 180
Fin Si
k = k - a - 18
Alors que k < 0
k = k + 360
Wende
Tandis que k >= 360
k = k - 360
Wende
Tandis que k >= 72
k = k - 72
Wende
Si k > 36 Alors k = 72 - k
m2 = d ^ 2 + r ^ 2 - d * r * 2 * Cos(k * pi / 180)
Si (m2 + r ^ 2 - d ^ 2) / (Sqr(m2) * r * 2) > Cos(pi * 0.1) Alors
BitMap(x + je, y + j) = 1
Fin si
Fin si
Suivant
Suivant
Fin de la sous
-fonction privée CWord (I16)
CWord = ChrB(I16 et &HFF) & ChrB(I16 256 et &HFF)
Fonction de fin
Fonction privée CDWord (I32)
CDWord = ChrB(I32 et &HFF) & ChrB(I32 256 et &HFF) & ChrB(I32 65536 et &HFF) & ChrB(I32 &HFFFFFF et &HFF)
Fonction de fin
'www.knowsky.com
Propriété privée Obtenir FileHeader
Type de fichier const = &H4D42
Const Réservé1 = 0
Const Réservé2 = 0
Const OffBits = 62
FileHeader = CWord (Type de fichier) & CDWord (Taille du fichier) & CWord (Réservé1) & CWord (Réservé2) & CDWord (OffBits)
Fin de la propriété
Propriété privée Get InfoHeader
Const InfoTaille = 40
Plans const = 1
Const BitCount = 1
Compression constante = 0
Const XPelsPerMeter = 0
Const YPelsPerMeter = 0
Const ClrUtilisé = 0
Const ClrImportant = 0
InfoHeader = CDWord (InfoSize) & CDWord (Largeur) & CDWord (Hauteur) & CWord (Plans) & CWord (BitCount) & CDWord (Compression) & CDWord (SizeImage) & CDWord (XPelsPerMeter) & CDWord (YPelsPerMeter) & CDWord (ClrUsed ) & CDWord(ClrImportant)
Propriété de fin
Propriété privée Obtenir la palette
Const BackColor = &HFF0000
Const ForeColor = &HFFFF00
Palette = CDWord (BackColor) et CDWord (ForeColor)
Fin de la propriété
Propriété privée Obtenir ImageData
Dim je, j
Données d'image = ""
Pour j = 0 à hauteur - 1
Pour i = 0 à largeur + remplissage - 1 étape 8
ImageData = ImageData & ChrB(BitMap(i, j) * 128 ou BitMap(i + 1, j) * 64 ou BitMap(i + 2, j) * 32 ou BitMap(i + 3, j) * 16 ou BitMap( i + 4, j) * 8 ou BitMap(i + 5, j) * 4 ou BitMap(i + 6, j) * 2 ou BitMap(i + 7, j))
Suivant
Suivant
Propriété de fin
Terminez le cours
avec le nouveau FiveStarredFlag
Terminer par
%>