RE: RE: animation
- To: mathgroup at smc.vnet.net
- Subject: [mg46548] RE: [mg45111] RE: [mg45073] animation
- From: "Ingolf Dahl" <ingolf.dahl at telia.com>
- Date: Mon, 23 Feb 2004 02:15:39 -0500 (EST)
- Sender: owner-wri-mathgroup at wolfram.com
In my series "Old questions, new answers" I want to show another way to do animation to a closed group, avoiding showing all rendered cells. Try this: plotlist = Table[Show[ Plot[Sin[x], {x, 0., i*2\[Pi]/36.}, PlotRange -> {{0, 7}, {-1, 1}}, DisplayFunction -> Identity], ListPlot[{{i*2\[Pi]/36., Sin[i*2\[Pi]/36.]}}, PlotStyle -> {PointSize[0.03], RGBColor[1, 0, 0]}, PlotRange -> {{0, 7}, {-1.1, 1.1}}, DisplayFunction -> Identity]], {i, 1, 36}]; plotlist = Prepend[plotlist, plotlist[[36]]]; AnimateToClosedGroup[graphicslist_, animationdisplaytime_] := (NotebookWrite[EvaluationNotebook[], CellGroupData[ Table[Cell[ GraphicsData["PostScript", DisplayString[graphicslist[[i]]]], "Graphics"], {i, Length[graphicslist]}], Closed ], After]; SelectionMove[EvaluationNotebook[], Previous, CellGroup]; SelectionAnimate[EvaluationNotebook[] , Length[graphicslist]*animationdisplaytime, AnimationDisplayTime -> animationdisplaytime]) AnimateToClosedGroup[plotlist, 0.15] Plotlist can of course be replaced by any list of graphics. Best regards Ingolf Dahl Sweden >-----Original Message----- >From: David Park [mailto:djmp at earthlink.net] To: mathgroup at smc.vnet.net >Sent: Wednesday, December 17, 2003 13:54 >To: mathgroup at smc.vnet.net >Subject: [mg46548] [mg45111] RE: [mg45073] animation > > >Luiza, > >You could avoid the For loop my using... > >Needs["Graphics`Animation`"] > >Animate[ListPlot[...i ...], {i, 1, n, 1}] >SelectionMove[EvaluationNotebook[], All, GeneratedCell] >FrontEndTokenExecute["OpenCloseGroup"]; Pause[0.5]; >FrontEndExecute[{FrontEnd`SelectionAnimate[200, >AnimationDisplayTime -> 0.1, > AnimationDirection -> Forward]}] > >You can't directly avoid rendering all the frames. (Actually you >could use a >scheme like Ingolf Dahl posted yesterday but that only runs the animation >once and provides no controls.) > >The additional statements above will select the frames, close them up and >start the animation. The 200 is the number of seconds to run the animation. >(If you are using DrawGraphics you can click the statements in from the >DrawGraphicsPalette.) > >A good way to view animations is by using the arrow keys. arrow up >and arrow >down advance one frame at a time. arrow left and arrow right start the >animation in each direction. The keys on the number pad will control the >speed. "p" will pause the animation. "c" will run the animation in >forward-backward mode. > >David Park >djmp at earthlink.net >http://home.earthlink.net/~djmp/ > >From: M.L. Bondar [mailto:mbondar at win.tue.nl] To: mathgroup at smc.vnet.net >To: mathgroup at smc.vnet.net > > >I have the following problem with Mathematica. > > > I need to make an animation and I use For[i=1, i<=n ListPlot[.....]; i++] > which creates n plots. After that I double click on the grouping bracket >to the right of the plots to close the group and animate it. > >Is there any possibility to make the animation avoiding the ploting of >all n plots? > >Thank you in advance. > >Regards, > >Luiza Bondar > > >