Re: SpinShow problem
- To: mathgroup at smc.vnet.net
- Subject: [mg56421] Re: [mg56339] SpinShow problem
- From: "David Park" <djmp at earthlink.net>
- Date: Sun, 24 Apr 2005 03:29:23 -0400 (EDT)
- Sender: owner-wri-mathgroup at wolfram.com
Thanks to Mark Fisher and Peter Pein we now have a way to do this, but I do not understand the internals. They use the following two system functions. ?$RasterFunction System`$RasterFunction $RasterFunction = ($AnimationDisplayFunction[#1]; ) & ?$AnimationFunction System`$AnimationFunction $AnimationFunction = Null & However I do not find any documentation on the meaning and use of these functions. (In fact the user's access to animation control is very poorly done in the present Mathematica.) Apparently, to get the graphics output we have to get rid of the ";" in $RasterRunction and change Null& to Identity in $AnimationFunction. Then I wrote the following routine to obtain the graphics objects as output for any of the commands in the Graphics`Animation` package. (Mark Fisher's routine from his site works well and has the additional advantage allowing the suppression of the display, but is specialized to SpinShow.) AnimationGraphics::usage = "AnimationGraphics[animatecommand] generates the regular animations \ produced by the various commands in the Animation packages and also returns \ the list of graphics objects produced."; Attributes[AnimationGraphics] = {HoldFirst}; AnimationGraphics[animatecommand_] := Block[{$AnimationFunction = Identity, $RasterFunction = $DisplayFunction}, animatecommand] For examples... Needs["Graphics`Animation`"] plot1 = Plot3D[x*Cos[y], {x, -1, 1}, {y, -Pi, Pi}, Axes -> False, Boxed -> False]; AnimationGraphics[SpinShow[plot1]] frame[p_] := Plot3D[x Cos[p y], {x, -1, 1}, {y, -Pi, Pi}, Axes -> False, Boxed -> False]; AnimationGraphics[Animate[frame[p], {p, 0, 4, 0.25}]] AnimationGraphics[ MovieParametricPlot[{s Cos[2 Pi s + t], s Sin[2 Pi s + t]}, {s, 0, 4}, {t, 0, 2Pi}, Frames -> 10, Axes -> False, AspectRatio -> Automatic, PlotRange -> {{-4, 4}, {-4, 4}}]] AnimationGraphics[ MoviePlot3D[x Cos[p y], {x, -1, 1}, {y, -\[Pi], \[Pi]}, {p, 0, 2, 0.1}, Axes -> False, Boxed -> False]] David Park djmp at earthlink.net http://home.earthlink.net/~djmp/ From: shawn peng [mailto:shawnpeng23 at yahoo.com.cn] To: mathgroup at smc.vnet.net I used SpinShow command to rotate a 3D graph. But when I export the results, they can't be saved as .gif file. So, my question is how to save "SpinShow" results as a .gif file in order to get a 3D movie? Thanks. Shawn