斜二测画正方体

 1 import {Complex, Point} from '@mathigon/fermat';
 2 import {Step} from '../shared/types';
 3 
 4 
 5 export function xie($step: Step) {
 6   $step.model.bimetric = (px: number, py: number, pz: number) => {
 7     const sq= (-1)*1.414/4;
 8     const cx = sq*px + py ;
 9     const cy = sq*px + pz ;
10     return new Point(cx, cy);
11   };
12 }
function.ts

 1 ---
 2 > id: xie
 3 
 4 斜二测画正方体
 5 
 6     figure
 7       x-geopad(width=300 height=300 x-axis="-3,3,1" y-axis="-3,3,1"  padding=5): svg
 8         circle.move.green(name="o" cx=0 cy=0 label="O")
 9         circle.blue(x="bimetric(1,1,-1)" name="a" label="A")
10         circle.blue(x="bimetric(-1,1,-1)" name="b" label="B")
11         circle.blue(x="bimetric(-1,-1,-1)" name="c" label="C")
12         circle.blue(x="bimetric(1,-1,-1)" name="d" label="D")
13         circle.blue(x="bimetric(1,1,1)" name="e" label="E")
14         circle.blue(x="bimetric(-1,1,1)" name="f" label="F")
15         circle.blue(x="bimetric(-1,-1,1)" name="g" label="G")
16         circle.blue(x="bimetric(1,-1,1)" name="h" label="H")
17         path.blue(x="polygon(a,b,f,g,h,d)")
18         path.blue(x="segment(a,e)" )
19         path.blue(x="segment(h,e)" )
20         path.blue(x="segment(f,e)" )
21         path.blue(x="segment(c,d)" style = "stroke-dasharray: 4px 5px")
22         path.blue(x="segment(b,c)" style = "stroke-dasharray: 4px 5px")
23         path.blue(x="segment(c,g)" style = "stroke-dasharray: 4px 5px")
content.md

猜你喜欢

转载自www.cnblogs.com/wangshixi12/p/12409762.html