代码语言
.
CSharp
.
JS
Java
Asp.Net
C
MSSQL
PHP
Css
PLSQL
Python
Shell
EBS
ASP
Perl
ObjC
VB.Net
VBS
MYSQL
GO
Delphi
AS
DB2
Domino
Rails
ActionScript
Scala
代码分类
文件
系统
字符串
数据库
网络相关
图形/GUI
多媒体
算法
游戏
Jquery
Extjs
Android
HTML5
菜单
网页交互
WinForm
控件
企业应用
安全与加密
脚本/批处理
开放平台
其它
【
C
】
N等分圆,正N边形,圆的内接正N边形,外接正N边形
作者:
参天
/ 发布于
2014/7/17
/
860
N等分圆,正N边形,圆的内接正N边形,外接正N边形
void CMyDlg::OnButton2() { // TODO: Add your control notification handler code here CDC *pDC; pDC = this->GetDC(); int iList[100]; iList[0]=1; //费氏数列初始的两个元素 iList[1]=1; int i; int ix; //横坐标的整数点 int iy; //纵坐标的整数点 double dR=200; //半径 int iStart=300; int iNum=9; //画几边形;10个圆就是,10-1边形 double dx,dy; double dPi = 3.1415926535; //π,2π是一个圆周 double dPercision = 0.01; //精度0.01弧度 数值小,越像多边形 double da=0; //角度 dx = cos(da)*dR; //取得XY坐标,cos和sin呼唤,可以改变旋转方向,目前是顺时针 dy = sin(da)*dR; ix = int(dx); //取整 iy = int(dy); pDC->MoveTo(iStart+ix, iStart+iy); for(da=0; da<=2*dPi; da+=dPercision) //画圆 { dx = cos(da)*dR; dy = sin(da)*dR; ix = int(dx); iy = int(dy); pDC->LineTo(iStart+ix, iStart+iy); } i=0; dPercision = 2*dPi/9.00001; //画内接九边形 for(da=0; da<=2*dPi; da+=dPercision) { dx = cos(da)*dR; dy = sin(da)*dR; ix = int(dx); iy = int(dy); iList[i++]=ix; iList[i++]=iy; pDC->LineTo(iStart+ix, iStart+iy); pDC->LineTo(iStart, iStart); pDC->LineTo(iStart+ix, iStart+iy); } i=0; dPercision = 2*dPi/9.00001; //画外接九边形 dR=dR/sin(dPi-dPercision/2-dPi/2);//(半径变化) for(da=0; da<=2*dPi; da+=dPercision) { dx = cos(da)*dR; dy = sin(da)*dR; ix = int(dx); iy = int(dy); iList[i++]=ix; iList[i++]=iy; pDC->LineTo(iStart+ix, iStart+iy); pDC->LineTo(iStart, iStart); pDC->LineTo(iStart+ix, iStart+iy); } pDC->SetTextColor(RGB(255, 0, 0)); i=0; dPercision = 2*dPi/9.00001; //画外接九边形 //dR=dR/sin(dPi-dPercision/2-dPi/2); for(da=dPercision/2; da<=2*dPi+dPercision/2; da+=dPercision)//转动半顶角个角 { dx = cos(da)*dR; dy = sin(da)*dR; ix = int(dx); iy = int(dy); iList[i++]=ix; iList[i++]=iy; pDC->LineTo(iStart+ix, iStart+iy); pDC->LineTo(iStart, iStart); pDC->LineTo(iStart+ix, iStart+iy); }
试试其它关键字
同语言下
.
获取手机通讯录 iOS去除数字以外的所有字符
.
异步加载音乐等资源
.
交通罚单管理系统
.
freemark实现,简单的替换
.
计算斐波那契数列
.
base64解码 包括解码长度
.
图像显示
.
冒泡排序
.
输入十进制数,输出指定进制
.
链式栈
可能有用的
.
获取手机通讯录 iOS去除数字以外的所有字符
.
异步加载音乐等资源
.
交通罚单管理系统
.
freemark实现,简单的替换
.
计算斐波那契数列
.
base64解码 包括解码长度
.
图像显示
.
冒泡排序
.
输入十进制数,输出指定进制
.
链式栈
参天
贡献的其它代码
(
1
)
.
N等分圆,正N边形,圆的内接正N边形,外接正N边形
Copyright © 2004 - 2024 dezai.cn. All Rights Reserved
站长博客
粤ICP备13059550号-3