コード例 #1
0
void Circle::moire(Window const& win, Color const& c)const{
	
	for (int i = 0; i <= 360 ; ++i)
	{
		
		Vec2 begin = make_rotation_mat2((2*M_PI)*(i/360))*Vec2(radius(),0)+center();
		Vec2 end = make_rotation_mat2((2*M_PI)*(i+1)/360)*Vec2(radius(),0)+center();
		win.draw_line(begin.x, begin.y, end.x, end.y, c.m_r, c.m_g, c.m_b);
	}
}
コード例 #2
0
void Circle::draw(Window const& wndw, Color const& clr) 
{
    const float pi = std::acos(-1);
    float r=radius();
    wndw.draw_point(center().x,center().y,clr.r_,clr.g_,clr.b_); //Center+RGB
    
    
    for (int i=1; i<361; i++)
    {
        Vec2 start=((make_rotation_mat2(2*pi*i/360))*Vec2(r,0)+center());
        Vec2 end=((make_rotation_mat2(2*pi*(i+1)/360))*Vec2(r,0)+center());
        wndw.draw_line(start.x,start.y,end.x,end.y,clr.r_,clr.g_,clr.b_);
    }
          
}