尧图网络 高端网站定制 · 原创设计
免费咨询热线
400-888-6620
免费获取方案
数学艺术图案画-曼陀罗(65)
数学艺术图案画曼陀罗65本系列曼陀罗图案创制一直以来都是我的最爱。我总是被色彩绚烂和美轮美奂的图案感动。在前些时候完成了曼陀罗图案系列 6轮既定目标 图1至 图 60。本博文开始提供的是第 7 集系列曼陀罗图案 图61至图70 。再次把美好的东西贡献给大家希望大家喜欢。曼陀罗图案画是一类经典的、具有长久历史的艺术形式。在多个种族文化和宗教传统中占据很特殊地位。且不谈宗教方面其图案在美学和艺术方面就有那无与伦比的地位。图案通常以圆形呈现它那几何图形的集合图案的对称性、复杂性以及色彩的绚烂和变化多端常能激起人们对美的憧憬和向往。本博文提供了最为简单和直观的数学艺术绘图方法一块画布 Canvas cs.Draw...一个调色板设置预设调色板 getcolor ( )加色彩变化 SetColor (180, r1, g1k*cn, b1)一个绘图函数 mandalaXX ( ) { ······ }几个简单的绘图语句canvas.DrawOval (X, Y, La, Lb, R) 画椭圆canvas.DrawCircle (X, Y, R) 画圆形绘出一组色彩缤纷美轮美奂的图案。颜色设置原预设置六个调色板色调取色彩亮度及鲜艳图案绘出时加色彩变化。今有修正增加一色调黄色yellow 。图案的绘制要点是以椭圆的长短轴变化半径变化以及中心距的变化再加上色彩的变化来完成图案的复杂度图案图形的艺术性。各参数的变化代码中有注释。本设计的重点图案是即时逐线逐帧动画展示的。本人感受到屏幕的美感数学绘画的艺术感简直美极了。本博文是曼陀罗图案系列文档今后会陆续推出其他图样。谨以此方法贡献给喜欢美的朋友。本程序是用简单的C语言在安卓手机上编写的。界面是手机屏幕方式。总结一下图形和色彩变化的要点一是图形变化图形输出中心距L变化加微调距离(L40)叠加图形以及椭圆的长短轴尺寸比例的变化循环套叠画出图形。二是色彩变化预设置调色板色调模型循环绘图时调用k值微调RGB颜色值来变化输出图形色彩。细心的读者对比一下几篇博文就能体会此中奥妙。下面是源码//设置全局变量或局部变量float pi3.1415926535;string s,ss,ss1,ss2,ss3; //print text strinfloat sx,sy, px,py, dx,dy; //center pointfloat sx1,sy1,sx2,sy2,sx3,sy3,sx4,sy4; //绘图float a,a1,a2, L,L1,d,r; //sin (a), d degree, Lengthdouble sn; //mode numberint round; //set roundint r1,g1,b1; //16m 全色调色板 A, R, G, B)double Rn; //random numberint i,j,n,t,k, kn; //t times, n numbeint cn; //设置调色板色彩变化系数预设置调色板getcolor (){//** 此是新修正的调色板//** 原预设置调色板 (六个色调新增yellow// 1 red 2 pink 3 blue 4 purple// 5 green 6 orange 7 yellow// cn 色调变化系数 cn 5 to 20// cn小 红色调 大 蓝绿色调Rnrandom()*71; //colorkn(int)Rn;if (kn1){r1250; g1-120; b10; cn5; } //redif (kn2){r1250; g1-50; b1250; cn10; } //pinkif (kn3){r10; g10; b1250; cn15; } //blueif (kn4){r1160; g10; b1250; cn20; } //purpleif (kn5){r10; g1200; b1100; cn15; }//greenif (kn6){r1250;g130;b1100; cn15; } //orangeif (kn7){r1250; g1250; b10; cn10; } //yellow//** return color (A,R,G,B ) r1, g1, b1}//getcolor ()图例Times 8 是一次循环展示的图案Times ( 1 - 7 ) 是动画展示的中间过程图案。图案源码如下//** 图案绘出pi/8 八角形 i*45度pi/6 六角形 60度//** pi/4 十字形 90度pi/5 五星形 72度pi/12 十二角 30度 pi/16 十六角 22.5度//** k * n 椭圆比k*1.5可 set 0.5 2.5//**图案动画展示图案和色彩多次叠加每轮次八步产生8个不同色彩的图案2圈次可展示出16个图案//** 图案采用多层图形多层色彩套叠设计方法//** 外圈二三层中心区二三层多层多彩套图形设计mandala65 (){//** init round, n, center point px, pyround2; n0; //** 设置动画演示次数圈数----px360; py350; //** 图案输出中心点//** 重绘图案redraw65:cs.SetFillMode (1);//0不填色1填色cs.SetColor (255,0,0,0);cs.DrawRect (0,0,720,720); //页面重置nn1; //计数圈数//** 图案绘出有 8 步图形颜色变化for (t1; t8; t){cs.SetFillMode (1); //0不填色1填色cs.SetColor (255,0,0,0);cs.DrawRect(20,660,700,710); //renew times//** 设置颜色取得颜色值getcolor ();cs.SetColor (255, r1, g1200, b1);//** 屏幕打印状态提示次数 t圈数 nsintToString (t);ss3Times s;sintToString (n);ss1Round s;cs.SetTextSize (28);cs.DrawText (曼陀罗图案 (65) ,50,40);cs.DrawText (ss3,90,680);cs.DrawText (ss1,240,680);cs.Update ();//** 图形区域框线cs.SetFillMode (0);//0不填色1填色cs.SetColor (255,250,250,0);cs.DrawRect(50,50,670,650); //框线cs.Update ();//****** figure 1 ****** 图形叠加设计getcolor ();for(i0;i8; i){a2*pi/8*ipi/8 ; L150;sx1(float)(L*cos(a))px;sy1(float)(L*sin(a))py;sx2(float)(L*sin(a))px;sy2(float)(-L*cos(a))py;for (k8;k30; k){//** 依取得颜色 颜色变化 a180 半透明cs.SetColor (180,r1, g1k*cn, b1);cs.DrawOval (sx1,sy1,20,k*1.2, i*4522.5);cs.DrawCircle (sx1,sy1, k/5);cs.DrawOval (sx2,sy2,10,k*1.2, i*4522.5);} }//****** figure 2 ****** 图形叠加设计getcolor ();for(i0;i8; i){a2*pi/8*i ; L150;sx1(float)(L*sin(a))px;sy1(float)(-L*cos(a))py;for (k8;k30; k){//** 依取得颜色 颜色变化 a180 半透明cs.SetColor (180,r1, g1k*cn, b1);cs.DrawOval (sx1,sy1,30,k*1.2, i*45);cs.DrawOval (sx1,sy1,10,k*1.8, i*45);cs.DrawCircle (sx1,sy1, k/5);} }//****** center figure 1 ********getcolor ();for(i0;i8; i){a2*pi/8*ipi/8 ; L130;sx1(float)(L*cos(a))px;sy1(float)(-L*sin(a))py;for (k8;k25; k){//** 依取得颜色 颜色变化 a180 半透明cs.SetColor (180,r1, g1k*cn, b1);cs.DrawOval (sx1,sy1,20,k*1.8, i*4522.5);cs.DrawCircle (sx1,sy1, k/3);} }//****** center figure 2 ********getcolor ();for(i0;i8; i){a2*pi/8*i ; L60;sx1(float)(L*sin(a))px;sy1(float)(-L*cos(a))py;a2*pi/4*i ; L70;sx2(float)(L*sin(a))px;sy2(float)(-L*cos(a))py;for (k10;k30; k){//** 依取得颜色 颜色变化 a180 半透明cs.SetColor (180,r1, g1k*cn, b1);cs.DrawOval (sx1,sy1,25,k*1.8, i*45);cs.DrawCircle (sx1,sy1, k/3);cs.DrawOval (sx2,sy2,40,k*1.5, i*90);} }cs.Update (); //即时动画演示} //next tsleep (1000); //next round delayif (nround) goto redraw65; //下一圈}//test65//** End ****
RELATED

相关推荐

【JAVA毕设源码分享】基于JavaWeb的美食交流宣传系统的设计与实现(程序+文档+代码讲解+一条龙定制)

【JAVA毕设源码分享】基于JavaWeb的美食交流宣传系统的设计与实现(程序+文档+代码讲解+一条龙定制)

博主介绍:✌️码农一枚 ,专注于大学生项目实战开发、讲解和毕业🚢文撰写修改等。全栈领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围:&am…

📅 2026/10/8 7:05:47
【2024短视频矩阵生存白皮书】:单日产出200条AI视频却零转化?3个被92%运营忽略的ROI归因漏洞

【2024短视频矩阵生存白皮书】:单日产出200条AI视频却零转化?3个被92%运营忽略的ROI归因漏洞

更多请点击: https://intelliparadigm.com 第一章:【2024短视频矩阵生存白皮书】:单日产出200条AI视频却零转化?3个被92%运营忽略的ROI归因漏洞 当AI批量生成视频成为标配,真正的瓶颈早已从“生产效率”悄然迁移至“归…

📅 2026/10/19 9:13:27
蓝速 AI 双屏翻译机国内版 vs 国际版:方言适配与场景选型深度评测

蓝速 AI 双屏翻译机国内版 vs 国际版:方言适配与场景选型深度评测

在涉外酒店前台或政务大厅的接待窗口,语言障碍往往是最先浮现的“隐形墙”。面对操着浓重口音的长者,或是来自不同国家的外宾,传统的人工翻译不仅效率低,还容易因听辨误差引发误解。很多单位曾尝试过手机翻译软件,但在…

📅 2026/11/2 17:05:57
MORE NEWS

更多资讯

📰

焦作电工证报名地址全国通用怎么报名不卡学历

焦作电工证报名地址全国通用怎么报名不卡学历 你是不是也担心自己学历不够,怕报不了焦作电工证?其实现在大多数地方对学历的要求已经不像以前那么严格了, 焦作电工证报名地址 不仅好找,而且证书是 全国通用 的,只要你符合条件,就能顺利报考。…

📰

高压电工证托管骗局多,内部消息揭露真实考试内容

高压电工证托管骗局多,内部消息揭露真实考试内容 学历不高怕报不上名,你不是一个人。在漯河本地,不少想考高压电工证的朋友都遇到过培训机构“包过”“托管考试”“代报名”的宣传,结果一上手才发现,不是没通过考试,而是被套路了。这波…

📰

电网员工需要电工证丢了怎么补办多少钱

电网员工需要电工证丢了怎么补办多少钱 怕考不过白交培训费,电网员工需要电工证这件事千万别大意。很多人以为进了电力系统就不用愁电工证的事,但一旦证书丢失或需要更新,流程和费用就不是小事。尤其在河南省,电网员工需要电工证不仅是基本要求,更是安全…

📰

移民电工证可以换香港?在哪考最稳妥?实操考试心里没底怕挂科

移民电工证可以换香港?在哪考最稳妥?实操考试心里没底怕挂科 实操考试心里没底怕挂科?你不是一个人。尤其是像南阳卧龙区的公路工程从业者,很多都在考虑如何把手中的电工证用上,甚至有人想着移民后还能不能在海外用。尤其是“移民电工证可以换香港”这个…

📰

600元考中级电工证保姆级教程:证书过期了不知道怎么复审延期

600元考中级电工证保姆级教程:证书过期了不知道怎么复审延期 证书过期了不知道怎么复审延期?这事儿真不能拖!特别是像我们这类在建筑工地、工厂一线干活的电工,一旦证件过期就等于没了“护身符”,再干也得被查出问题。现在给你一个 保姆级教程…

📰

重庆巴南考电工证怎么转过来?2026河南最新政策全解析

重庆巴南考电工证怎么转过来?2026河南最新政策全解析 之前考的证在外省能不能转过来?这个问题很多从外地过来的朋友都在问,尤其是像郑州的应届工程类毕业生,手里拿着外地的电工证,到了重庆巴南,发现证书不能直接用了,心里就慌了。其实,2026年…

TODAY

今日更新

THIS WEEK

本周精选

THIS MONTH

本月热门

读完文章,想聊聊您的网站?

告诉我们您的行业与需求,资深顾问一对一梳理方案与报价,全程免费。

📞 💬