defFunction in PSTricks

Antwort erstellen


Diese Frage dient dazu, das automatisierte Versenden von Formularen durch Spam-Bots zu verhindern.
Smilies
:D :) :( :o :shock: :? 8) :lol: :-x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen:

BBCode ist eingeschaltet
[img] ist eingeschaltet
[flash] ist ausgeschaltet
[url] ist eingeschaltet
Smilies sind eingeschaltet

Die letzten Beiträge des Themas

Ich habe die Datenschutzerklärung gelesen und bin damit einverstanden.

   

Wenn du eine Datei oder mehrere Dateien anhängen möchtest, gib die Details unten ein.

Ansicht erweitern Die letzten Beiträge des Themas: defFunction in PSTricks

Re: defFunction in PSTricks

von CrazyHorse » Mi 20. Apr 2011, 20:23

Zombieoffice hat geschrieben:

Später wird u11 in multido über

\psSolid[object=surfaceparameter, base=0 1 0 1, ... , function=u11(\iA,\iB)]
ich hab erstmal dein Beispiel zusammengestrichen. Was soll denn
\OmegaA und \OmegaB sein? Ein Aufruf mit u11(\iA,\iB) geht nicht!
\documentclass{article}

\usepackage{pst-solides3d}

\makeatletter
\def\psZeichnen{\pst@object{psZeichnen}}
\def\psZeichnen@i(#1,#2,#3){%
  \psSolid[object=surfaceparametertree, 
           base=0 1 0 1, inhue=0.8 0.2, hue=0.8 0.2, 
           function=u1#3#1#2, linewidth=0.01, ngrid=25 25]}
\makeatother

\begin{document}

\begin{pspicture}(0,0)(1,0.16)
\psset{viewpoint=0.1 -0.5 2, Decran=20,algebraic}
\multido{\iA=1+1}{zahl1}{%
  \multido{\iB=1+1}{zahl2}{%
    \defFunction{u11\iA\iB}(s,t){%
       {\OmegaA{\iA}{\iB}{s}{t}}%
       {\OmegaB{\iA}{\iB}{s}{t}}%
       {\Bild{\iA}{\iB}{s}{t}}}
    \psZeichnen{\iA}{\iB}{1}}}
\end{pspicture}

\end{document} 
Herbert

defFunction in PSTricks

von Zombieoffice » Mi 20. Apr 2011, 13:44

Hallo,

bei dem folgenden Problem komme ich nicht weiter:

Bei dem Befehl

\defFunction[algebraic]{u11}(s,t){{s}{t}{f(s,t)}}

brauche ich eine kleine Erweiterung. Meine Funktion u11 hängt noch von zwei Variablen ab. Der Definitiionsbereich von u11 hängt von diesen beiden Variablen ab. Ich brauche also so etwas wie

\defFunction[algebraic]{u11(x,y)}(s,t){{\OmegaA{x}{y}{s}{t}}{\OmegaB{x}{y}{s}{t}}{\Bild{x}{y}{s}{t}}}

Später wird u11 in multido über

\psSolid[object=surfaceparameter, base=0 1 0 1, ... , function=u11(\iA,\iB)]

aufgerufen, wobei \iA und \iB die Laufparameter von multido sind.

So wie es da oben steht, ist es falsch. Wie schreibt man das richtig hin?

Hier ein Auszug aus dem Code:
\documentclass{beamer}
\usetheme{Boadilla}
\usepackage{} %die üblichen
\beamertemplatesolidbackgroundcolor{black!5}

\usepackage{color}
\usepackage{pstricks}
\usepackage{array,calc,pst-plot,pst-tree,pst-grad-pst-coil,pst-text,pst-3d,pst-eps,multido,pst-node,pst-eucl,pst-solides3d,pst-xkey}
\usepackage{pstricks-add}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%

% Hier wurden die makros definiert (Definitionsgebiete, Funktionen, Interfacefunktionen, ...)

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

\makeatletter
 \def\psZeichnen{\pst@object{psZeichnen}}
 \def\psZeichnen@i(\#1,#2,#3){\psSolid[object=surfaceparametertree, base=0 1 0 1, inhue=0.8 0.2, hue=0.8 0.2, function=u1#3#1#2, linewidth=0.01, ngrid=25 25]}
\makeatother

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\begin{document}
 \begin{frame}
   \begin{pspicture}(0,0)(1,0.16)
    \psset[pst-solides3d]{viewpoint=0.1 -0.5 2, Decran=20}
    \multido{\iA=1+1}{zahl1}{%
     \multido{\iB=1+1}{zahl2}{%
       \defFunction[algebraic]{u11(\iA,\iB)}(s,t){%
       {\OmegaA{\iA}{\iB}{s}{t}}%
       {\OmegaB{\iA}{\iB}{s}{t}}%
       {\Bild{\iA}{\iB}{s}{t}}}
       \psZeichnen{\iA}{\iB}{1}
      }%
     }
    \end{pspicture}
 \end{frame}
\end{document}
[\code]

Nach oben