<div dir="ltr">Hi, I'm trying to write a Python Programmable Source that can read files based on a time stamp (e.g. pick the file using the "VCR" buttons in Paraview). I see a nice example in the new Paraview manual (PDF) in section 13.2.2 - CSV file series, but I can't get that example to work. The UPDATE_TIME_STEP is always a value like 0.11111, 0.22222, 0.33333, up to 1. It's never from the set of times specified by the RequestInformation script.   I'm using Paraview v4.3.1 64-bit Mac Yosemite. Here's what I did...<div><br></div><div>I have a Programmable Source as the only item in my pipeline. The output dataset type is vtkTable. The "Script" is,<br><div><div><br></div><div># -- Script --</div><div><div><div>import numpy as np</div><div><br></div><div>def GetUpdateTimestep(algorithm):</div><div>    executive = algorithm.GetExecutive()</div><div>    outInfo = executive.GetOutputInformation(0)</div><div>    print outInfo.Get(executive.TIME_STEPS())</div><div>    return outInfo.Get(executive.UPDATE_TIME_STEP()) if outInfo.Has(executive.UPDATE_TIME_STEP()) else None</div><div><br></div><div>req_time = GetUpdateTimestep(self)</div><div>a = np.array([req_time] ) </div><div><br></div><div>output.RowData.append(a, "Adam")</div></div><div>#---------------</div><div><br></div><div>And the "RequestInformation" script is (taken verbatim from the example in the manual)...</div><div><br></div><div># -- RequestInformation --</div><div><div>def setOutputTimesteps(algorithm , timesteps):</div><div>    "helper routine to set timestep information"</div><div>    executive = algorithm.GetExecutive()</div><div>    outInfo = executive.GetOutputInformation(0)</div><div>    outInfo.Remove(executive.TIME_STEPS())</div><div><br></div><div>    for timestep in timesteps:</div><div>        outInfo.Append(executive.TIME_STEPS(), timestep)</div><div><br></div><div>    outInfo.Remove(executive.TIME_RANGE())</div><div>    outInfo.Append(executive.TIME_RANGE(), timesteps[0])</div><div>    outInfo.Append(executive.TIME_RANGE(), timesteps[-1])</div><div><br></div><div>setOutputTimesteps(self, (1.0, 2.0, 20.0, 30.0))</div></div><div>----</div><div><br></div><div>So as you can see, I'm just copying the value of UPDATE_TIME_STEP into the output table, which I can look at in the spreadsheet view. When I hit the "VCR buttons", the values I get are 0.111111, 0.222222, ... -- not the values that I had set in TIME_STEPS.</div><div><br></div><div>Note that in the top script I have a line,</div><div>print outInfo.Get(executive.TIME_STEPS())<br></div><div>which prints out the right thing ... (1.0, 2.0, 20.0, 30.0) </div><div>I can print out TIME_RANGE and that's correct too (1.0, 30.0)</div><div><br></div><div>So I think everything is set correctly, but for some reason Paraview is ignoring the settings. Do I need to call something to tell Paraview to notice my changing of TIME_STEPS/TIME_RANGE? </div><div><br></div><div>Thanks in advance for any help!  -- Adam</div><div><br></div>
</div></div></div></div>