Tikz-uml crea una relación de anidamiento

Tikz-uml crea una relación de anidamiento

estoy usandotikz-uml, pero parece que no existe una relación de anidamiento UML. No soy muy bueno con tikz podrían ayudarme como puedo implementarlo. Puedes ver cómo debería verse.aquí al final bajo el título "Nidos".

Por ejemplo, así es como se implementan las agregaciones.

\tikzstyle{tikzuml aggregation style}=[color=\tikzumldrawcolor, open diamond-]%
\newcommand{\umlaggreg}[3][]{\umlrelation[style={tikzuml aggregation style}, #1]{#2}{#3}}%

Respuesta1

Tuve el mismo problema tikz-umly utilicé el siguiente enfoque. La opción tikzset fue tomada de esto.respuesta.

\tikzset{cross/.style={cross out, draw=black,
         minimum size=2*(#1-\pgflinewidth), inner sep=0pt, outer sep=0pt},
         %default radius will be 1pt. 
         cross/.default={1pt}}

\begin{tikzpicture}    
  \begin{umlpackage}{Package}
    \umlclass{Class}
    {
    }
    {
      + <<Creator>> Class()
    }        

    \umlclass[y=-3]{InnerClass}
    {
    }
    {
      + <<Creator>> InnerClass()
    }

    \node[circle, scale=0.5, minimum size =2pt,
          draw] (Nested) at (0, -0.7) {};
    \draw (0, -0.7) node[cross=2pt,rotate=45]{};
    \draw (InnerClass.north) -- (Nested.south);
  \end{umlpackage}
\end{tikzpicture}  

Esto produce el siguiente diagrama:

clase anidada

Respuesta2

Pronto haré una nueva versión de tikz-uml y agregaré esta nueva relación. se llamará\umlnesting

información relacionada