Newer
Older
#! /usr/bin/env partiview
# Demonstrates discrete timesteps ("datatime") combined with continuous extrapolation from the position
# given at each time (via "warp -extrap" and the vx/vy/vz fields in each particle.
# We constructed the vx vectors such that extrapolating them for unit time (1/the "p" value)
# is enough to carry them from their position at that time, to their position at the next timestep.
# Since the "warp ... -p" value "p" gives the amount of time per unit motion (1/speed),
# this means we choose V (= vector of three successive attributes here called vx,vy,vz) such that
#
# Position_i + V / p = Position_i+1
#
datavar 0 vx
datavar 1 vy
datavar 2 vz
datavar 3 who
warp -extrap vx,1 -z 0 -p 1
eval color who 0 4
eval lum const 1000
datatime 0
0 0 0 1 0 0 1
0 0 0 0 1 0 2
0 0 0 0 0 1 3
datatime 1
1 0 0 0 0.5 0 1
0 1 0 0 0 0.5 2
0 0 1 0.5 0 0 3
datatime 2
1 0.5 0 0 0.5 1 1
0 1 0.5 1 0 0.5 2
0.5 0 1 0.5 1 0 3