程序代码
-
ตัวเลือก
คลาสที่ชัดเจน FiveStarredFlag
ความกว้างส่วนตัว
ความสูงส่วนตัว
ฟิลเลอร์ส่วนตัว
รูปภาพขนาดส่วนตัว
ขนาดไฟล์ส่วนตัว
BitMap ส่วนตัว ()
คลาสย่อยส่วนตัว_เริ่มต้น
ส่วนสูง = 200
ความกว้าง = 300
ฟิลเลอร์ = (32 - ความกว้าง Mod 32) Mod 32
ขนาดรูปภาพ = (กว้าง + ตัวเติม) * สูง 8
FileSize = SizeImage + 14 + 40 + 8
ReDim BitMap (ความกว้าง + ตัวเติม - 1, ความสูง - 1)
ความสูงของดาว * 0.25, ความสูง * 0.75, ความสูง * 0.15, 0
ความกว้างของดาว / 3, สูง * 0.9, สูง * 0.05, 120.9637565320735
ความกว้างของดาว * 0.4, สูง * 0.8, สูง * 0.05, 98.13010235415598
ความกว้างของดาว * 0.4, สูง * 0.65, สูง * 0.05, 74.0546040990771
ความกว้างของดาว / 3 สูง * 0.55 สูง * 0.05, 51.3401917459099
สิ้นสุด
คลาสย่อยส่วนตัวย่อย_ยุติ
Response.ContentType = "รูปภาพ/bmp"
Response.BinaryWrite FileHeader & InfoHeader & Palette & ImageData
สิ้นสุด
ดาวย่อยส่วนตัว(x, y, r, a)
หรี่ pi, v, d, i, j, k, m2
pi = 3.1415926535897932
v = r * Sin(pi * 0.1) / Sin(pi * 0.7)
สำหรับ j = -r ถึง r
สำหรับ i = -r ถึง r
d = Sqr(i ^ 2 + j ^ 2)
ถ้า d < v แล้ว
บิตแมป(x + i, y + j) = 1
ElseIf d < r จากนั้น
ถ้าฉัน = 0 แล้ว
ถ้า j > 0 แล้ว k = 90 มิฉะนั้น k = -90
อื่น
k = Atn(เจ / i) * 180 / pi
ถ้าฉัน < 0 แล้ว k = k + 180
สิ้นสุด ถ้า
k = k - a - 18
ในขณะที่ k < 0
เค = เค + 360
เวนด์
ในขณะที่ k >= 360
เค = เค - 360
เวนด์
ในขณะที่ k >= 72
เค = เค - 72
เวนด์
ถ้า k > 36 แล้ว k = 72 - k
m2 = d ^ 2 + r ^ 2 - d * r * 2 * Cos(k * pi / 180)
ถ้า (m2 + r ^ 2 - d ^ 2) / (Sqr(m2) * r * 2) > Cos(pi * 0.1) แล้วก็
บิตแมป(x + i, y + j) = 1
สิ้นสุดถ้า
สิ้นสุดถ้า
ต่อไป
ต่อไป
สิ้นสุด
ฟังก์ชันส่วนตัวย่อย CWord (I16)
CWord = ChrB(I16 และ &HFF) & ChrB(I16 256 และ &HFF)
ฟังก์ชันสิ้นสุด
ฟังก์ชันส่วนตัว CDWord(I32)
CDWord = ChrB(I32 และ &HFF) & ChrB(I32 256 และ &HFF) & ChrB(I32 65536 และ &HFF) & ChrB(I32 &HFFFFFF และ &HFF)
ฟังก์ชันสิ้นสุด
'www.knowsky.com'
ทรัพย์สินส่วนตัวรับ FileHeader
ประเภทไฟล์ Const = &H4D42
Const ที่สงวนไว้ 1 = 0
Const ที่สงวนไว้2 = 0
ค่าคงที่ OffBits = 62
FileHeader = CWord (ประเภทไฟล์) & CDWord (ขนาดไฟล์) & CWord (สงวนไว้ 1) & CWord (สงวนไว้ 2) & CDWord (OffBits)
สิ้นสุดทรัพย์สิน
ทรัพย์สินส่วนตัว รับข้อมูลส่วนหัว
Const ข้อมูลขนาด = 40
เครื่องบินคอนสต์ = 1
ค่าคงที่ BitCount = 1
การบีบอัดคอนสต์ = 0
ค่าคอนสต์ XPelsPerMeter = 0
ค่าคอนสต์ YPelsPerMeter = 0
ค่าคอนสต์ ClrUsed = 0
ค่าคงตัว ClrImportant = 0
InfoHeader = CDWord (InfoSize) & CDWord (ความกว้าง) & CDWord (ความสูง) & CWord (ระนาบ) & CWord (BitCount) & CDWord (การบีบอัด) & CDWord (ขนาดรูปภาพ) & CDWord (XPelsPerMeter) & CDWord (YPelsPerMeter) & CDWord (ClrUsed ) & CDWord (สำคัญ Clr)
สิ้นสุด
คุณสมบัติ ทรัพย์สินส่วนตัว รับ Palette
Const BackColor = &HFF0000
Const ForeColor = &HFFFF00
จานสี = CDWord(BackColor) & CDWord(ForeColor)
คุณสมบัติสุดท้าย
คุณสมบัติส่วนตัว รับ ImageData
ดิม ไอ เจ
ข้อมูลรูปภาพ = ""
สำหรับ j = 0 ถึงความสูง - 1
สำหรับ i = 0 ถึงความกว้าง + ฟิลเลอร์ - 1 ขั้นตอนที่ 8
ImageData = ImageData & ChrB(BitMap(i, j) * 128 หรือ BitMap(i + 1, j) * 64 หรือ BitMap(i + 2, j) * 32 หรือ BitMap(i + 3, j) * 16 หรือ BitMap( i + 4, j) * 8 หรือ BitMap(i + 5, j) * 4 หรือ BitMap(i + 6, j) * 2 หรือ BitMap(i + 7, j))
ต่อไป
ต่อไป
สิ้นสุดคุณสมบัติ
จบคลาส
ด้วย FiveStarredFlag ใหม่
จบด้วย
-