- 注册时间
- 2009-9-8
- 最后登录
- 1970-1-1
- 威望
- 星
- 金币
- 枚
- 贡献
- 分
- 经验
- 点
- 鲜花
- 朵
- 魅力
- 点
- 上传
- 次
- 下载
- 次
- 积分
- 56
- 在线时间
- 小时
|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?欢迎注册
×
原文来自CTEX论坛:
http://bbs.ctex.org/viewthread.p ... hlight=%B0%CB%D8%D4
用asympteto所画的太极图及先天八卦和后天八卦。- texpreamble("\usepackage{CJK}\AtBeginDocument{\begin{CJK*}{GBK}{song}}
-     \AtEndDocument{\clearpage\end{CJK*}}");  //中文支持
-
- size(10cm);
-
- real r1=0.15;
-
- guide g1=arc((0,-0.5),0.5,-90,90)..arc((0,0.5),0.5,270,90)..arc((0,0),1,90,-90)..cycle;
-
- filldraw(g1^^circle((0,0.5),r1));
- draw(unitcircle);
- filldraw(circle((0,-0.5),r1));
-
- void gua(int nn, int pos=nn, real initangle=0, bool showname=false)
- {
-   int n,n1,n2,n3;
-   real ang;
-   n=nn%8;
-   ang=initangle+45*(pos%8);
-   n1=quotient(n,4);
-   n2=quotient(n%4,2);
-   n3=quotient(n%2,1);
- // write(n1,n2,n3);
-
-   pair p;
-   path m0[];  // --- 阳
-   path m1[];  // - - 阴
-   string name[]={"乾","巽","离","艮","兑","坎","震","坤"};
-   path g1[],g2[],g3[];
-   real r,len=0.65,inter=0.15,interh=len/6,lw=6;  
-   // len 长度,interh 阴的间隔长度,inter 三道之间的间隔, lw 线宽
-   r=1+3*inter;
-   p=(r*Cos(ang),r*Sin(ang));
-   m0=(-len/2,0)--(len/2,0);
-   m1=(-len/2,0)--(-interh/2,0)^^(interh/2,0)--(len/2,0);
-   if(n1==0)
-        g1=shift(p)*rotate(ang+90)*m0;
-   else
-        g1=shift(p)*rotate(ang+90)*m1;
-   if(n2==0)
-        g2=shift(p-(inter*Cos(ang),inter*Sin(ang)))*rotate(ang+90)*m0;
-   else
-        g2=shift(p-(inter*Cos(ang),inter*Sin(ang)))*rotate(ang+90)*m1;
-   if(n3==0)
-        g3=shift(p-(2inter*Cos(ang),2inter*Sin(ang)))*rotate(ang+90)*m0;
-   else
-        g3=shift(p-(2inter*Cos(ang),2inter*Sin(ang)))*rotate(ang+90)*m1;
-   draw(g1,linewidth(lw)+linecap(0));
-   draw(g2,linewidth(lw)+linecap(0));
-   draw(g3,linewidth(lw)+linecap(0));
-   if(showname)
-    {
-     label(scale(2)*rotate(ang-90)*name[n],p+(2inter*Cos(ang),2inter*Sin(ang)));
-    }
- }
-
- bool showname;
- real rot;
- rot=-45;
- showname=false;
- //-------后天八卦--------
- gua(0,0,rot,showname); //乾
- gua(4,1,rot,showname); //兑
- gua(7,2,rot,showname); //坤
- gua(2,3,rot,showname); //离
- gua(1,4,rot,showname); //巽
- gua(6,5,rot,showname); //震
- gua(3,6,rot,showname); //艮
- gua(5,7,rot,showname); //坎
-
-
- //-------先天八卦--------
- rot=90;
- showname=false;
- //gua(0,0,rot,showname); //乾
- //gua(1,1,rot,showname); //巽
- //gua(2,2,rot,showname); //离
- //gua(3,3,rot,showname); //艮
- //gua(7,4,rot,showname); //坤
- //gua(6,5,rot,showname); //震
- //gua(5,6,rot,showname); //坎
- //gua(4,7,rot,showname); //兑
复制代码 得到的效果图如下:
先天八卦
太极先天八卦1
太极先天八卦.png
(4.89 KB, 下载次数: 0, 售价: 1 枚金币)
后天八卦
太极后天八卦2.png
(4.32 KB, 下载次数: 0, 售价: 1 枚金币)
太极后天八卦.png
(5.06 KB, 下载次数: 0, 售价: 1 枚金币)
|
|