<div dir="ltr"><br><div class="gmail_extra"><br><div class="gmail_quote">On Thu, Jul 14, 2016 at 4:40 PM, Utkarsh Ayachit <span dir="ltr"><<a href="mailto:utkarsh.ayachit@kitware.com" target="_blank">utkarsh.ayachit@kitware.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">There are a couple of things wrong with your plugin :).<br></blockquote><div><br></div><div>I was expecting this, because I am only starting to learn plugin programming right now :)<br> <br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<br>
1. A RequestData() implementation should never change MTime of the<br>
filter. You code call SetNPoints() which changes MTime.<br></blockquote><div><br></div><div>I'll check the meaning of MTime.<br><br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
2. ParaView's properties are not bi-directional. They are only<br>
intended to be set on the UI side and pushed to the VTK side. </blockquote><div><br></div><div>I was also assuming this, but I thought there are a few filters that update their properties when some inputs upstream in the pipeline change. My memory can be wrong, though.<br></div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">There<br>
are of course exceptions to this, and you can add what's called a<br>
"information_only" property that instead reads a value from the VTK<br>
side and provides it on the "client" side, but for such properties,<br>
often there's no UI. They are instead, used to define the "domain" for<br>
the property which controls things like range for the slider, for<br>
example.<br></blockquote><div><br></div><div>I am not sure, whether I understand all details of your reply.<br></div><div>In summary, is it possible to update UI properties of a filter, when its input changes? By no means?<br><br></div><div>I'd need something similar to an image resize filter. The output size should be identical to the input size, when the filter is first attached to the input. The output size should be shown in the UI and the user should be able to enter a different output size. Is this impossible? Not even with some more complicated workaround?<br><br></div><div>Thank you<br></div><div>Corinna<br></div><div><br> <br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div><div class="h5"><br>
<br>
<br>
On Thu, Jul 14, 2016 at 10:34 AM, corinna reuter<br>
<<a href="mailto:corinnareuter75@gmail.com">corinnareuter75@gmail.com</a>> wrote:<br>
> Hello,<br>
> I would like to work on a filter that updates some of its properties from<br>
> the filter input. As a demonstration, I attach a (quite minimal)<br>
> "vtkTestProperty" filter algorithm, which takes vtkPolyData input, and which<br>
> is supposed to copy input->GetNumberOfPoints() into the filter's "NPoints"<br>
> property which is exposed to the user interface.<br>
><br>
> Inside vtkTestProperty::RequestData, I execute:<br>
>     int nset=input->GetNumberOfPoints();<br>
>     this->SetNPoints(nset);<br>
> which, is correctly setting the NPoints value. Additional print statements<br>
> in the code confirm, that NPoints is actually updated, but the new value<br>
> won't be shown in the Paraview UI.<br>
><br>
> To reproduce the behaviour, the attachment is ready to compile with Paraview<br>
> 5.0.1. Just load the compiled plugin in Paraview, create a "SphereSource"<br>
> and append the "ATestPropery" filter to the SphereSource. The console output<br>
> will show that NPoints is set to 50 (Number of Points of the Sphere), but<br>
> the UI still shows 42 (the default value from the Servermanager xml).<br>
><br>
> What am I doing wrong?<br>
><br>
> Thank you<br>
> Corinna<br>
><br>
</div></div>> _______________________________________________<br>
> Powered by <a href="http://www.kitware.com" rel="noreferrer" target="_blank">www.kitware.com</a><br>
><br>
> Visit other Kitware open-source projects at<br>
> <a href="http://www.kitware.com/opensource/opensource.html" rel="noreferrer" target="_blank">http://www.kitware.com/opensource/opensource.html</a><br>
><br>
> Please keep messages on-topic and check the ParaView Wiki at:<br>
> <a href="http://paraview.org/Wiki/ParaView" rel="noreferrer" target="_blank">http://paraview.org/Wiki/ParaView</a><br>
><br>
> Search the list archives at: <a href="http://markmail.org/search/?q=ParaView" rel="noreferrer" target="_blank">http://markmail.org/search/?q=ParaView</a><br>
><br>
> Follow this link to subscribe/unsubscribe:<br>
> <a href="http://public.kitware.com/mailman/listinfo/paraview" rel="noreferrer" target="_blank">http://public.kitware.com/mailman/listinfo/paraview</a><br>
><br>
</blockquote></div><br></div></div>