Project1

标题: 請問如何給BITMAP類增加一個會制填滿圓形的命令? [打印本页]

作者: sai90306    时间: 2012-6-15 20:31
标题: 請問如何給BITMAP類增加一個會制填滿圓形的命令?
這是我在古老的帖子中找到的話圓圈的方法
  1. class Bitmap
  2. # 描绘圆
  3. def draw_circle(a, b, r, color)
  4.    min = (-r / Math.sqrt(2)).round
  5.    max = ( r / Math.sqrt(2)).round
  6.    for x in min..max
  7.      y = Math.sqrt(r**2 - x**2)
  8.      set_pixel(x+a, y+b, color)
  9.      set_pixel(x+a, -y+b, color)
  10.    end
  11.    for y in min..max
  12.      x = Math.sqrt(r**2 - y**2)
  13.      set_pixel(x+a, y+b, color)
  14.      set_pixel(-x+a, y+b, color)
  15.    end
  16. end
  17. end
复制代码
不過我想要的是內部填滿的圓形...
請問有大大能幫忙調整嗎?
dsu_plus_rewardpost_czw
作者: enghao_lim    时间: 2012-6-16 08:50
  1. def draw_circle(a, b, r, color)
  2.    min = (-r / Math.sqrt(2)).round
  3.    max = ( r / Math.sqrt(2)).round
  4.    for x in min..max
  5.      y = Math.sqrt(r**2 - x**2)
  6.      fill_rect(x+a,-y+b,1,(2*y).ceil,color)
  7.      #set_pixel(x+a, y+b, color)
  8.      #set_pixel(x+a, -y+b, color)
  9.    end
  10.    for y in min..max
  11.      x = Math.sqrt(r**2 - y**2)
  12.      fill_rect(-x+a,y+b,(2*x).ceil,1,color)
  13.      #set_pixel(x+a, y+b, color)
  14.      #set_pixel(-x+a, y+b, color)
  15.    end
  16. end
复制代码





欢迎光临 Project1 (https://rpg.blue/) Powered by Discuz! X3.1