tikz - Angepasstes fit um nodes

Antwort erstellen


Diese Frage dient dazu, das automatisierte Versenden von Formularen durch Spam-Bots zu verhindern.
Smilies
:D :) :( :o :shock: :? 8) :lol: :-x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen:

BBCode ist eingeschaltet
[img] ist eingeschaltet
[flash] ist ausgeschaltet
[url] ist eingeschaltet
Smilies sind eingeschaltet

Die letzten Beiträge des Themas

Ich habe die Datenschutzerklärung gelesen und bin damit einverstanden.

   

Wenn du eine Datei oder mehrere Dateien anhängen möchtest, gib die Details unten ein.

Ansicht erweitern Die letzten Beiträge des Themas: tikz - Angepasstes fit um nodes

von Bartman » Do 13. Sep 2018, 14:47

Das Beispiel wurde von mir nur etwas zusammengefasst:
\documentclass[tikz, border=5pt]{standalone}

\usetikzlibrary{positioning, fit}

\begin{document}
\begin{tikzpicture}
\begin{scope}[nodes=draw]
\node              (1) {1};
\node [right=of 1] (2) {2};
\node [right=of 2] (3) {3};
\node [below=of 1] (4) {4};
\node [right=of 4] (5) {5};
\node [right=of 5] (6) {6};
\end{scope}

\begin{scope}[nodes={inner sep=5mm}]
\node [fit=(4)(1)] (Fit1) {};
\node [fit=(4)(5)] (Fit2) {};
\draw [blue, ultra thick] 
	(Fit1.north west) -- (Fit1.north east) |- 
	(Fit2.north east) |- (Fit1.south west) -- cycle
;
\end{scope}
\end{tikzpicture}
\end{document}

von Phil100%Vol » Do 13. Sep 2018, 08:40

Hi,

danke für den Denkanstoß :!:

Ist auf jeden Fall dynamischer!
Ich würde den Beitrag in den Status "mit Vorschlag" setzen, falls es doch noch Ideen/ Anregungen gibt.

Gruß

von markusv » Do 13. Sep 2018, 07:53

Moin.

Das Einzige, was mir gerade einfällt, ist 2 fits zu gestalten und per \draw dann möglichst dynamisch zu zeichnen.

Mein Ansatz:
\documentclass{article}
   
\usepackage[ngerman]{babel}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{lmodern}

\usepackage{tikz}
\usetikzlibrary{
   backgrounds,   
   positioning,   
   fit,         
}

\begin{document}

\begin{tikzpicture}
\node[draw=black](1){1};
\node[draw=black,right=of 1](2){2};
\node[draw=black,right=of 2](3){3};
\node[draw=black,below=of 1](4){4};
\node[draw=black,right=of 4](5){5};
\node[draw=black,right=of 5](6){6};

\begin{scope}[on background layer]
   \node[inner sep=0.5cm,fit=(4)(1)](Fit1){};
   \node[inner sep=0.5cm,fit=(4)(5)](Fit2){};
   \draw[blue,ultra thick] (Fit1.north west) -- (Fit1.north east) |- (Fit2.north east) |- (Fit1.south west) -- cycle;
\end{scope}

\end{tikzpicture}
\end{document}

tikz - Angepasstes fit um nodes

von Phil100%Vol » Do 13. Sep 2018, 06:53

Hallo,

ich hoffe der Titel ist halbwegs verständlich, denn mir ist nichts passendes eingefallen. Daher weis ich auch nicht so recht wonach ich suchen soll bzgl. meines Problems:

Ich habe in einer tikzpicture-Umgebung mehrere Nodes, die ich grafisch zusammenfassen möchte. Bisher mache ich das immer mit fit. Das Problem ist nun, dass immer ein viereckiger Rahmen erzeugt wird.
\documentclass{article}
	
\usepackage[ngerman]{babel}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{lmodern}

\usepackage{tikz}
\usetikzlibrary{
	backgrounds,	
	positioning,	
	fit,			
}

\begin{document}

\begin{tikzpicture}
\node[draw=black](1){1};
\node[draw=black,right=of 1](2){2};
\node[draw=black,right=of 2](3){3};
\node[draw=black,below=of 1](4){4};
\node[draw=black,right=of 4](5){5};
\node[draw=black,right=of 5](6){6};

\begin{scope}[on background layer]
	\node[rectangle,draw=blue,inner sep=0.5cm,fit=(1)(4)(5)](Fit1){};
\end{scope}

\end{tikzpicture}

\end{document}
Der blaue Rahmen soll nicht die -2- umfassen, sondern lediglich 1,4 & 5.
Gerne möchte ich einen selbst gezeichneten Rahmen mit \draw von allen Linien vermeiden, damit es dynamisch bleibt (falls ich z.B. die nodes verschiebe).

Gibt es hierfür eine passende Lösung in der Art von "fit" ?

Danke und Gruß

Phil
Dateianhänge
So soll es mal aussehen
So soll es mal aussehen
Ziel fit.png (2.58 KiB) 2622 mal betrachtet

Nach oben