赞 | 2 |
VIP | 335 |
好人卡 | 3 |
积分 | 1 |
经验 | 14077 |
最后登录 | 2020-1-28 |
在线时间 | 264 小时 |
Lv1.梦旅人 冰
- 梦石
- 0
- 星屑
- 142
- 在线时间
- 264 小时
- 注册时间
- 2006-11-22
- 帖子
- 1057
|
以下引用9244579于2008-2-11 17:46:16的发言:
class Scene
def draw_line(x1, y1, x2, y2, color)
if x1 == x2
x = x1
for y in (y1 < y2 ? y1..y2 : y2..y1)
set_pixel(x, y, color)
end
else
a = (y2-y1)/(x2-x1).to_f
if -1 < a and a < 1
for x in (x1 < x2 ? x1..x2 : x2..x1)
y = a * (x - x1) + y1
set_pixel(x, y, color)
end
else
for y in (y1 < y2 ? y1..y2 : y2..y1)
x = (y - y1) / a + x1
set_pixel(x, y, color)
end
end
end
end
end
描绘矩形?????
怎么显示它????
draw 什么line?
描绘圆形是
class Bitmap
# 描绘圆
def draw_circle(a, b, r, color)
min = (-r / Math.sqrt(2)).round
max = ( r / Math.sqrt(2)).round
for x in min..max
y = Math.sqrt(r**2 - x**2)
set_pixel(x+a, y+b, color)
set_pixel(x+a, -y+b, color)
end
for y in min..max
x = Math.sqrt(r**2 - y**2)
set_pixel(x+a, y+b, color)
set_pixel(-x+a, y+b, color)
end
end
end |
|