<div dir="ltr"><div>I think we've been meaning to expose those in the GUI ever since we added those back in about paraview 3.4. Anyway, here is the syntax from a python script I recently used them in.</div><div><br></div><div>where gen is the proxy for a python programmable filter<br></div><div><div>paramprop = gen.GetProperty("Parameters")</div><div>paramprop.SetElement(0, "ntimes")</div><div>paramprop.SetElement(1, str(ntimes))</div><div>paramprop.SetElement(2, "nlevels")</div><div>paramprop.SetElement(3, str(nlevels))</div><div>…</div><div><div>gen.UpdateProperty("Parameters")</div><div>gen.UpdatePipeline()<br></div></div><div><br></div><div>For more details refer to the attached benchmarking script.</div></div></div><div class="gmail_extra"><br clear="all"><div><div class="gmail_signature">David E DeMarle<br>Kitware, Inc.<br>R&D Engineer<br>21 Corporate Drive<br>Clifton Park, NY 12065-8662<br>Phone: 518-881-4909</div></div>
<br><div class="gmail_quote">On Mon, Apr 27, 2015 at 11:49 AM, Di Cheng <span dir="ltr"><<a href="mailto:chengdi@imech.ac.cn" target="_blank">chengdi@imech.ac.cn</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hi, everyone<br>
<br>
I am using Programmable Filter in paraview. I noticed that there is a Parameters property in Programmable Filter. But I cannot use it in GUI, either in pvpython.<br>
<br>
I referred the C++ document about this filter in [<a href="http://www.paraview.org/ParaView3/Doc/Nightly/www/cxx-doc/classvtkPythonProgrammableFilter.html" target="_blank">http://www.paraview.org/ParaView3/Doc/Nightly/www/cxx-doc/classvtkPythonProgrammableFilter.html</a>], It is used to pass arguments to python script. BUT, I CANNOT USE IT in pvpython. I think it is because it accept two or more parameters and cannot be wrapped by XML file.<br>
<br>
I know there is a undocumented GetClientSideObject() method which could work in "builtin:" mode. But it could only work locally<br>
<br>
Currently, I am using a script generator to pass arguments<br>
-----code-----<br>
def pass_arg_script(d):<br>
"""<br>
generate script to pass parameters in dictionary d={'name':value}<br>
value can be numpy arrays<br>
"""<br>
    s=""<br>
    for k in d:<br>
        s+='self.'+k+'='+repr(d[k])+'\n'<br>
        s+="print '"+k+"=', self."+k+'\n'<br>
    return s<br>
<br>
pf.Script = s+ pf.Script<br>
------end of code------<br>
<br>
My question is: Is there any decent way to pass Parameters to Programmable Filter in pvpython?<br>
<br>
Di CHENG (Ph.D. candidate)<br>
Supersonic Combustion Group<br>
State Key Laboratory of High Temperature Gas Dynamics<br>
Institute of Mechanics, Chinese Academy of Sciences<br>
ADDRESS: No.15 Beisihuanxi Road, Beijing (100190)<br>
P. R. China<br>
E-mail: <a href="mailto:chengdi@imech.ac.cn">chengdi@imech.ac.cn</a><br>
Phone: <a href="tel:%2B86-10-82544053" value="+861082544053">+86-10-82544053</a><br>
Fax: <a href="tel:%2B86-10-82544034" value="+861082544034">+86-10-82544034</a><br>
<br>
<br>
_______________________________________________<br>
Powered by <a href="http://www.kitware.com" target="_blank">www.kitware.com</a><br>
<br>
Visit other Kitware open-source projects at <a href="http://www.kitware.com/opensource/opensource.html" target="_blank">http://www.kitware.com/opensource/opensource.html</a><br>
<br>
Search the list archives at: <a href="http://markmail.org/search/?q=Paraview-developers" target="_blank">http://markmail.org/search/?q=Paraview-developers</a><br>
<br>
Follow this link to subscribe/unsubscribe:<br>
<a href="http://public.kitware.com/mailman/listinfo/paraview-developers" target="_blank">http://public.kitware.com/mailman/listinfo/paraview-developers</a><br>
</blockquote></div><br></div>