von Stefan Kottwitz » So 17. Mai 2015, 11:55
Übrigens ist es nicht mehr empfohlen, \tikzstyle zu verwenden. Stattdessen sollte man Stile lokal setzen in eckigen Klammern an TikZ-Umgebungen oder Scopes, oder man verwendet \tikzset dafür. Bei Deinem Beispiel wäre das etwa so umgeschrieben:
\tikzset{
block1/.style = {rectangle, draw, fill=cyan,
text width=9em, text centered, rounded corners, minimum height=4em},
block2/.style = {rectangle, draw, fill=green,
text width=9em, text centered, rounded corners, minimum height=4em},
block3/.style = {rectangle, draw, fill=blue,
text width=9em, text centered, rounded corners, minimum height=4em},
line/.style = {draw, -latex'},
}
Man kann Stile auch verknüpfen, das macht es übersichtlicher, und das Verändern einfacher, man braucht nur an einer Stelle etwas anzupassen, und die Stile, die erben, passen sich mit an - nicht etwa jeden Block einzeln analog ändern zu müssen:
\tikzset{
block/.style = {rectangle, draw, text width=9em, text centered,
rounded corners, minimum height=4em},
block1/.style = {block, fill=cyan},
block2/.style = {block, fill=green},
block3/.style = {block, fill=blue},
line/.style = {draw, -latex'},
}
Definitionen anderer bzw. eigener solcher Objekte habe ich übrigens schon in unserem Partnerforum TeXwelt.de gesehen - TikZ ist dort das vielleicht beliebteste Thema, jedenfalls mit den meisten Fragen und Antworten. Ich tippe mal drauf, man könnte einen shape definieren, es aber noch einfacher mit
pic machen.
Stefan
Übrigens ist es nicht mehr empfohlen, \tikzstyle zu verwenden. Stattdessen sollte man Stile lokal setzen in eckigen Klammern an TikZ-Umgebungen oder Scopes, oder man verwendet \tikzset dafür. Bei Deinem Beispiel wäre das etwa so umgeschrieben:
[code]\tikzset{
block1/.style = {rectangle, draw, fill=cyan,
text width=9em, text centered, rounded corners, minimum height=4em},
block2/.style = {rectangle, draw, fill=green,
text width=9em, text centered, rounded corners, minimum height=4em},
block3/.style = {rectangle, draw, fill=blue,
text width=9em, text centered, rounded corners, minimum height=4em},
line/.style = {draw, -latex'},
}[/code]
Man kann Stile auch verknüpfen, das macht es übersichtlicher, und das Verändern einfacher, man braucht nur an einer Stelle etwas anzupassen, und die Stile, die erben, passen sich mit an - nicht etwa jeden Block einzeln analog ändern zu müssen:
[code]\tikzset{
block/.style = {rectangle, draw, text width=9em, text centered,
rounded corners, minimum height=4em},
block1/.style = {block, fill=cyan},
block2/.style = {block, fill=green},
block3/.style = {block, fill=blue},
line/.style = {draw, -latex'},
}[/code]
Definitionen anderer bzw. eigener solcher Objekte habe ich übrigens schon in unserem Partnerforum TeXwelt.de gesehen - TikZ ist dort das vielleicht beliebteste Thema, jedenfalls mit den meisten Fragen und Antworten. Ich tippe mal drauf, man könnte einen shape definieren, es aber noch einfacher mit [i]pic[/i] machen.
Stefan