von Sunny2010 » Do 29. Jul 2010, 22:39
Hallo zusammen,
nachdem ich erfolgreich ein Package gefunden habe, dass es ermöglicht Nassi-Shneiderman-Diagramme zu erstellen, hab ich jetzt ein kleines Problem.
Anbei ein Minibeispiel mit meinem Diagramm:
\documentclass[
fontsize=11pt,
ngerman]{scrbook}
\usepackage[pict2e]{struktex} %Nassi-Shneiderman-Diagramme
\usepackage{eso-pic,graphicx,picinpar}
\usepackage{float}
\usepackage{babel}
\usepackage[T1]{fontenc}
\usepackage[latin1]{inputenc}
\usepackage{amsmath}
\usepackage{fancybox}
\begin{document}
\sProofOn
\begin{figure}[htb]
\centering
\begin{struktogramm}(120,180)
\descriptionwidth=80pt
\assign {Funktion Config\_Data(sRefNo, rngConfigMatrix, sCriteria): Zuordnung zwischen Referenznr und Eigenschaften}
\assign
{
\begin{declaration}[Parameter:]
\description{\pVar{sRefNo}} {\pKey{String}-Parameter}
\description{\pVar{rngConfigMatrix}} {\pKey{Range}-Parameter}
\description{\pVar{sCriteria}} {\pKey{String}-Parameter}
\description{\pVar{iColumns, iRows, i}} {\pKey{Integer}-Parameter}
\end{declaration}
}
\assign
{ Initialisierung:\\
iColumns = Anzahl der Spalten von rngConfigMatrix;\\
iRows = Anzahl der Reihen von rngConfigMatrix
}
\while[6]{for i=1 to iRows}
\ifthenelse[15]{2}{1}{if rngConfigMatrix.Text = sRefNo}{\sTrue}{\sFalse}
\assign[10]{EXIT FOR-Schleife}
\change
\assign[10]{nächste Reihe von rngConfigMatrix}
\ifend
\assign[10]{i=i+1}
\whileend
\ifthenelse[15]{1}{2}{Keine Übereinstimmung gefunden}{\sTrue}{\sFalse}
\ifthenelse[25]{3}{1}{if Criteria = PF}{\sTrue}{\sFalse}
\assign[10]{Return:\\Keine Materialnummer vorhanden}
\change
\assign[14]{\strut}
\ifend
\change
\case{4}{9}{Criteria}{PF}
\assign[19]{return PF}
\switch{Cl}
\assign[19]{return Cl}
\switch{L}
\assign[19]{return L}
\switch{BL}
\assign[19]{return BL}
\switch{BS}
\assign[19]{return BS}
\switch{CHS}
\assign[19]{return CHS}
\switch{BGA}
\assign[19]{return BGA}
\switch{Cu}
\assign[19]{return Cu}
\switch{Else}
\assign[19]{return ND}
\caseend
\ifend
\end{struktogramm}
\caption{Funktion Config\_Data}
\end{figure}
\sProofOff
\end{document}
Nun wird das ganze bei der Case-Unterscheidung sehr eng. Ich hab schon ein paar Sachen ausprobiert: \usepackage{rotating} mit \begin{rotate}{90} Text \end{rotate} und auch \rotatebox{90}{Text}, aber leider tut sich da nix.
Kann mir jemand von Euch helfen?
Danke schonmal,
viele Grüße
Sunny
Hallo zusammen,
nachdem ich erfolgreich ein Package gefunden habe, dass es ermöglicht Nassi-Shneiderman-Diagramme zu erstellen, hab ich jetzt ein kleines Problem.
Anbei ein Minibeispiel mit meinem Diagramm:
[code]
\documentclass[
fontsize=11pt,
ngerman]{scrbook}
\usepackage[pict2e]{struktex} %Nassi-Shneiderman-Diagramme
\usepackage{eso-pic,graphicx,picinpar}
\usepackage{float}
\usepackage{babel}
\usepackage[T1]{fontenc}
\usepackage[latin1]{inputenc}
\usepackage{amsmath}
\usepackage{fancybox}
\begin{document}
\sProofOn
\begin{figure}[htb]
\centering
\begin{struktogramm}(120,180)
\descriptionwidth=80pt
\assign {Funktion Config\_Data(sRefNo, rngConfigMatrix, sCriteria): Zuordnung zwischen Referenznr und Eigenschaften}
\assign
{
\begin{declaration}[Parameter:]
\description{\pVar{sRefNo}} {\pKey{String}-Parameter}
\description{\pVar{rngConfigMatrix}} {\pKey{Range}-Parameter}
\description{\pVar{sCriteria}} {\pKey{String}-Parameter}
\description{\pVar{iColumns, iRows, i}} {\pKey{Integer}-Parameter}
\end{declaration}
}
\assign
{ Initialisierung:\\
iColumns = Anzahl der Spalten von rngConfigMatrix;\\
iRows = Anzahl der Reihen von rngConfigMatrix
}
\while[6]{for i=1 to iRows}
\ifthenelse[15]{2}{1}{if rngConfigMatrix.Text = sRefNo}{\sTrue}{\sFalse}
\assign[10]{EXIT FOR-Schleife}
\change
\assign[10]{nächste Reihe von rngConfigMatrix}
\ifend
\assign[10]{i=i+1}
\whileend
\ifthenelse[15]{1}{2}{Keine Übereinstimmung gefunden}{\sTrue}{\sFalse}
\ifthenelse[25]{3}{1}{if Criteria = PF}{\sTrue}{\sFalse}
\assign[10]{Return:\\Keine Materialnummer vorhanden}
\change
\assign[14]{\strut}
\ifend
\change
\case{4}{9}{Criteria}{PF}
\assign[19]{return PF}
\switch{Cl}
\assign[19]{return Cl}
\switch{L}
\assign[19]{return L}
\switch{BL}
\assign[19]{return BL}
\switch{BS}
\assign[19]{return BS}
\switch{CHS}
\assign[19]{return CHS}
\switch{BGA}
\assign[19]{return BGA}
\switch{Cu}
\assign[19]{return Cu}
\switch{Else}
\assign[19]{return ND}
\caseend
\ifend
\end{struktogramm}
\caption{Funktion Config\_Data}
\end{figure}
\sProofOff
\end{document}[/code]
Nun wird das ganze bei der Case-Unterscheidung sehr eng. Ich hab schon ein paar Sachen ausprobiert: \usepackage{rotating} mit \begin{rotate}{90} Text \end{rotate} und auch \rotatebox{90}{Text}, aber leider tut sich da nix.
Kann mir jemand von Euch helfen?
Danke schonmal,
viele Grüße
Sunny