Seite 1 von 1
Linienzug zeichnen ohne Berechnung von Koordinaten
Verfasst: Sa 31. Mai 2014, 10:28
von mf123
Hallo
ist es möglich, mehrere Linien aneinander zu zeichnen, ohne Koordinaten zu berechnen. Wenn ich z.B. eine regelmässiges Fünfeck zeichnen will, muss ich ab dem dritten Punkt rechnen:
\documentclass{article}
\usepackage{pstricks}
\begin{pspicture}(0,0)(10,10)
\psline[linewidth=1pt]{-}(0,0)(5,0)(6.545,4.755)
\end{pspicture}
\end{document}
Einfacher wäre es wenn ich 5 vorwärts, 72° drehen, 5 vorwärts 72° drehen, usw. tippen könnte.
Gibt es sonst noch eine Alternative?
Danke und Gruss
Marcel
Verfasst: Sa 31. Mai 2014, 11:21
von esdd
Hier ist ein Vorschlag mit aktuellem (Version 3.0) TikZ :
\documentclass[margin=5pt,tikz]{standalone}
\usetikzlibrary{shapes.geometric}
\begin{document}
\begin{tikzpicture}
\draw(0,0)--(72:5)--([turn]-72:5)--([turn]-72:5)--([turn]-72:5)--cycle;
\fill[red!50!black!50](2,2)--+(0,1)--([turn]-72:1)--([turn]-72:1)--([turn]-72:1)--cycle;
\end{tikzpicture}
\end{document}
Mit pstricks geht das bestimmt auch, mir fehlt aber die Zeit danach zu suchen.
Gruß
Elke
Verfasst: Sa 7. Jun 2014, 23:43
von mf123
Danke Elke
ich habe über einen Umweg doch noch etwas ziemlich Kompliziertes von Herbert gefunden. Ich staune aber über die einfache Lösung mit TikZ. Hätte ich nicht schon so viel mit PSTricks gearbeitet, würde ich mir überlegen umzusteigen! Hier der Code (von mir leicht abgeändert):
\documentclass{article}
\usepackage{KantiMarcel}
\SpecialCoor
\makeatletter
\def\psStartPunkt(#1){\pst@getcoor{#1}\pst@tempA %Makro psStartPunkt wird definiert
\pstVerb{\pst@tempA
\pst@number\psyunit div /cp.Y exch def
\pst@number\psxunit div /cp.X exch def }}
\def\psVektor{\pst@object{psVektor}}
\def\psVektor@i(#1){%
\pst@killglue%
\pst@getcoor{#1}\pst@tempA%
\begin@SpecialObj%
\rput(! cp.X cp.Y ){\psline[arrowsize=6pt]{-}(0,0)(#1)%
}%
\end@SpecialObj%
\pstVerb{tx@Dict begin \pst@tempA
\pst@number\psyunit div
cp.Y add /cp.Y exch def
\pst@number\psxunit div
cp.X add /cp.X exch def end}
\ignorespaces%
}
\makeatother
\begin{document}
\begin{pspicture}[showgrid](10,10)
\psStartPunkt(1,1)
\psVektor(1,4)\psVektor(4,2)\psVektor[linecolor=red](3;10)\psVektor(4;110)
\end{pspicture}
\end{document}
Marcel
Verfasst: Sa 7. Jun 2014, 23:47
von esdd
Kannst du vielleicht den Link hier mit angeben, falls jemand anders danach sucht?
Gruß
Elke