goLaTeX - Mein LaTeX-Forum

Mein LaTeX-Forum


Login  | Registrieren
Forum
      Option
[Erweitert]
  • Diese Seite weiterempfehlen
     


Gehe zu:  
Neues Thema eröffnen Neue Antwort erstellen

Füllen von Flächen in Tikz-Umgebung

 

Patrick1990
Forum-Century
Forum-Century

Beiträge: 190
Anmeldedatum: 18.02.13
Wohnort: Ilmenau
Version: MacTeX-2015
     Beitrag Verfasst am: 05.09.2017, 13:20     Titel: Füllen von Flächen in Tikz-Umgebung
  Antworten mit Zitat      
Hallo, ich würde gern Flächen farbig markieren (siehe Anhang).
Wie kann ich das angehen?

Hier das Minimalbeispiel:
Code • Öffne in Overleaf

\documentclass{article}

\usepackage{pgfplots}
\pgfplotsset{compat=1.15}

\begin{document}
\begin{tikzpicture}[scale=1,>=latex]
\begin{axis}[
    trig format plots=rad,
    axis equal,
    ymin=0, ymax = 250,
    xmin=0, xmax=200,
    hide axis
]
\draw[blue, fill=blue] (60.46181719,163.8889268) circle [blue, radius=1];
\addplot [domain=0 : 0.125*pi*0.9, samples=200, black] ({sin(x)*(179-0.8*(1/(cos(4*x))-1))}, {cos(x)*(179-0.8*(1/(cos(4*x))-1))});
%Tangente
\addplot[black, domain=50:80] {163.889 - 1.52393*(-60.4618 + x)};
%Orthogonale
\addplot[black, domain=0:90] {163.889 - 0.656199*(60.4618 - x)};
%Gerade 22.5°
\addplot[black, domain=0:80] {tan(pi/2-0.125*pi)*x};
\addplot [domain=0:2*pi, samples=50, red] ({70.6558+12.1928*cos(x)}, {170.578+12.1928*sin(x)});
\addplot [domain=1.18*pi:1.38*pi, samples=50, green] ({70.6558+12.1928*cos(x)}, {170.578+12.1928*sin(x)});
\draw (0,0) -- (0,179);
\draw (0,0) -- (60.46181719,163.8889268);
\draw[->] (30,100) arc (80:30:35);
\end{axis}
\end{tikzpicture}
\end{document}


Bildschirmfoto 2017-09-05 um 14.15.26.png
 Beschreibung:

Download
 Dateiname:  Bildschirmfoto 2017-09-05 um 14.15.26.png
 Dateigröße:  113.46 KB
 Heruntergeladen:  30 mal
Private Nachricht senden Benutzer-Profile anzeigen

Stefan Kottwitz
Admin
Admin


Beiträge: 1934
Anmeldedatum: 07.07.08
Wohnort: Hamburg
Version: TeX Live 2016
     Beitrag Verfasst am: 06.09.2017, 21:11     Titel:
  Antworten mit Zitat      
Hallo,

Du kannst die fillbetween-library von pgfplots verwenden:

Code • Öffne in Overleaf
\documentclass[border=20pt]{standalone}
\usepackage{pgfplots}
\pgfplotsset{compat=newest}
\usepgfplotslibrary{fillbetween}
\begin{document}
\begin{tikzpicture}[scale=1,>=latex]
\begin{axis}[
    trig format plots=rad,
    axis equal,
    ymin=0, ymax = 250,
    xmin=0, xmax=200,
    hide axis
]
\draw[blue, fill=blue] (60.46181719,163.8889268) circle [blue, radius=1];
\addplot [domain=0 : 0.125*pi*0.9, samples=200, black, name path = top]
  ({sin(x)*(179-0.8*(1/(cos(4*x))-1))}, {cos(x)*(179-0.8*(1/(cos(4*x))-1))});
%Tangente
\addplot[black, domain=50:80] {163.889 - 1.52393*(-60.4618 + x)};
%Orthogonale
\addplot[black, domain=0:90] {163.889 - 0.656199*(60.4618 - x)};
%Gerade 22.5°
\addplot[black, domain=0:80] {tan(pi/2-0.125*pi)*x};
\addplot [domain=0:2*pi, samples=50, red] ({70.6558+12.1928*cos(x)},
  {170.578+12.1928*sin(x)});
\addplot [domain=1.18*pi:1.38*pi, samples=50, green] ({70.6558+12.1928*cos(x)},
  {170.578+12.1928*sin(x)});
\path[name path = left, draw] (0,0) -- (0,179);
\path[name path = right, draw] (0,0) -- (60.46181719,163.8889268);
\draw[->] (30,100) arc (80:30:35);
\addplot[gray!30] fill between[of=top and right];
\end{axis}
\end{tikzpicture}
\end{document}




Auch bei Umrandung durch mehrere Kurven geht es, vmtl. mit zwei Schritten für Differenzbildung mit Füllen, wie Christian hier schrieb. Für Rückfragen bin ich evtl. nicht online, muss ein paar Tage reisen ab heute Abend.

Stefan

flaeche-fuellen.png
 Beschreibung:

Download
 Dateiname:  flaeche-fuellen.png
 Dateigröße:  8.62 KB
 Heruntergeladen:  17 mal
Private Nachricht senden Benutzer-Profile anzeigen

Patrick1990
Forum-Century
Forum-Century

Beiträge: 190
Anmeldedatum: 18.02.13
Wohnort: Ilmenau
Version: MacTeX-2015
     Beitrag Verfasst am: 07.09.2017, 13:56     Titel:
  Antworten mit Zitat      
Vielen Dank, konnte alles lösen.
Private Nachricht senden Benutzer-Profile anzeigen

Neues Thema eröffnen Neue Antwort erstellen



Options and Permissions
Beiträge der letzten Zeit anzeigen:

Du kannst Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.
Du kannst Dateien in diesem Forum nicht posten
Du kannst Dateien in diesem Forum herunterladen
.

goLaTeX ist Teil der goForen
goForen.de goMATLAB.de goLaTeX.de goPCB.de


  Impressum | FAQ | goLaTeX RSS Button RSS-Feed

Copyright © 2008 - 2017 goLaTeX.de