[tikz] Pfeil mit Schatten

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] Pfeil mit Schatten

von esdd » Mi 5. Jun 2013, 20:57

Macht das mit dem Schatten überhaupt Sinn? Da kleben ohnehin schon so viele Sachen eng beieinander.
...
\tikzset{ 
     table/.style={remember picture,baseline,every node/.style={anchor=base,inner sep=0pt}},
     schatten/.style={general shadow={shadow xshift=1.5\pgflinewidth,shadow yshift=-0.5\pgflinewidth,draw=red!50,opacity=0.5,#1}}
}
...
\begin{tikzpicture}[remember picture,overlay] 
  \draw[->,schatten] (nA.center) 
  -- node [sloped,above,draw,circle,fill=blue,inner sep=0.2mm,
           schatten={fill=black!50}] {\tiny x} 
  (nB.center); 
\end{tikzpicture} 
...
Gruß
Elke

von MoonKid » Mi 5. Jun 2013, 16:40

Ja, so funktioniert das. Prima.

Nun ist es ja (meist) sinnvoll allen Objekten im Bild auch den gleichen Schatten zu geben. Das habe ich mit dem style versucht, aber funktioniert nicht.

Im folgenden Code habe ich den shadow des Pfeils und des Circles auskommentiert. Beides ist gleich, bis auf den Unterschied generel/drop shadow.

Das ganze hab ich einen style versucht zu packen. Der Style wirkt sich aber nur auf den Circle auf. Der Pfeil bleibt völlig schattenlos.
\usepackage{polyglossia}
\setdefaultlanguage[spelling=new]{german}

\usepackage{tikz}
\usetikzlibrary{shadows}
\tikzset{
    table/.style={remember picture,baseline,every node/.style={anchor=base,inner sep=0pt}}
}

\begin{document}
    % Tabelle mit zwei TikZ-Knoten
    \begin{tabular} {c | c}
        \tikz[table] \node (nA) {a};&
        \tikz[table] \node (nB) {b};
    \end{tabular}

    \begin{tikzpicture}[remember picture,
                        overlay,
                        every shadow/.style={
                            shadow xshift=1.5\pgflinewidth,
                            shadow yshift=-0.5\pgflinewidth,
                            draw=red!50,
                            opacity=0.5}
                        ]
        % Knoten mit Pfeil verbinden
            \draw[->,general shadow%={shadow xshift=1.5\pgflinewidth,shadow yshift=-0.5\pgflinewidth,draw=black!50,opacity=0.5}
            ] (nA.center)
            -- node [sloped,midway,above,
                    draw,
                    circle,
                    fill=blue,
                    inner sep=0.2mm,
                    drop shadow%={shadow xshift=1.5\pgflinewidth,shadow yshift=-0.5\pgflinewidth,draw=black!50,opacity=0.5}
                    ] {\tiny x}
            (nB.center); 
    \end{tikzpicture}

\end{document}

von esdd » Mi 5. Jun 2013, 12:47

drop shadow hat für dich ungeeignete Standardeinstellungen (fill und nicht draw, Entfernung des Schattens mit 0.5ex viel zu groß). Du kannst dir den Schatten selbst definieren:
\draw[->,general shadow={shadow xshift=0.2\pgflinewidth,shadow yshift=-0.7\pgflinewidth,draw=black!30}] (nA.center) -- (nB.center); 
Aber macht das Sinn?

Gruß
Elke

[tikz] Pfeil mit Schatten

von MoonKid » Mi 5. Jun 2013, 11:19

Ich zeichne einen Pfeil zwischen zwei nodes. Ich bekomme den Pfeil aber nicht mit einem Schatten hin. Der Code wirft keine Fehler, aber ein Schatten existiert da auch nicht.
Der Pfeil ist ja kein node, sondern ein Pfad, korrekt?
Hat es damit was zu tun?

In der shadow-lib Doku ist diese Situation an sich nicht behandelt.
\documentclass{scrartcl}

\usepackage{xltxtra}
\defaultfontfeatures{Mapping=tex-text}

% Sprache
\usepackage{polyglossia}
\setdefaultlanguage[spelling=new]{german}

\usepackage{tikz}
\usetikzlibrary{shadows}
\tikzset{
    table/.style={remember picture,baseline,every node/.style={anchor=base,inner sep=0pt}}
}

\begin{document}
    % Tabelle mit zwei TikZ-Knoten
    \begin{tabular} {c | c}
        \tikz[table] \node (nA) {a};&
        \tikz[table] \node (nB) {b};
    \end{tabular}

    % Knoten mit Pfeil verbinden
    \begin{tikzpicture}[remember picture,overlay]
        \draw[->,drop shadow] (nA.center) -- (nB.center);
    \end{tikzpicture}

\end{document}

Nach oben