1ページの画面が比較的短時間で用意できる場合は, パラメータ 'ALTERNATE'=.TRUE., 'WAIT'=.FALSE. とすることで, アニメーション表示が可能になります.
上記の方法では遅い場合, 'DUMP'=.TRUE. として xwd ファイル(X), bmp ファイル(Windows)を作成し, convertコマンドやビデオ作成ユーティリティーなどを使って アニメーションを作成します.
'WAIT', 'WAIT_OPENING, 'WAIT_CLOSING' をすべて .FALSE. にしておけ ば, 自動的にファイルを作成することが可能ですが, 画面のキャプチャーを用いているので画面表示をせずにこれを行なうことはできません.
program anim use dcl integer,parameter :: nmax=40, kmax=40 real :: x(0:nmax), y(0:nmax) character(len=5) :: title dt = 2.*3.14159 / nmax call DclSetParm('alternate',.true.) call DclSetParm('wait',.false.) call DclOpenGraphics(1) do k = 1,kmax x = (/ (dt*n, n=0,nmax) /) y = sin( x + dt*k/kmax*nmax ) call DclNewFrame call DclSetWindow( 0., 2.*3.14159, -1.5, 1.5 ) call DclSetViewPort( 0.2, 0.8, 0.2, 0.8 ) call DclSetTransFunction call DclDrawScaledAxis title(1:2) = 't=' write(title(3:5),'(i3)') k call DclDrawTitle('t',title) call DclDrawLine( x, y ) end do call DclCloseGraphics end program |