代码编写旋转太极图(太极图是旋转图形吗)
admin 发布:2022-12-19 07:51 138
今天给各位分享代码编写旋转太极图的知识,其中也会对太极图是旋转图形吗进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!
本文目录一览:
Python如何运用turtle绘制阴阳太极图
本文详细分析如何使用Python turtle绘制阴阳太极图,先来分解这个图形,图片中有四种颜色,每条曲线上的箭头表示乌龟移动的方向,首先从中心画一个半圆(红线),以红线所示圆的直径作半径画一个校园,半径为红线所示圆半径的0.15倍(蓝线),之所以选择0.15倍,是因为这样嵌入红圆内的小圆直径和红圆直径接近黄金分割。
相关推荐:《Python视频教程》
完整代码:
效果图如下:
VB中如何用Circle方法绘制太极八卦图
先说明一下circle的语法:
object.Circle Step(x, y), radius, [color, start, end, aspect]
object 可选的。 对象表达式,其值为“应用于”列表中的对象。如果object 省略,具有焦点的窗体作为object。
Step 可选的。关键字 ,指定圆、椭圆或弧的中心,它们相对于当前 object 的 CurrentX 和 CurrentY 属性提供的坐标。
(x, y) 必需的。 Single (单精度浮点数),圆、椭圆或弧的中心坐标。object 的 ScaleMode 属性决定了使用的度量单位。
radius 必需的。Single (单精度浮点数),圆、椭圆或弧的半径。 object 的 ScaleMode 属性决定了使用的度量单位。
color 可选的。Long (长整型数),圆的轮廓的 RGB 颜色。如果它被省略,则使用 ForeColor 属性值。可用 RGB 函数或 QBColor 函数指定颜色。
start, end 可选的。 Single (单精度浮点数),当弧、或部分圆或椭圆画完以后,start 和 end 指定(以弧度为单位)弧的起点和终点位置。其范围从 -2 pi 到 2 pi 。起点的缺省值是0; 终点的缺省值是2 * pi。
aspect 可选的。 Single (单精度浮点数),圆的纵横尺寸比。缺省值为 1.0,它在如何屏幕上都产生一个标准圆(非椭圆)。
Private Sub Form_Paint()
Dim pi As Single
pi = 3.1415926
x = Form1.ScaleWidth / 2 'x是窗体宽度的1/2
y = Form1.ScaleHeight / 2 'y是窗体高度的1/2
Form1.Circle (x, y), 500 '大圆以x,y为圆心,500为半径
Form1.Circle (x - 250, y), 250, , 0, pi '小圆半径为大圆1/2,颜色缺省,0、pi分别为圆弧的起点角度与终点角度(用弧度计算)
Form1.Circle (x + 250, y), 250, , pi, 2 * pi
End Sub
我并没有做得那么复杂,但效果就相对简单一点,这样你应该能看懂,可以通过修改圆的坐标、半径、起角终角来看一下效果,应该就很好理解了。至于填充和动态旋转效果我就没做了,免得你越看越昏,如果你需要可以给你做出来。
希望对你有帮助。
用c语言做一个太极图
这个得结合 windows api写 ,我写了一个效果如下:
主要函数的代码如下:
VOID DrawTaiJi( HWND hWnd,
HDC hDc,
int cxStart,
int cyStart,
int cxEnd,
int cyEnd,
COLORREF color_yin,
COLORREF color_yang )
{
HBRUSH YinBrush = ::CreateSolidBrush(color_yin);
HBRUSH YangBrush = ::CreateSolidBrush(color_yang);
HPEN YinPen = ::CreatePen(PS_SOLID, 1, color_yin);
HPEN YangPen = ::CreatePen(PS_SOLID, 1, color_yang);
//使用阴笔、阴刷画出大圆
::SelectObject(hDc, YinBrush);
::SelectObject(hDc, YinPen);
::Ellipse(hDc, cxStart, cyStart, cxEnd, cyEnd);
//使用阳笔、阳刷画出半圆与阴中突出的阳半圆
::SelectObject(hDc, YangBrush);
::SelectObject(hDc, YangPen);
::Pie(hDc, cxStart, cyStart, cxEnd, cyEnd, cxStart + (cyEnd - cyStart) / 2 , cyStart,
cxStart + (cyEnd - cyStart) / 2 , cyEnd);
::Ellipse(hDc, (cxEnd - cxStart) / 4 + cxStart, (cyEnd - cyStart) / 2 + cyStart,
3 * (cxEnd - cxStart) / 4 + cxStart, cyEnd);
//使用阴笔,阴刷画出阳中突出的阴半圆
::SelectObject(hDc, YinBrush);
::SelectObject(hDc, YinPen);
::Ellipse(hDc, (cxEnd - cxStart) / 4 + cxStart, cyStart, 3 * (cxEnd - cxStart) / 4 + cxStart,
(cyEnd - cyStart) / 2 + cyStart);
//使用阴笔,阴刷画出阳中突出的阳小圆
int ConValue = (cxEnd - cxStart ) / 200 + 1;
::Ellipse(hDc, (cxEnd - cxStart) / 2 + cxStart - 5 * ConValue,
3 * (cyEnd - cyStart) / 4 + cyStart - 5 * ConValue ,
(cxEnd - cxStart) / 2 + cxStart + 5 * ConValue,
3 * (cyEnd - cyStart) / 4 + cyStart + 5 *ConValue
);
//使用阳笔,阳刷画出阴中的阳小圆
::SelectObject(hDc, YangBrush);
::SelectObject(hDc, YangPen);
::Ellipse(hDc, (cxEnd - cxStart) / 2 + cxStart - 5 * ConValue,
(cyEnd - cyStart) / 4 + cyStart - 5 * ConValue,
(cxEnd - cxStart) / 2 + cxStart + 5 * ConValue,
(cyEnd - cyStart) / 4 + cyStart + 5 * ConValue
);
::DeleteObject(YinBrush);
::DeleteObject(YinPen);
::DeleteObject(YangPen);
::DeleteObject(YangBrush);
}
可能复制代码后你不有直接看到效果,所以我把相关的代码都一起打包了:
我是菜鸟,希望能帮到你,观楼主英俊潇洒,风流倜傥,必当世豪杰,诚邀加入0x30百度贴吧,共商义举,建不世之功!
代码编写旋转太极图的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于太极图是旋转图形吗、代码编写旋转太极图的信息别忘了在本站进行查找喔。
版权说明:如非注明,本站文章均为 AH站长 原创,转载请注明出处和附带本文链接;
相关推荐
- 05-09网页代码,网页代码快捷键
- 05-06单页网站的代码(完整的网页代码)[20240506更新]
- 05-06个人主页图片代码(个人主页图片代码怎么弄)[20240506更新]
- 05-06提取微信名片代码(微信名片信息提取)[20240506更新]
- 05-06php后台权限管理代码(php管理员权限)[20240506更新]
- 05-06付费观看代码php(付费观看代码)[20240506更新]
- 05-06在线html执行代码(html怎么运行)[20240506更新]
- 05-06源代码管理资源管理器(资源管理器运行代码)[20240506更新]
- 05-06代码源软件库(程序代码库)[20240506更新]
- 05-06点击弹出密码代码(点击弹出密码代码错误)[20240506更新]
取消回复欢迎 你 发表评论:
- 标签列表
- 最近发表
- 友情链接