void CTxx1View::OnDraw(CDC* pDC)
{
CTxx1Doc* pDoc = GetDocument();
ASSERT_VALID(pDoc);
// TODO: add draw code for native data here

//CDC * pDC=GetDC();//设备上下文指针

typedef struct
{
double x;
double y;
}zuobiao;

zuobiao P[n];

CRect rect;//定义矩形对象

GetClientRect(&rect);//获得客户区矩形的大小

pDC->SetMapMode (MM_ANISOTROPIC);//自定义坐标系

pDC->SetWindowExt(rect.Width(),rect.Height());//设置窗口比例

pDC->SetViewportExt(rect.Width(),rect.Height());//设置视区比例且y轴向上

pDC->SetViewportOrg(rect.Width()/2,rect.Height()/2);//设置客户区中心为坐标原点

rect.OffsetRect(-rect.Width()/2,-rect.Height()/2);//矩形与客户区重合

CPen NewPen,*pOldPen;//定义画笔

NewPen.CreatePen (PS_SOLID,1,RGB(0,0,255));//创建蓝色画笔

pOldPen=pDC->SelectObject(&NewPen);//将蓝色画笔选人设备上下文

double Alpha,Theta;

Theta=2*PI/n;//为等分角

Alpha=PI/2-Theta;//起始角

//极坐标求值

for(int i=0;i<n;i++)

{

P[i].x=r*cos(i*Theta+Alpha);

P[i].y=r*sin(i*Theta+Alpha);

}

//二重循环,连线(P[i]为起点,P[j]为终点)

for(i=0;i<=n-2;i++)

{

for(int j=i+1;j<=n-1;j++)

{

pDC->MoveTo(Round(P[i].x),Round(P[i].y));

pDC->LineTo(Round(P[j].x),Round(P[j].y));

}

}

pDC->SelectObject(pOldPen);//恢复设备环境中的元画笔

NewPen.DeleteObject ();//删除已成自由状态的蓝色画笔

ReleaseDC(pDC);//释放设备指针

}
---------------------

VC++绘制金刚石(MFC)的更多相关文章

  1. vc++深入跟踪MFC程序的执行流程

    在MFC程序设计的学习过程中最令人感到难受,甚至于有时会动摇学习者信心的就是一种对于程序的一切细节都没有控制权的感觉.这种感觉来源于学习者不知道一个MFC程序是如何运行起来的(即一个MFC程序的执行流 ...

  2. file:///D:/Program%20Files/Microsoft%20Visual%20Studio%2011.0/VC/VCWizards/CodeWiz/MFC/Variable/HTML

    title VS2005  VS2008添加变量,添加函数,添加类时弹出 Script Error  解决办法 问现象描述 : 问题大家都清楚了.不赘述 错误提示 :file:///C:/Progra ...

  3. VC绘制控件如何防止闪烁

    理论上不管什么控件都适用,方法如下: 新建一个MFC类,继承原来的控件类型,对于VC自动生成的类进行如下改动: 首先覆盖 OnEraseBkgnd() 防止擦除时填涂背景: BOOL CXXXCtrl ...

  4. VC中的MFC到底是什么?

    1. 微软基础类库(英语:Microsoft Foundation Classes,简称MFC)是一个微软公司提供的类库(class libraries),以C++类的形式封装了Windows API ...

  5. vc++上的MFC的对象序列化和反序列化

      注意点: 1. 必须类型序列化声明    DECLARE_SERIAL( Person )  2. 必须写出实现宏 IMPLEMENT_SERIAL(Person, CObject, VERSIO ...

  6. Win10系列:VC++绘制文本

    20.7.2小节介绍了如何使用Direct2D在应用窗口中绘制图片,本小节将基于20.7.2小节的项目进一步介绍如何实现文本的绘制.打开D2DBasicAnimation.h头文件,并在D2DBasi ...

  7. Win10系列:VC++绘制位图图片

    在使用Direct2D绘制图片的过程中,通过IWICImagingFactory工厂接口来得到绘制图片所需要的资源.本小节将介绍如何通过IWICImagingFactory工厂接口得到这些资源,并使用 ...

  8. Win10系列:VC++绘制几何图形5

    打开D2DBasicAnimation.h头文件,并在D2DBasicAnimation类中添加如下的代码: private:     //声明成员变量point     D2D1_POINT_2F ...

  9. Win10系列:VC++绘制几何图形4

    三角形绘制完成以后,接下来介绍如何给项目添加主入口函数.打开D2DBasicAnimation.h头文件,添加如下的代码定义一个DirectXAppSource类. //定义类DirectXAppSo ...

随机推荐

  1. Servlet初始配置 监听器和过滤器

    ServletContext:application范围内的参数 此所设定的参 来源: http://note.sdo.com/my 数,在JSP网页中可以使用下列方法来取得: ${initParam ...

  2. Ordered Fractions

    链接 分析:遍历一下,求个gcd即可,最后按照ans排序并去重 /* PROB:frac1 ID:wanghan LANG:C++ */ #include "iostream" # ...

  3. 修改cocos2dx 背景颜色

    只需要在AppDelegate的设置FPS后面加入一行: glClearColor(1.0, 1.0, 1.0, 1.0); 同理如果要修改成其它颜色,只需修改里面的值即可( r, g, b, a);

  4. 将svn的项目转移到另外一个仓库中

    前几天在做一个项目的时候,因为需要,需要将Server A 上SVN仓库 repos1中的项目pro1迁移到Server B 上的SVN仓库中,首先想到的是:通过复制,但是仔细一想,这样是不可能的:然 ...

  5. .NETFramework:Stream

    ylbtech-.NETFramework:Stream 1.返回顶部 1. #region 程序集 mscorlib, Version=4.0.0.0, Culture=neutral, Publi ...

  6. 转:深度学习与自然语言处理之五:从RNN到LSTM

    原文地址:http://blog.csdn.net/malefactor/article/details/50436735/ 大纲如下: 1.RNN 2.LSTM 3.GRN 4.Attention ...

  7. 库&框架-----CDN网络引用总结

    百度jquery引用地址 http://apps.bdimg.com/libs/jquery/1.6.4/jquery.js http://apps.bdimg.com/libs/jquery/1.6 ...

  8. php大小写转换函数

    1.将字符串转换成小写   strtolower(): 该函数将传入的字符串参数所有的字符都转换成小写,并以小定形式放回这个字 符串.例: <?php $str = "I want T ...

  9. SCUT - 254 - 欧洲爆破 - 概率dp - 状压dp

    https://scut.online/p/254 思路很清晰,写起来很恶心. #include<bits/stdc++.h> using namespace std; #define l ...

  10. POJ2456【二分】

    题意: n个位置,m个帅气的窝的化身,然后窝要去这些位置,问一个最小距离的最大. 思路: 就是二分最小距离,然后判断一下该最小距离x 下,是不是存在>=m个窝的化身之间的距离>=x就好了: ...