码迷,mamicode.com
首页 > 其他好文 > 详细

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

时间:2018-12-30 22:01:49      阅读:248      评论:0      收藏:0      [点我收藏+]

标签:扩展   ast   water   nsa   images   博客   ntc   asi   51cto   

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

% 51CTO 陆巍的博客
\begin{center}
    \begin{tikzpicture}
      \node(PaydayTransaction)[basic_class]{\textbf{\underline{Payday}\\ \underline{Transaction}}};
      \node(Employee)[right = of PaydayTransaction, xshift = 1cm, basic_class, text height = 0.5cm, text depth = 0.2cm]{\textbf{\underline{Employee}}};
      \node(PaymentClassification)[below = of Employee, yshift = -1.5cm, basic_class]{\textbf{\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) 注意,\node与\draw语句的最后要加分号

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

标签:扩展   ast   water   nsa   images   博客   ntc   asi   51cto   

原文地址:http://blog.51cto.com/14013986/2337240

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!