diff options
author | dos-reis <gdr@axiomatics.org> | 2007-08-14 05:14:52 +0000 |
---|---|---|
committer | dos-reis <gdr@axiomatics.org> | 2007-08-14 05:14:52 +0000 |
commit | ab8cc85adde879fb963c94d15675783f2cf4b183 (patch) | |
tree | c202482327f474583b750b2c45dedfc4e4312b1d /src/algebra/viewDef.spad.pamphlet | |
download | open-axiom-ab8cc85adde879fb963c94d15675783f2cf4b183.tar.gz |
Initial population.
Diffstat (limited to 'src/algebra/viewDef.spad.pamphlet')
-rw-r--r-- | src/algebra/viewDef.spad.pamphlet | 264 |
1 files changed, 264 insertions, 0 deletions
diff --git a/src/algebra/viewDef.spad.pamphlet b/src/algebra/viewDef.spad.pamphlet new file mode 100644 index 00000000..645a9c79 --- /dev/null +++ b/src/algebra/viewDef.spad.pamphlet @@ -0,0 +1,264 @@ +\documentclass{article} +\usepackage{axiom} +\begin{document} +\title{\$SPAD/src/algebra viewDef.spad} +\author{James Wen} +\maketitle +\begin{abstract} +\end{abstract} +\eject +\tableofcontents +\eject +\section{package VIEWDEF ViewDefaultsPackage} +<<package VIEWDEF ViewDefaultsPackage>>= +)abbrev package VIEWDEF ViewDefaultsPackage +++ Author: Jim Wen +++ Date Created: 15 January 1990 +++ Date Last Updated: +++ Basic Operations: pointColorDefault, lineColorDefault, axesColorDefault, +++ unitsColorDefault, pointSizeDefault, viewPosDefault, viewSizeDefault, +++ viewDefaults, viewWriteDefault, viewWriteAvailable, var1StepsDefault, +++ var2StepsDefault, tubePointsDefault, tubeRadiusDefault +++ Related Constructors: +++ Also See: +++ AMS Classifications: +++ Keywords: +++ References: +++ Description: ViewportDefaultsPackage describes default and user definable +++ values for graphics + +ViewDefaultsPackage():Exports == Implementation where + I ==> Integer + C ==> Color + PAL ==> Palette + L ==> List + S ==> String + E ==> Expression + PI ==> PositiveInteger + NNI ==> NonNegativeInteger + SF ==> DoubleFloat + B ==> Boolean + + writeAvailable ==> (["PIXMAP","BITMAP","POSTSCRIPT","IMAGE"]::L S) + -- need not worry about case of letters + + Exports ==> with + pointColorDefault : () -> PAL + ++ pointColorDefault() returns the default color of points in a 2D + ++ viewport. + pointColorDefault : PAL -> PAL + ++ pointColorDefault(p) sets the default color of points in a 2D viewport + ++ to the palette p. + lineColorDefault : () -> PAL + ++ lineColorDefault() returns the default color of lines connecting + ++ points in a 2D viewport. + lineColorDefault : PAL -> PAL + ++ lineColorDefault(p) sets the default color of lines connecting points + ++ in a 2D viewport to the palette p. + axesColorDefault : () -> PAL + ++ axesColorDefault() returns the default color of the axes in a + ++ 2D viewport. + axesColorDefault : PAL -> PAL + ++ axesColorDefault(p) sets the default color of the axes in a 2D + ++ viewport to the palette p. + unitsColorDefault : () -> PAL + ++ unitsColorDefault() returns the default color of the unit ticks in + ++ a 2D viewport. + unitsColorDefault : PAL -> PAL + ++ unitsColorDefault(p) sets the default color of the unit ticks in + ++ a 2D viewport to the palette p. + pointSizeDefault : () -> PI + ++ pointSizeDefault() returns the default size of the points in + ++ a 2D viewport. + pointSizeDefault : PI -> PI + ++ pointSizeDefault(i) sets the default size of the points in a 2D + ++ viewport to i. + viewPosDefault : () -> L NNI + ++ viewPosDefault() returns the default X and Y position of a + ++ viewport window unless overriden explicityly, newly created + ++ viewports will have this X and Y coordinate. + viewPosDefault : L NNI -> L NNI + ++ viewPosDefault([x,y]) sets the default X and Y position of a + ++ viewport window unless overriden explicityly, newly created + ++ viewports will have th X and Y coordinates x, y. + viewSizeDefault : () -> L PI + ++ viewSizeDefault() returns the default viewport width and height. + viewSizeDefault : L PI -> L PI + ++ viewSizeDefault([w,h]) sets the default viewport width to w and height + ++ to h. + viewDefaults : () -> Void + ++ viewDefaults() resets all the default graphics settings. + viewWriteDefault : () -> L S + ++ viewWriteDefault() returns the list of things to write in a viewport + ++ data file; a viewAlone file is always generated. + viewWriteDefault : L S -> L S + ++ viewWriteDefault(l) sets the default list of things to write in a + ++ viewport data file to the strings in l; a viewAlone file is always + ++ genereated. + viewWriteAvailable : () -> L S + ++ viewWriteAvailable() returns a list of available methods for writing, + ++ such as BITMAP, POSTSCRIPT, etc. + var1StepsDefault : () -> PI + ++ var1StepsDefault() is the current setting for the number of steps to + ++ take when creating a 3D mesh in the direction of the first defined + ++ free variable (a free variable is considered defined when its + ++ range is specified (e.g. x=0..10)). + var2StepsDefault : () -> PI + ++ var2StepsDefault() is the current setting for the number of steps to + ++ take when creating a 3D mesh in the direction of the first defined + ++ free variable (a free variable is considered defined when its + ++ range is specified (e.g. x=0..10)). + var1StepsDefault : PI -> PI + ++ var1StepsDefault(i) sets the number of steps to take when creating a + ++ 3D mesh in the direction of the first defined free variable to i + ++ (a free variable is considered defined when its range is specified + ++ (e.g. x=0..10)). + var2StepsDefault : PI -> PI + ++ var2StepsDefault(i) sets the number of steps to take when creating a + ++ 3D mesh in the direction of the first defined free variable to i + ++ (a free variable is considered defined when its range is specified + ++ (e.g. x=0..10)). + tubePointsDefault : PI -> PI + ++ tubePointsDefault(i) sets the number of points to use when creating + ++ the circle to be used in creating a 3D tube plot to i. + tubePointsDefault : () -> PI + ++ tubePointsDefault() returns the number of points to be used when + ++ creating the circle to be used in creating a 3D tube plot. + tubeRadiusDefault : Float -> SF -- current tube.spad asks for SF + ++ tubeRadiusDefault(r) sets the default radius for a 3D tube plot to r. + tubeRadiusDefault : () -> SF + ++ tubeRadiusDefault() returns the radius used for a 3D tube plot. + + Implementation ==> add + + import Color() + import Palette() + --import StringManipulations() + + defaultPointColor : Reference(PAL) := ref bright red() + defaultLineColor : Reference(PAL) := ref pastel green() --bright blue() + defaultAxesColor : Reference(PAL) := ref dim red() + defaultUnitsColor : Reference(PAL) := ref dim yellow() + defaultPointSize : Reference(PI) := ref(3::PI) + defaultXPos : Reference(NNI) := ref(0::NNI) + defaultYPos : Reference(NNI) := ref(0::NNI) + defaultWidth : Reference(PI) := ref(400::PI) + defaultHeight : Reference(PI) := ref(400::PI) + defaultThingsToWrite : Reference(L S) := ref([]::L S) + defaultVar1Steps : Reference(PI) := ref(27::PI) + defaultVar2Steps : Reference(PI) := ref(27::PI) + defaultTubePoints : Reference(PI) := ref(6::PI) + defaultTubeRadius : Reference(SF) := ref(convert(0.5)@SF) + defaultClosed : Reference(B) := ref(false) + +--%Viewport window dimensions specifications + viewPosDefault == [defaultXPos(),defaultYPos()] + viewPosDefault l == + #l < 2 => error "viewPosDefault expects a list with two elements" + [defaultXPos() := first l,defaultYPos() := last l] + + viewSizeDefault == [defaultWidth(),defaultHeight()] + viewSizeDefault l == + #l < 2 => error "viewSizeDefault expects a list with two elements" + [defaultWidth() := first l,defaultHeight() := last l] + + viewDefaults == + defaultPointColor : Reference(PAL) := ref bright red() + defaultLineColor : Reference(PAL) := ref pastel green() --bright blue() + defaultAxesColor : Reference(PAL) := ref dim red() + defaultUnitsColor : Reference(PAL) := ref dim yellow() + defaultPointSize : Reference(PI) := ref(3::PI) + defaultXPos : Reference(NNI) := ref(0::NNI) + defaultYPos : Reference(NNI) := ref(0::NNI) + defaultWidth : Reference(PI) := ref(400::PI) + defaultHeight : Reference(PI) := ref(427::PI) + +--%2D graphical output specifications + pointColorDefault == defaultPointColor() + pointColorDefault p == defaultPointColor() := p + + lineColorDefault == defaultLineColor() + lineColorDefault p == defaultLineColor() := p + + axesColorDefault == defaultAxesColor() + axesColorDefault p == defaultAxesColor() := p + + unitsColorDefault == defaultUnitsColor() + unitsColorDefault p == defaultUnitsColor() := p + + pointSizeDefault == defaultPointSize() + pointSizeDefault x == defaultPointSize() := x + + +--%3D specific stuff + var1StepsDefault == defaultVar1Steps() + var1StepsDefault i == defaultVar1Steps() := i + + var2StepsDefault == defaultVar2Steps() + var2StepsDefault i == defaultVar2Steps() := i + + tubePointsDefault == defaultTubePoints() + tubePointsDefault i == defaultTubePoints() := i + + tubeRadiusDefault == defaultTubeRadius() + tubeRadiusDefault f == defaultTubeRadius() := convert(f)@SF + +--%File output stuff + viewWriteAvailable == writeAvailable + + viewWriteDefault == defaultThingsToWrite() + + viewWriteDefault listOfThings == + thingsToWrite : L S := [] + for aTypeOfFile in listOfThings repeat + if (writeTypeInt := position(upperCase aTypeOfFile,viewWriteAvailable())) < 0 then + sayBrightly([" > ",concat(aTypeOfFile, + " is not a valid file type for writing a viewport")])$Lisp + else + thingsToWrite := append(thingsToWrite,[aTypeOfFile]) + defaultThingsToWrite() := thingsToWrite + +@ +\section{License} +<<license>>= +--Copyright (c) 1991-2002, The Numerical ALgorithms Group Ltd. +--All rights reserved. +-- +--Redistribution and use in source and binary forms, with or without +--modification, are permitted provided that the following conditions are +--met: +-- +-- - Redistributions of source code must retain the above copyright +-- notice, this list of conditions and the following disclaimer. +-- +-- - Redistributions in binary form must reproduce the above copyright +-- notice, this list of conditions and the following disclaimer in +-- the documentation and/or other materials provided with the +-- distribution. +-- +-- - Neither the name of The Numerical ALgorithms Group Ltd. nor the +-- names of its contributors may be used to endorse or promote products +-- derived from this software without specific prior written permission. +-- +--THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS +--IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +--TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A +--PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER +--OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, +--EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, +--PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR +--PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF +--LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +--NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +--SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +@ +<<*>>= +<<license>> + +<<package VIEWDEF ViewDefaultsPackage>> +@ +\eject +\begin{thebibliography}{99} +\bibitem{1} nothing +\end{thebibliography} +\end{document} |