Anzeige:
Ergebnis 1 bis 3 von 3

Thema: Rechnen mit \pgfmathparse: Ergebnis ohne Dezimalstelle

  1. #1
    Registrierter Benutzer
    Registriert seit
    07.04.2005
    Beiträge
    112

    Rechnen mit \pgfmathparse: Ergebnis ohne Dezimalstelle

    Hallo,

    ich habe in Anlehnung an das Kreisdiagramm-Beispiel aus dem TikZ-Handbuch Seite 69 ein "Tacho-Diagramm" programmiert. Ich rechne für die rote Zahl im Beispiel den Winkel aus, an dem diese Zahl stehen soll. Als Ergebnis erhalte ich eine Zahl mit Dezimalstelle, was nicht schön ist. Kann man das irgendwie so umrechnen, dass eine natürliche Zahl herauskommt?

    Berechnung des Winkels in Zeile 3:
    Code:
    \newcommand{\tacho}[3]{
    \begin{tikzpicture}
      \pgfmathparse{180-180*(#1/100)}\let\Winkel\pgfmathresult
      \pgfmathparse{100-#1}\let\Gegenwert\pgfmathresult
    
      \begin{scope}[line width=4mm]
      	\draw[#3] (0:1.8cm)       arc (0:\Winkel:1.8cm);
      	\draw[#2] (\Winkel:1.8cm) arc (\Winkel:180:1.8cm);
    
        \foreach \angle in {9,18,...,171} {
          \draw[black!15,thin] (\angle:16mm) -- (\angle:20mm);
        }
        
      \end{scope}
      \draw[black!30,thick] (0:1.6cm) -- (0:2.0cm) arc (0:180:2.0cm)
      					 	-- (-1.6cm,0) arc (180:0:1.6cm) -- cycle;
    
      \ifthenelse{#1 > 50 \or #1 = 50}{%
      \draw (0,0) node[good,above,inner sep=0mm,text depth=0mm] {#1\,\%};
      \pgfmathparse{\Winkel/2}\let\Halbwinkel\pgfmathresult
      \draw (\Halbwinkel:2.2cm) node[bad,above right,inner sep=0mm] {\Gegenwert\,\%};
      }{%
      \draw (0,0) node[bad,above,inner sep=0mm,text depth=0mm] {#1\,\%};
      \pgfmathparse{(180+\Winkel)/2}\let\Halbwinkel\pgfmathresult
      \draw (\Halbwinkel:2.2cm) node[good,above left,inner sep=0mm] {\Gegenwert\,\%};
      }
    \end{tikzpicture}
    }
    Aufruf mit
    Code:
    \tacho{67}{green}{red}

  2. #2
    Registrierter Benutzer
    Registriert seit
    21.08.2009
    Beiträge
    496
    Hallo,

    ersetze die Zeile, in der Du \Gegenwert definierst durch:

    Code:
    \pgfmathtruncatemacro\Gegenwert{100-#1}

  3. #3
    Registrierter Benutzer
    Registriert seit
    07.04.2005
    Beiträge
    112
    Super, danke!

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •