在LaTeX中使用tikz宏包及其扩展包共同绘制UML图之备忘二

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在LaTeX中使用tikz宏包及其扩展包共同绘制UML图之备忘二相关的知识,希望对你有一定的参考价值。

本篇所举例子文件前面的内容与备忘一(在LaTeX中使用tikz宏包及其扩展包共同绘制UML图之备忘一)中的示例一是一样的,这里不再列出。
 
示例三

% 51CTO 陆巍的博客
egin{center}
    egin{tikzpicture}
      
ode(PaydayTransaction)[basic_class]{	extbf{underline{Payday}\ underline{Transaction}}};
      
ode(Employee)[right = of PaydayTransaction, xshift = 1cm, basic_class, text height = 0.5cm, text depth = 0.2cm]{	extbf{underline{Employee}}};
      
ode(PaymentClassification)[below = of Employee, yshift = -1.5cm, basic_class]{	extbf{underline{Payment}\ underline{Classification}}};
      %-------------
      umluniassoc[draw = purple]{PaydayTransaction}{Employee}
      umluniassoc[draw = purple]{Employee}{PaymentClassification}
      % ------------
      draw[draw = purple, o-angle 45](PaydayTransaction.east)node[xshift = 1.2cm, yshift = 1.1cm, anchor = east]{Date} ++(1.2, 1.1) -- ++(0.6, 0);
      draw[draw = purple, -angle 45](PaydayTransaction.east)node[xshift = 0.8cm, yshift = 0.3cm, anchor = south]{1:Pay} ++(0.5, 0.3) -- ++(0.6, 0);
      draw[draw = purple, o-angle 45](Employee.south)node[xshift = 1.6cm, yshift = -0.7cm, anchor = west]{Date} ++(1.5, -0.2) -- ++(0, -0.6);
      draw[draw = purple, -angle 45](Employee.south)node[xshift = 1.8cm, yshift = -1.7cm, anchor = south]{1.1:CalculatePay} ++(0.3, -1.0) -- ++(0, -0.6);
      draw[draw = purple, o-angle 45](PaymentClassification.north)node[xshift = 1.6cm, yshift = 0.5cm, anchor = west]{Pay} ++(1.5, 0.1) -- ++(0, 0.6);
    end{tikzpicture}
    \[0.4cm]heiti 图18.7 计算雇员薪水song
  end{center}

效果如下:
技术分享图片
说明:
  1) 本例是UML中的协作图。
  2) 注意线段绘制时相对坐标的表示,例如代码中的“++(0.6, 0)”,坐标前面的两个加号表示其是前面一个点的相对坐标,如果没有这两个加号,就是整个图形的绝对坐标。绘制这样的图形还是相对坐标更适合。
  3) 注意在命令underline{}里面不能包含\,所以代码中多行名称是分成两段来写的。
  4) 连线上的这些箭头、信息,最好是使用“... = of ...”这样的位置表示方法。使用绝对坐标也可以,但是在用到其他地方时不方便。
  5) 以上在绘制箭头时的方法实际上有些繁琐,尤其是在调整位置时要反复尝试,以后有更简练的方法时再修改。
  6) 注意, ode与draw语句的最后要加分号

以上是关于在LaTeX中使用tikz宏包及其扩展包共同绘制UML图之备忘二的主要内容,如果未能解决你的问题,请参考以下文章

LaTeX宏包TikZ-UML使用备忘一

利用TikZ 宏包在 LaTeX 中绘制流程图

LaTeX绘制UML图形宏包开发过程记录001

LaTeX中的TikZ宏包绘图简单示例

LaTeX绘制UML图形宏包开发过程记录002

TeX系列: tikz-3dplot绘图宏包