精华内容
下载资源
问答
  • VC画圆

    千次阅读 2010-09-08 09:32:00
    用CDC画椭圆实现,圆是特殊的椭圆而已。 void DrawCircle(CDC* pDC,CRect rect) ...就是算出圆的半径radius,矩形坐上角坐标(x,y),则画圆的语句为: pDC->(x-radius,y-radius,x+radius,y+radius)


    用CDC画椭圆实现,圆是特殊的椭圆而已。

    void DrawCircle(CDC* pDC,CRect rect)
    {
    
       int rx,ry;
    
    //找出大一些的直径
       if (rect.right < rect.left)
      {
         rx= rect.left;
         rect.left = rect.right;
         rect.right = rx;
      }
      if (rect.bottom < rect.top)
      {
         y= rect.top;
         rect.top = rect.bottom;
         rect.bottom = y;
      }
    
    //算出两直径的差
      x= rect.right - rect.left;
      y= rect.bottom - rect.top;
    
    //根据直径差值,移动椭圆的边界,圆的半径为min(x,y)
      if (x> y)
      {
         rect.left += (x-y) / 2;
         rect.right = rect.left + y;
      }
      else
      {
         rect.top += (y-x) / 2;
         rect.bottom = rect.top + x;
      }
      pDC->Ellipse(rect);
    }
    
    


     还有个简单点的方法,这样更实用。就是算出圆的半径radius,矩形坐上角坐标(x,y),则画圆的语句为:

     pDC->(x-radius,y-radius,x+radius,y+radius)
    


    展开全文
  • 这是一个vc做出来的画图程序,vc画圆,直线,椭圆等小程序
  • 计算机图形学vc画圆

    2013-03-26 16:04:25
    计算机图形学 vc++下 画圆代码 winxp
  • [img=https://img-bbs.csdn.net/upload/201409/23/1411446756_529070.jpg][/img] for(int r=10;r<720;r+=(15+add)) { for(int i=0;... int xc=m_pixelsX/2, yc=m_pixelsY/2, c=RGB(0,0,0);... }
  • 是在绘制好的图片控件上 谢谢 ...~!
  • vcmfc 中点画圆算法

    2008-10-29 11:51:05
    画圆算法 向vcmfc 中点画圆算法 多个关键字请用空格分隔,最多填写5个。点击右侧Tag快速添加
  • VC6.0 MFC 画圆 直线

    2010-04-01 12:04:43
    VC6.0编写的,不用OpenGL ,调用Windows API 实现的画圆 直线
  • vc如何画圆抗锯齿

    2014-09-27 17:29:17
    CPen pen; CBrush brush; pen.CreatePen(PS_SOLID,width,RGB(0,0,0)); dc.SelectObject(GetStockObject(NULL_BRUSH)); dc.SelectObject(&pen); int xc=m_pixelsX/...求大神解决方法,越细越好
  • vc基本例子 画圆示例

    2011-09-25 19:30:28
    初学者学习vc基本示例 实现基本的画图 文档资源的打开使用编辑
  • vc倒序,画圆代码

    2012-08-29 15:09:58
    自己练习写的小东西
  • Bresenham画圆VC源代码

    2009-02-16 14:06:53
    VC6.0实现的Bresenham画圆源代码,与清华大学版计算机图形学实验配套,可实现画圆,画同心圆,并可用圆点和直线画出网格,修改部分用/* */标注了.
  • vc如何画圆,并填充颜色

    千次阅读 2014-04-22 13:57:41
    CClientDC dc(this); CPen pen(PS_SOLID,m_nLinewidth,m_ncolor); dc.SelectObject(&pen); CBrush *pBrush=new CBrush(m_ncolor);...dc.SelectObject(pBrush);...dc.Ellipse(point.x-5,point.y-5,point.x+5,point

    CClientDC dc(this);
    CPen pen(PS_SOLID,m_nLinewidth,m_ncolor);
    dc.SelectObject(&pen);
    CBrush *pBrush=new CBrush(m_ncolor);
    dc.SelectObject(pBrush);

    dc.Ellipse(point.x-5,point.y-5,point.x+5,point.y+5);

    展开全文
  • vc 在控件上画图 包括画圆、直线等图线。主要是通过获取控件的wnd指针,再通过wnd指针获取dc指针,最后通过dc画图。
  • vc6.0中的MFC编程实现八分法画圆,工程名为ACircle。此外用到了反走样技术,绘制出来的圆走样现象明显减轻。程序代码全部上传,无遗漏。有需要者可以采纳。
  • mapx在vc画圆code

    千次阅读 2007-04-16 09:30:00
    void CTrainView: OnMouseDownMap1(short Button, short Shift, float X, float Y) ...{double mapx,mapy;m_mapx.ConvertCoord(&X,&Y,&mapx,&mapy,miScreenToMap);CMapXPoint point;...
    void CTrainView: OnMouseDownMap1(short Button, short Shift, float X, float Y) 
    {
    double mapx,mapy;
    m_mapx.ConvertCoord(
    &X,&Y,&mapx,&mapy,miScreenToMap);
    CMapXPoint point;
      point.CreateDispatch(point.GetClsid());
      point.Set(mapx,mapy);
      CMapXFeature ft;
      ft
    =m_mapx.GetFeatureFactory().CreateCircularRegion(miCircleTypeScreen, point, 3, miUnitDegree,100);
      m_mapx.GetLayers().Item(
    "联锁层").AddFeature(ft);

    }

     
    展开全文
  • VC+另一画圆程序

    2011-09-20 18:15:00
    简单而且可以用来提交,做无谓作业资源额,很好的。曾经教过的作业。可以再次使用
  • 图形学的作业 有画直线,画圆,画椭圆,画矩形,本来还有画多边形,但是我没有实现,还有每个图元都有热点,可以根据热点来改变图元的大小和形状。
  • 圆 直线 vc/MFC,自己编写的小程序 欢迎下载。
  • vc程序,点击左键画圆,右键画矩形,自己绘制图形界面
  • 本代码用VC++6.0软件编写,实现自定义端点画线、自定义圆心半径画圆,其中画线算法用到了DDA、逐点逼近、Bresenham、中点画线法;画圆算法使用了Bresenham、中点画圆法。各算法可以分别选择使用哪种画图,比较哪种...
  • 这是一个很有用的小的应用程序,它对于初学习VC的人来说是一个不可多的程序
  • 多边形画圆 vc6.0+opengl

    2014-11-29 18:00:34
    #include #include void Drawing(); void Init(); void Display(); void Reshape(int,int); void DrawNGon(float,float,float,int,float=90,bool=false); void main(int argc,char **argv) ... glutInit(&argc,ar
    #include <GL/glut.h>
    #include <math.h>
    
    void Drawing();
    void Init();
    void Display();
    void Reshape(int,int);
    void DrawNGon(float,float,float,int,float=90,bool=false);
    
    void main(int argc,char **argv)
    {
    	glutInit(&argc,argv);
    	glutInitDisplayMode(GLUT_DOUBLE|GLUT_RGB);
    	glutInitWindowSize(640,480);
    	glutInitWindowPosition(10,10);
    	glutCreateWindow("多边形绘制园");
    	Init();
    	glutDisplayFunc(Display);
    	glutReshapeFunc(Reshape);
    	glutMainLoop();
    
    }
    void Init()
    {
        glClearColor(1.0,1.0,1.0,1.0);
    }
    
    void DrawNGon(float xc,float yc,float radius,int n,float rotAngle,bool bFill)
    {
        if(n<3)
    		return;
    
    	double x,y,x0,y0;
    	double angle=rotAngle *3.1415926/180;// 绘图起止的角度
    
    	double angleInc=2*3.1415926/n;//角度的增量
    
    	if(bFill)                    //绘制填充正多边形
    	{
    		glBegin(GL_POLYGON);
    		for(int i=0;i<n;++i)
    		{
    			angle+=angleInc;
    			x=radius*cos(angle)+xc;
    			y=radius*sin(angle)+yc;
    
    			glVertex2f(x,y);
    		}
    		glEnd();
    	}
    	else
    	{
    		x0=radius*cos(angle)+xc;
    		y0=radius*sin(angle)+yc;
            
    
    		glBegin(GL_LINES);
    		for(int i=0;i<n;++i)
    		{
    			angle+=angleInc;
    			x=radius*cos(angle)+xc;
    			y=radius*sin(angle)+yc;
    
    			glVertex2f(x0,y0);
    			glVertex2f(x,y);
    			x0=x;
    			y0=y;
    		}
    		glEnd();
    	}
    }
    
    void Drawing()
    {
    	glColor3f(0.0,1.0,0.0);
    //	DrawNGon(0,0,50,5);
    	DrawNGon(0,0,50,150,0,true);
    }
    
    void  Display()
    {
    	glClear(GL_COLOR_BUFFER_BIT);
    	Drawing();
    
    	glutSwapBuffers();
    }
    
    void Reshape(int w,int h)
    {
    	GLfloat aspect=(GLfloat)w/(GLfloat)h;
    
    	GLfloat winw,winh;
    
    	glViewport(0,0,w,h);
    	glMatrixMode(GL_PROJECTION);
    	glLoadIdentity();
    
    	if(w<h)
    	{
    		winw=100;
    		winh=100*aspect;
    	}
    	else
    	{
    		winw=100/aspect;
    		winh=100;
    	}
    	gluOrtho2D(-winh,winh,-winw,winw);
    	glMatrixMode(GL_MODELVIEW);
    	glLoadIdentity();
    }
    

    展开全文
  • VC实现的逼近画线,线圆的程序,可以输入画的笔画数,起点终点坐标,刷新频率等
  • VC/MFC动态画线,画圆,画椭圆,画矩形 http://blog.csdn.net/zyq11223/article/details/8271006 2012-12-07 22:36 23692人阅读 评论(18) 收藏 举报  分类: GIS(MFC下)...
  • 在mfc框架下,编写了基本的画图源代码,包含画圆和利用向量画带有箭头的直线方法。
  • Bresenham算法画圆

    2018-11-27 22:17:48
    MFC Bresenham算法画圆vc6.0 练习用的demo。参考书计算机图形学基础教程。
  • 接下来画圆 以类视图查看项目,在view类(如果你创建的项目名为test,那么view类就是Ctestview)中找到OnDraw。为什么是view类呢?因为view类是此应用程序的核心,与该应用程序的视窗相关联,应用程序的所有动作...
  • 中点画圆算法

    2008-05-29 13:55:20
    中点画圆算法,VC下编写
  • VC/MFC动态画线(橡皮线),画圆,画椭圆,画矩形

    万次阅读 多人点赞 2012-12-07 22:36:09
    VC鼠标拖动动态画矩形框( http://blog.csdn.net/zhouxuguang236/article/details/7686163 ) 和 VC动态轨迹画线 ( http://blog.csdn.net/akof1314/article/details/5547616 ),更感谢转载前一篇博文的作者( ...
  • 图形学画圆

    2013-04-21 13:32:56
    VC6.0中的MFC 实现橡皮筋效果的绘画任意半径的圆

空空如也

空空如也

1 2 3 4 5
收藏数 92
精华内容 36
关键字:

vc画圆