PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : anpassen des 0°-Position in psTricks



Tyrax
09-04-2008, 19:07
Hallo,

bei psTricks entspricht ein Winkel von 0 Grad der Richtung der positiven x-Achse. Beim Erstellen von Graphiken hätte ich die 0°-Position aber häufig gerne in Richtung der positiven y-Achse, da sich so Symmetrien, dich ich vorzugsweise an der senkrechten ausrichte, besser in den Koordinaten wiederfinden. Gibt es eine Möglichkeit die Standardeinstellung derart zu ändern?

Danke und Grüße, Tyrax

P.S.: Wenn man mal Punkte auf einem Kreis angeordnet hat, könnte man dann durch eine Änderung von \degrees[] leichter zusätzliche Punkte in seinem Kreis unterbringen.

voss
09-04-2008, 21:04
Hallo,

bei psTricks entspricht ein Winkel von 0 Grad der Richtung der positiven x-Achse. Beim Erstellen von Graphiken hätte ich die 0°-Position aber häufig gerne in Richtung der positiven y-Achse, da sich so Symmetrien, dich ich vorzugsweise an der senkrechten ausrichte, besser in den Koordinaten wiederfinden. Gibt es eine Möglichkeit die Standardeinstellung derart zu ändern?

P.S.: Wenn man mal Punkte auf einem Kreis angeordnet hat, könnte man dann durch eine Änderung von \degrees[] leichter zusätzliche Punkte in seinem Kreis unterbringen.

nicht so einfach, aber du kannst die x-Achse ja auch y nennen und das Ganze
am Ende um 90 Grad drehen!

Herbert

localghost
09-04-2008, 21:28
Da könnte man doch vielleicht mit \psset{swapaxes=true} arbeiten.


MfG
Thorsten¹

Tyrax
10-04-2008, 12:29
Hallo Herbert, hallo Thorsten,

danke erstmal für die Vorschläge, ich muss meine Frage aber noch präzisieren. Ich habe weder eine x- noch eine y-Achse, ich wollte nur die Richtungen bezeichnen, die ich meine. Hier ein Beispiel:


\begin{figure}[htb]
\centering
\psset{unit=1cm}
\SpecialCoor
\degrees[100]
\begin{pspicture}[unit=1cm](-2, -2)(2, 2)
\qdisk(1; 25){2pt}
\uput[25](1; 25){$0$}
\qdisk(1; 45){2pt}
\uput[45](1; 45){$1$}
\qdisk(1; 65){2pt}
\uput[65](1; 65){$2$}
\qdisk(1; 85){2pt}
\uput[85](1; 85){$3$}
\qdisk(1; 5){2pt}
\uput[5](1; 5){$4$}
\end{pspicture}
%
%
\caption{}
\label{T2}
\psset{unit=1cm}
\degrees[360]
\end{figure}



Ich habe hier eine Graphen erstellt, der eine ungerade Anzahl von Ecken auf einer Kreislinie enthält. Wenn ich jetzt statt fünf lieber sieben Ecken auf den Kreis legen will, wäre folgende Möglichkeit toll:


...
\degrees[140]
...
\qdisk... %zwei neue Ecken
\qdisk... %


Da aber die Ecke 0 nicht bei 0° liegt, verschieben sich alle Ecken, alles wird schief. Ich will also, dass der 0°-Winkel nicht nach rechts sondern nach oben zeigt.

Falls die Sache zu aufwändig ist, kann ich's natürlich auch umgehen.

Grüße, Tyrax

voss
10-04-2008, 13:48
danke erstmal für die Vorschläge, ich muss meine Frage aber noch präzisieren. Ich habe weder eine x- noch eine y-Achse, ich wollte nur die Richtungen bezeichnen, die ich meine. Hier ein Beispiel:

Ich habe hier eine Graphen erstellt, der eine ungerade Anzahl von Ecken auf einer Kreislinie enthält. Wenn ich jetzt statt fünf lieber sieben Ecken auf den Kreis legen will, wäre folgende Möglichkeit toll:


...
\degrees[140]
...
\qdisk... %zwei neue Ecken
\qdisk... %


Da aber die Ecke 0 nicht bei 0° liegt, verschieben sich alle Ecken, alles wird schief. Ich will also, dass der 0°-Winkel nicht nach rechts sondern nach oben zeigt.

Falls die Sache zu aufwändig ist, kann ich's natürlich auch umgehen.


Alles ist relativ ... :-)
Da Winkel immer modulo Vollkreis genommen werden, kannst du doch
einfach oben anfangen, d.h. Start bei 25 und bei 7 Punkten bei 35. Im Beispiel
habe ich dir mal 5 und 7 übereinander gelegt.

Herbert


\documentclass[12pt,a4paper]{article}
\usepackage{pstricks,multido}
\begin{document}
\SpecialCoor
\degrees[100]
\begin{pspicture}[unit=1cm](-2, -2)(2, 2)
\multido{\iA=25+20,\iB=0+1}{5}{%
\qdisk(1;\iA){2pt}\uput[\iA](1;\iA){\iB}}%
%
% jetzt dasselbe in Rot für 7 Punkte
%
\degrees[140]%
\psset{linecolor=red}%
\multido{\iA=35+20,\iB=0+1}{7}{%
\qdisk(1;\iA){2pt}\uput[\iA](1;\iA){\iB}}
\end{pspicture}

\degrees[140]%
\begin{pspicture}[unit=1cm](-2, -2)(2, 2)
\multido{\iA=35+20,\iB=0+1}{7}{%
\qdisk(1;\iA){2pt}\uput[\iA](1;\iA){\iB}}
\end{pspicture}

\end{document}

Tyrax
10-04-2008, 16:59
Hallo Herbert,

ich hatte bisher noch nicht mit \multido gearbeitet. In meinem Fall war es also etwas aufwändiger, die Graphik anzupassen, da ich jeden \qdisk einzeln ändern musste. Mit \multido brauche ich die Änderung der 0°-Position tatsächlich nicht mehr.

Danke und Grüße, Tyrax