viertel
Senior Dabei seit: 04.03.2003 Mitteilungen: 27752
Herkunft: Hessen
Themenstart: 2021-01-28
\(\begingroup\)\(\newcommand\d{\mathop{}\!\mathrm{d}}\)
Gibt es eine Maßeinheit, die nicht der Skalierung mit \begin{tikzpicture}[scale=1.0] unterworfen ist? 1mm, 15pt etc. werden mit \begin{tikzpicture}[scale=0.4] skaliert, was auch völlig ok ist. Aber:
Wie an den beiden Bildern zu sehen sind die Maßpfeile im unteren Bild zu dicht am Dreieck. Liegt daran, daß die Beschriftung (Label) nicht skaliert wird, was auch ok ist.
Aber dann brauche ich eben eine Maßeinheit für den Abstand der Maßpfeile von $A-B$ nach unten bzw. $C$ nach oben, so daß die Maßpfeile unter-/oberhalb der Ecklabels bleiben, wenn skaliert wird.
Es wäre auch schön – und damit vielleicht gleich mit zu erschlagen – wenn die Kreismarkierung der Ecken ebenfalls unabhängig von der Skalierung wäre. Also eine konstante Größe hätte.
Die Größe der Pfeilspitzen ist ja z.B. auch bei beiden Bildern gleich.
Was bei extremer Skalierung (z.B. $1.0$ und $0.05$) natürlich alles Unfug wäre, das ist klar. Aber $1.0$ und $0.4$ ist jetzt nicht sooo exotisch.
Wozu?
Verwendung der gleichen Grafik (natürlich aus dem gleichen Code erzeugt) z.B. auf dem Deckblatt (groß) und im Text (klein).
2021-01-28 00:39 - viertel im Themenstart schreibt:
Wozu?
Verwendung der gleichen Grafik (natürlich aus dem gleichen Code erzeugt) z.B. auf dem Deckblatt (groß) und im Text (klein).
Auf einem Deckblatt würde ich mich dann aber schon sehr darüber wundern, wenn die Labels so (verhältnismäßig) klein sind. Sie sollten auf einem Deckblatt meiner Ansicht nach skaliert werden (gutes Beispiel ist dieses Cover). Das finde ich auch bei deinem Beispiel hier bereits grenzwertig. Ich würde die zweite Zeichnung als Grundlage nehmen (entsprechend die Größenangaben ändern) und die erste dann durch Hochskalieren bekommen, wobei das Attribut transform shape (was man auf die gesamte Grafik, oder auf einzelne Scopes oder Elemente anwenden kann) dafür sorgt, dass auch die Labels skaliert werden. Außerdem wäre es ratsam, um Code Duplication (Code Smell) zu vermeiden, eine Funktion zu definieren, die beide Grafiken abdeckt, etwa mit dem Skalierungsfaktor als Variable.
Nachtrag: Mit scopes lässt sich vermutlich auch deine eigentliche Frage beantworten.
viertel
Senior Dabei seit: 04.03.2003 Mitteilungen: 27752
Herkunft: Hessen
Beitrag No.2, vom Themenstarter, eingetragen 2021-01-28
Ok, danke👍
Dann werde ich das Konzept nochmal überdenken und überarbeiten.
Und solche „Tricks“ wie scope muß man natürlich auch erst mal kennenlernen. Und 1300 Seiten Handbuch liest man nicht mal eben schnell durch😁
Wario
Aktiv Dabei seit: 01.05.2020 Mitteilungen: 326
Beitrag No.3, eingetragen 2021-02-23 12:14
\(\begingroup\)\(\newcommand\d{\mathop{}\!\mathrm{d}}\)
Mir ist das zuviel auf einmal; daher weiß ich nicht, ob ich das Problem / die Frage richtig verstehe.
Daher, wie immer, der Tip: möglichst auf Einzelprobleme runterbrechen. Prinzip- oder Minimalbeispiele verwenden, die bereinigt sind und grundsätzlich lauffähig sind. In einem LaTeX-Forum würde man Dir das sofort sagen.
Ich verstehe die Frage so, dass etwas gezeichnet ist, wobei das ganze tikzpicture auch noch skaliert ist "scale=1.456".
Nun soll darin etwas auftauchen, das nicht skaliert ist und absolute Maße hat, z.B. ein Quadrat der Kantenlänge 1cm.
Es könnte eine globale Lösung geben mit dem tikzscale-Paket.
Per Default kenne ich das nur in der Form einer Brute-Force-Nachkorrektur: scale=1/1.456; das lässt sich auf einzelne draws anwenden, bei Umfangreicherem auch auf eine scope-Umgebung.