Eine Abbildung soll eine Skala zeigen, die teilweise durch einen Rahmen verdeckt wird, der wiederum durch ein Fenster den Blick auf die Skala freigibt. Gedacht ist dabei an einen Messschieber (Schieblehre), dessen weitere Gestaltung hier nicht relevant ist.

Meine Frage dazu ist, wie ich die Skala teilweise verdecken kann, sodass sie nur innerhalb des Fensters sowie außerhalb des Rahmens sichtbar ist.

Grundlegender Code (Skala wird nicht verdeckt):

Code, hier editierbar zum Übersetzen:
\documentclass[border=10pt]{standalone}
\usepackage{tikz}
\begin{document}
\begin{tikzpicture}
% Skala (hier in vereinfachter Form)
\foreach \i in {0,...,50} {\draw (\i*1mm,-2mm)--(\i*1mm,3mm);}
% Rahmen, der über der Skala liegt
\draw (6mm,-5mm) rectangle (34mm,15mm);
% Fenster
\draw[rounded corners=5mm] (10mm,0) rectangle (30mm,10mm);
\end{tikzpicture}
\end{document}
הההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההה
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Meine Lösungsidee wäre es, die Fläche zwischen der Rahmenlinie und dem Fenster weiß einzufärben, doch wird dadurch auch das gesamte Fenster verdeckt.

Code, hier editierbar zum Übersetzen:
\documentclass[border=10pt]{standalone}
\usepackage{pgfplots}
\pgfplotsset{compat=newest}
\usetikzlibrary{pgfplots.fillbetween}
\begin{document}
\begin{tikzpicture}
% Skala (hier in vereinfachter Form)
\foreach \i in {0,...,50} {\draw (\i*1mm,-2mm)--(\i*1mm,3mm);}
% Rahmen, der über der Skala liegt
\draw[name path=rahmen] (6mm,-5mm) rectangle (34mm,15mm);
% Fenster
\draw[rounded corners=5mm,name path=fenster] (10mm,0) rectangle (30mm,10mm);
\tikzfillbetween[of=rahmen and fenster] {white};
\end{tikzpicture}
\end{document}
הההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההה
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

gefragt 07 Sep '21, 20:59

Cletus's gravatar image

Cletus
1.6k75866
Akzeptiert-Rate: 75%

bearbeitet 07 Sep '21, 21:01


Dafür reicht TikZ. Du kannst entweder die even odd rule oder die voreingestellte nonzero rule nutzen.

Beispiel mit even odd rule:

Code, hier editierbar zum Übersetzen:
\documentclass[border=10pt]{standalone}
\usepackage{tikz}
\begin{document}
\begin{tikzpicture}
% Skala (hier in vereinfachter Form)
\foreach \i in {0,...,50} {\draw (\i*1mm,-2mm)--(\i*1mm,3mm);}
% Rahmen mit Fenster
\draw[fill=white,even odd rule]
% Rahmen, der über der Skala liegt
(6mm,-5mm) rectangle (34mm,15mm)
% Fenster
{[rounded corners=5mm] (10mm,0) rectangle (30mm,10mm)}
;
\end{tikzpicture}
\end{document}
הההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההה
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Beispiel mit voreingestellter nonzero rule:

Code, hier editierbar zum Übersetzen:
\documentclass[border=10pt]{standalone}
\usepackage{tikz}
\begin{document}
\begin{tikzpicture}
% Skala (hier in vereinfachter Form)
\foreach \i in {0,...,50} {\draw (\i*1mm,-2mm)--(\i*1mm,3mm);}
% Rahmen mit Fenster
\draw[fill=white]
% Rahmen, der über der Skala liegt
(6mm,-5mm) -- ++(28mm,0mm) -- ++(0mm,20mm) -- ++(-28mm,0mm) -- cycle
% Fenster
{[rounded corners=5mm] (30mm,10mm)-- ++(0mm,-10mm) -- ++(-20mm,0mm) -- +(0mm,10mm) -- cycle}
;
\end{tikzpicture}
\end{document}
הההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההה
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
Permanenter link

beantwortet 08 Sep '21, 09:18

esdd's gravatar image

esdd
17.8k294257
Akzeptiert-Rate: 62%

Deine Antwort
[Vorschau ausblenden]

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

Frage-Themen:

×731
×4

gestellte Frage: 07 Sep '21, 20:59

Frage wurde gesehen: 3,071 Mal

zuletzt geändert: 08 Sep '21, 09:18

Willkommen, erstes Mal hier? Schau mal unter FAQ!

×