分享
 
 
 

MetaPost 之蜂窝

王朝other·作者佚名  2006-01-09
窄屏简体版  字體: |||超大  

% fwmx

beginfig(1)

u := 1cm;

pair t;

t = dir (60);

pair a[];

pair b[];

a0 = (xpart dir(30) * u, 0.5u);

b0 = (0, -u);

numeric g[];

g0 = g3 = g4 = g5 = 0;

g1 = g2 = 12;

for i=1 upto 6:

pair c[];

pair d[];

c0 = a[i-1];

d0 = b[i-1];

for j=1 upto 5:

c[j] = c[j-1] + d[j-1];

draw c[j-1]--c[j];

d[j] = (xpart t * xpart d[j-1] - ypart t * ypart d[j-1],

xpart t * ypart d[j-1] + ypart t * xpart d[j-1]);

endfor;

pair e, f;

e = 1/2[c0, c3];

%label.bot("No." & decimal(7-i), (xpart e, -ypart e));

f = (xpart e * 2, -ypart e * 2);

label.bot("D" & decimal(i-1), (xpart f, ypart f + g[i-1]));

drawarrow (0, 0)..f;

draw c3--(c3+d1);

draw c4--(c4+d2);

a[i] = a[i-1] + b[i-1];

b[i] = (xpart t * xpart b[i-1] + ypart t * ypart b[i-1],

xpart t * ypart b[i-1] - ypart t * xpart b[i-1]);

endfor;

label.bot("O", (0, -3));

drawdot (0, 0) withpen pencircle scaled 3pt;

endfig;

pair r[];

r0 = (xpart dir(30), 0.5);% dir 30

r2 = (0, -1);% dir 270

r1 = -(r0 + r2);% dir 150

r3 = (-xpart r1 * 2, 0);% dir 0 of two center

r4 = (-xpart r1, 1.5);% dir 60 of two center

r5 = r1 + (0, 1);% dir 120 of two center

vardef fwmx (expr n, z, u) =

pair c[]; % center of left hex

c[0] = (n-1)*r4 - (n-1) * r3 + z;

for i = n upto 2n-1:

pair d[];

d[0] = c[i-n];

for j = 1 upto i:

pair e[];

e0 = d[j-1] - r0;

e1 = e0 - r2;

e2 = e1 + r0;

e3 = e2 - r1;

draw u*e0--u*e1--u*e2--u*e3;

d[j] = d[j-1] + r3;

endfor;

draw u*(d[i-1]+r0)--u*(d[i-1]-r1);

c[i-n+1] = c[i-n] - r4;

endfor;

pair c[];

c0 = -r5 * (n-2) - (n-1) * r3 + z;

for i = n+1 upto 2n-1:

pair d[];

d[0] = c[i-n-1];

for j = 1 upto i:

pair e[];

e0 = d[j-1] + r2;

e1 = e0 + r0;

e2 = e0 + r1;

e3 = e0 + r2;

draw u*e2--u*e0--u*e1;

%draw e0--e2;

draw u*e0--u*e3;

d[j] = d[j-1] + r3;

endfor;

c[i-n] = c[i-n-1] + r5;

endfor;

pair d[];

d0 = -r5 * (n-1) - (n-1) * r3 + z;

for j = 1 upto n:

pair e[];

e0 = d[j-1] + r2;

e1 = e0 + r0;

e2 = e0 + r1;

draw u*e2--u*e0--u*e1;

d[j] = d[j-1] + r3;

endfor;

enddef;

vardef getmaxno primary n = (n * (n - 1) * 3) enddef;

vardef liner(expr n, z, u, l) =

numeric m;

m := getmaxno(n);

label.bot(decimal(0), (0, 6) + z);

numeric f;

f := 1;

pair j;

j := z;

for i=1 upto m:

numeric p, x, y;

p := f * (f + 1) * 3;

if i = 0:

x := 0;

y := 0;

else:

numeric s, d;

s := (p - i) div f;

d := (p - i - s * f) mod f;

if s = 0: x := f; y := d;

elseif s = 1: x := f - d; y := f;

elseif s = 2: x := - d; y := f - d;

elseif s = 3: x := - f; y := - d;

elseif s = 4: x := - f + d; y := - f;

else: x := d; y := - f + d;

fi;

fi;

pair k;

k := x * r3 + y * r5 + z;

label.bot(decimal(i), k*u + (0, 6));

if l:

draw u*(1/3[j, k])--u*(2/3[j, k]);

fi;

j := k;

if p = i: f := f + 1; fi;

endfor;

enddef;

beginfig(2);

pair z;

z = (0, 0);

numeric u;

u := 0.5cm;

fwmx (3, z, u);

liner (3, z, u, true);

endfig;

beginfig(3);

fwmx (10, (0, 0), 0.35cm);

liner (10, (0, 0), 0.35cm, false);

endfig;

end;

共有三个插图。

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有