Hallo, ich habe mich durch ein ähnliches Beispiel inspirieren lassen und möchte nun die Felder 1 bis 3 mit einem bestimmten Inhalt füllen. Nach einigem hin und her probieren, komme ich einfach auf keine gescheite Lösung. Über mögliche Vorschläge oder Tipps freue ich mich sehr. Hier mein Minimalbeispiel:

Open in writeLaTeX
\documentclass[11pt]{scrreprt} 
\usepackage[top=2cm,left=3cm,right=3cm,bottom=4cm]{geometry}            
\usepackage{tikz}
\usetikzlibrary{mindmap,trees}
\usetikzlibrary{matrix}
\usetikzlibrary{decorations.pathreplacing}
\usetikzlibrary{positioning,shadings}

\begin{document}
\begin{tikzpicture}

\def \n {3}
\def \radius {3cm}
\def \margin {8} % margin in angles, depends on the radius

\foreach \s in {1,...,\n}
{
  \node[draw, rectangle] at ({360/\n * (\s - 1)}:\radius) {$\s$};
  \draw[<->, >=latex] ({360/\n * (\s - 1)+\margin}:\radius) 
    arc ({360/\n * (\s - 1)+\margin}:{360/\n * (\s)-\margin}:\radius);
}
\end{tikzpicture}
\end{document}

alt text

gefragt 08 Mai '14, 19:07

sascha's gravatar image

sascha
17171017
Akzeptiert-Rate: 50%

bearbeitet 08 Mai '14, 19:10


Hallo,

Benenne die nodes entsprechend dem Schleifenindex - dann hast Du sie auch als Koordinaten, die Du mit beliebigem Text oder anderem füllen kannst:

alt text

Open in writeLaTeX
\documentclass[11pt]{scrreprt} 
\usepackage[top=2cm,left=3cm,right=3cm,bottom=4cm]{geometry}            
\usepackage{tikz}
\usetikzlibrary{mindmap,trees}
\usetikzlibrary{matrix}
\usetikzlibrary{decorations.pathreplacing}
\usetikzlibrary{positioning,shadings}
\usepackage{amsmath, amssymb}
%===========
\begin{document}
%===========
\begin{tikzpicture}

\def \n {3}
\def \radius {3cm}
\def \margin {8} % margin in angles, depends on the radius

\foreach \s in {1,...,\n}
{
  \node[name=Feld\s] at ({360/\n * (\s - 1)}:\radius) {$$};
  \draw[<->, >=latex] ({360/\n * (\s - 1)+\margin}:\radius) 
    arc ({360/\n * (\s - 1)+\margin}:{360/\n * (\s)-\margin}:\radius);
}

\node[draw, rectangle] at (Feld1) {Text};
\node[draw, rectangle] at (Feld2) {Text};

\end{tikzpicture}
%===========
\end{document}
%===========
Permanenter link

beantwortet 08 Mai '14, 19:35

cis's gravatar image

cis
9.5k95459491
Akzeptiert-Rate: 29%

bearbeitet 08 Mai '14, 22:37

Und ich war die ganze Zeit am ausprobieren die Beschriftung/Namensvergabe hinter die foreach Schleife zu packen. So geht es natürlich auch. Vielen Dank!

(08 Mai '14, 19:43) sascha

Hier ist noch ein alternativer Vorschlag, bei dem die Beschriftung der Noden direkt in der Schleife vorgenommen wird.

Außerdem werden die Verbindungspfeile automatisch an die Größe der Knoten angepasst. Dazu werden mit Hilfe der intersections Bibliothek die Schnittpunkte zwischen den Knoten und dem (nicht gezeichneten) Kreis ermittelt und anschließend miteinander verbunden.

Open in writeLaTeX
\documentclass[tikz,margin=5mm]{standalone} 
\usetikzlibrary{intersections,calc,arrows}

\begin{document}
\begin{tikzpicture}[>=latex']

\def \n {3}
\def \radius {2cm}

\foreach[count=\s] \text in {Text 1,Text 2,langer\\Text}
  \node[draw,align=left,name path=t\s] at ({360/\n * (\s - 1)}:\radius) {\text};

% Ermitteln der Anfangs- und Endpunkte der Pfeile:
\path[name path=k]circle[radius=\radius];
\path[name intersections={of=k and t1,sort by=k,by={i-1,i-6}}]
     [name intersections={of=k and t2,sort by=k,by={i-2,i-3}}]
     [name intersections={of=k and t3,sort by=k,by={i-4,i-5}}];
% Zeichnen der Pfeile:
\foreach \i[evaluate={\j=int(\i+1)}] in {1,3,5}
  \draw[<->, shorten >=1pt, shorten <=1pt]
    let \p0=(i-\i), \p1=(i-\j) in
    \pgfextra{%
      \pgfmathsetmacro\startwinkel{atan2(\y0,\x0)}%
      \pgfmathsetmacro\endwinkel{atan2(\y1,\x1)}%
      \pgfmathsetmacro\endwinkel{\endwinkel>\startwinkel?\endwinkel:{\endwinkel+360}}%
    }
    (i-\i)arc[start angle=\startwinkel,end angle=\endwinkel,radius=\radius];

\end{tikzpicture}
\end{document}

alt text

Permanenter link

beantwortet 09 Mai '14, 00:36

esdd's gravatar image

esdd
17.8k284257
Akzeptiert-Rate: 62%

Schöner Vorschlag! Vielen Dank!

(09 Mai '14, 13:05) sascha
Deine Antwort
Vorschau umschalten

Folgen dieser Frage

Per E-Mail:

Wenn sie sich anmelden, kommen Sie für alle Updates hier in Frage

Per RSS:

Antworten

Antworten und Kommentare

Markdown-Grundlagen

  • *kursiv* oder _kursiv_
  • **Fett** oder __Fett__
  • Link:[Text](http://url.com/ "Titel")
  • Bild?![alt Text](/path/img.jpg "Titel")
  • nummerierte Liste: 1. Foo 2. Bar
  • zum Hinzufügen ein Zeilenumbruchs fügen Sie einfach zwei Leerzeichen an die Stelle an der die neue Linie sein soll.
  • grundlegende HTML-Tags werden ebenfalls unterstützt

Frage-Themen:

×731
×50
×7

gestellte Frage: 08 Mai '14, 19:07

Frage wurde gesehen: 10,977 Mal

zuletzt geändert: 09 Mai '14, 13:05