这个不可能对象是[医]雷克斯瓦德三角:

根据以下规则绘制您自己的版本:
发布于 2017-01-14 07:32:39
n={-1,1}#&;c_~g~s_:=Polygon[c+s#&/@{k={12,9},m=n@k,t={0,-12}}];p={#,#2~g~1,#3~g~-1}&;a=p[Cyan,#-k,#+m]&;b=p[Blue,#-t,#+k]&;c=p[Red,#-m,#+t]&;Graphics@{{a@#,b@#,c@#}&/@{j=4k,s=4{4,9},n@s,4m,r={-32,8},q=-4{4,5},4t,n@q,n@r},a@j,b@s,c@j,c@s}易读版本:
1 n = {-1, 1} # &;
2 c_~g~s_ := Polygon[c + s # & /@ {k = {12, 9}, m = n@k, t = {0, -12}}];
3 p = {#, #2~g~1, #3~g~-1} &;
4 a = p[Cyan, # - k, # + m] &;
5 b = p[Blue, # - t, # + k] &;
6 c = p[Red, # - m, # + t] &;
7 Graphics@{
8 {a@#, b@#, c@#} & /@
9 {j = 4 k, s = 4{4, 9}, n@s, 4 m, r = {-32, 8},
10 q = -4{4, 5}, 4 t, n@q, n@r},
11 a@j, b@s, c@j, c@s}第1行定义了一个函数n,它否定有序对的第一个坐标。第2行定义了一个函数g,它生成以c点为中心的(大致)等边三角形,并根据s是1还是-1指向向下或向上。第3行将p定义为由颜色和两个三角形组成的平行四边形模板,第4-6行将a、b和c定义为显示在立方体中的三种不同类型的平行图。
第8行定义了一个函数{a@#, b@#, c@#}&,它以#点为中心绘制整个立方体;第9和第10行将其应用于形成较大三角形所需的九个点。这就产生了九个立方体,从右上角开始,逆时针方向运动,后面的立方体掩盖了早期立方体的一部分。最后,第11行重新绘制四个平行图(在图片的右上角),这样它们就会像预期的那样覆盖后面的多维数据集。产出如下:

发布于 2017-01-14 02:57:18
标记文件大小为129个字节
t=PI/1.5x=500y=x:FORi=0TO28b=i MOD3GCOL0,b:b*=t:a=i DIV9*t:IFb=0x-=99*COSa:y-=99*SINa
MOVEx,y:VDU25;66*COSb;66*SINb;28953;66*COS(b-t);66*SIN(b-t);:NEXT使用绝对坐标规范(MOVE)和每个平行四边形的两个相对规范节省2个字节,而不是改变原点,以便能够使用所有绝对规范。消除了1字节不必要的空白。
标记文件大小127字节
http://www.bbcbasic.co.uk/bbcwin/download.html下载解释器
t=PI/1.5x=500y=x:F.i=0TO28b=i MOD3GCOL0,b:b*=t:a=i DIV9*t:IFb=0 x-=99*COSa:y-=99*SINa:ORIGINx,y
L.66*COSb,66*SINb,0,0PLOT117,66*COS(b-t),66*SIN(b-t)N.我们从右上角的坐标开始,按3组绘制菱形图。在每组3的前,我们移动原点(West,SE,SE,NE,NE )。这意味着右上角的3组是最后一个要绘制的完整组,使原点回到原来的位置。然后我们继续绘制第一组的黑色和红色(但不是绿色),总共有29个菱形。
t=PI/1.5 :REM 120 deg
x=500 :REM coordinates of top right corner
y=x
FORi=0TO28
b=i MOD3:GCOL0,b :REM set colour 0=black,1=red,2=green
b*=t :REM convert b to a multiple of 120deg
a=i DIV9*t
IFb=0 x-=99*COSa:y-=99*SINa:ORIGINx,y :REM before each group of 3 rhombs move the graphics origin
LINE66*COSb,66*SINb,0,0 :REM define one side of a rhombus
PLOT117,66*COS(b-t),66*SIN(b-t) :REM define one further corner and plot the rhombus
NEXT
https://codegolf.stackexchange.com/questions/106799
复制相似问题