zoukankan      html  css  js  c++  java
  • Asymptote 学习记录(4) 利用旋转和平移变换画赵爽弦图

    我在Asymptote 学习记录(3) 画赵爽弦图练习 里画了赵爽弦图,不过方法比较笨.下面用旋转和平移画出那四个三角形.得到的图像和Asymptote 学习记录(3) 画赵爽弦图练习 里的图像一样.在桌面建立test.asy文档,文档内容如下:

     1 import settings;
     2  settings.tex = "pdflatex";
     3  pdfviewer="/usr/bin/okular";
     4  outformat="pdf";
     5  size(400);
     6  texpreamble("\usepackage{CJKutf8}\AtBeginDocument{\begin{CJK}{UTF8}{gbsn}}\AtEndDocument{\clearpage\end{CJK}}");
     7  import math;
     8  add( scale(1cm) * grid(7, 7, heavygray) );
     9  add( shift(0,3cm) * rotate(-aTan(3/4)) * scale(1cm) * grid(5, 5, heavygray) );
    10  fill( box((3cm,3cm), (4cm,4cm)), opacity(0.3)+yellow );
    11  guide zhushi=((4cm,0)-- (4cm,3cm) -- (0,3cm) -- cycle);
    12  filldraw (zhushi^^shift(7cm,0)*rotate(90)*zhushi^^shift(7cm,0)*rotate(90)*shift(7cm,0)*rotate(90)*zhushi^^shift(7cm,0)*rotate(90)*shift(7cm,0)*rotate(90)*shift(7cm,0)*rotate(90)*zhushi,fillpen=opacity(0.1)+red, drawpen=red+0.5mm);
    13  label("朱实", (2cm,4cm),red);
    14  label("黄实", (3.5cm,3.5cm),yellow);
    15  label("弦实", (5cm,4cm),orange);
    16  label( Label("勾三",Rotate(S)), (4cm,0)--(4cm,3cm), LeftSide );
    17  label( Label("股四",Rotate(E)), (4cm,3cm)--(0,3cm), LeftSide );
    18  label( Label("弦五",Rotate((4,-3))), (0,3cm)--(4cm,0), LeftSide );

    然后在终端里输入asy -V -f  pdf ~/Desktop/test  即可生成图像.

  • 相关阅读:
    (转)重识new
    【洛谷习题】连续自然数和
    【AHOI2005】约数研究
    【NOIP2003】麦森数
    康托展开
    【洛谷习题】南蛮图腾
    【洛谷习题】吃奶酪
    【NOIP2002】字串变换
    哈希表
    【NOIP2013】货车运输
  • 原文地址:https://www.cnblogs.com/yeluqing/p/3827749.html
Copyright © 2011-2022 走看看