Tuan Ha Tran | 7 Jun 2012 16:45
Picon
Picon

ParaView Plugin .xml how to

Hi everybody,
    I have another question, I hope that you can help me.
    So, my class vtkOtsuSphereSource has an attribute name "OpThreshold" of type double.
    I want to Set it value using ParaView.
    I followed an tutorial from which I can get my job done by adding some tab in my .xml file. the tutorial I told is in the IEEE Vis 09 conference.

    So, to set OpThreshold, I added the followed tab : 
   <DoubleVectorProperty name="OpThreshold"  command="SetOpThreshold" number_of_elements ="1" default_values="0">
   </DoubleVectorProperty>    
    And normaly, I can entre a value in a box in ParaView GUI. but I have a Core Dump, here is what I have as error : 
 

paraview: /home/thtran/PV/ParaView/src/ParaViewCore/ServerImplementation/vtkSIProxy.cxx:453: virtual bool vtkSIProxy::ReadXMLProperty(vtkPVXMLElement*): Assertion `!name.empty() && this->GetSIProperty(name.c_str()) == __null' failed.
Aborted (core dumped)
          I think that I don't get the .xml written as expected but I don't have any idea where is the problem.
    Please help me. It is really important for me to get through this. 
 
    My .xml is as followed : 
   
  ==================================================================== 
   <ServerManagerConfiguration>
  <ProxyGroup name="filters">
   <SourceProxy name="OtsuSphereSource" class="vtkOtsuSphereSource" label="Otsu Sphere Source">

     <Documentation
        long_help="Ce filtre calcule a partir dune image donnee le meilleur seuil"
        short_help="Calcule meilleur seuil">
     </Documentation>

     <InputProperty
        name="Input"
        command="SetInputConnection">
           <ProxyGroupDomain name="groups">
             <Group name="sources"/>
             <Group name="filters"/>
           </ProxyGroupDomain>
           <DataTypeDomain name="input_type">
             <DataType value="vtkImageData"/>
           </DataTypeDomain>
      </InputProperty>
      <DoubleVectorProperty name="OpThreshold"  command="SetOpThreshold" number_of_elements ="1" default_values="0">
      </DoubleVectorProperty>    
      <DoubleVectorProperty name = "OpThreshold" command="GetOpThreshold" number_of_elements = "1" default_values="0" information_only="1">
      </DoubleVectorProperty> 

   </SourceProxy>
  </ProxyGroup> 
</ServerManagerConfiguration>
===========================================================================
<div>Hi everybody,<br>&nbsp; &nbsp; I have another question, I hope that you can help me.<br>&nbsp; &nbsp; So, my class vtkOtsuSphereSource has an attribute name "OpThreshold" of type double.<br>&nbsp; &nbsp; I want to Set it value using ParaView.<br>&nbsp; &nbsp; I followed an tutorial from which I can get my job done by adding some tab in my .xml file. the tutorial I told is in the IEEE Vis 09 conference.<br><br>&nbsp; &nbsp; So, to set OpThreshold, I added the followed tab :&nbsp;<br>&nbsp; &nbsp;&lt;DoubleVectorProperty name="OpThreshold" &nbsp;command="SetOpThreshold" number_of_elements ="1" default_values="0"&gt;<br>&nbsp; &nbsp;&lt;/DoubleVectorProperty&gt;&nbsp;&nbsp; &nbsp;<br>&nbsp; &nbsp; And normaly, I can entre a value in a box in ParaView GUI. but I have a Core Dump, here is what I have as error :&nbsp;<br><span>&nbsp;</span><br><br>paraview: /home/thtran/PV/ParaView/src/ParaViewCore/ServerImplementation/vtkSIProxy.cxx:453: virtual bool vtkSIProxy::ReadXMLProperty(vtkPVXMLElement*): Assertion `!name.empty() &amp;&amp; this-&gt;GetSIProperty(name.c_str()) == __null' failed.<br>Aborted (core dumped)<br>&nbsp; &nbsp;&nbsp; &nbsp;<span>&nbsp; &nbsp; I think that I don't get the .xml written as expected but I don't have any idea where is the problem.<br>&nbsp; &nbsp; Please help me. It is really important for me to get through this.&nbsp;<br><span>&nbsp;</span><br></span>&nbsp; &nbsp; My .xml is as followed :&nbsp;<br>&nbsp; &nbsp;<br>&nbsp; ====================================================================&nbsp;<br>&nbsp; &nbsp;&lt;ServerManagerConfiguration&gt;<br>&nbsp; &lt;ProxyGroup name="filters"&gt;<br>&nbsp; &nbsp;&lt;SourceProxy name="OtsuSphereSource" class="vtkOtsuSphereSource" label="Otsu Sphere Source"&gt;<br><br>&nbsp; &nbsp; &nbsp;&lt;Documentation<br>&nbsp; &nbsp; &nbsp; &nbsp; long_help="Ce filtre calcule a partir dune image donnee le meilleur seuil"<br>&nbsp; &nbsp; &nbsp; &nbsp; short_help="Calcule meilleur seuil"&gt;<br>&nbsp; &nbsp; &nbsp;&lt;/Documentation&gt;<br><br>&nbsp; &nbsp; &nbsp;&lt;InputProperty<br>&nbsp; &nbsp; &nbsp; &nbsp; name="Input"<br>&nbsp; &nbsp; &nbsp; &nbsp; command="SetInputConnection"&gt;<br>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&lt;ProxyGroupDomain name="groups"&gt;<br>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&lt;Group name="sources"/&gt;<br>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&lt;Group name="filters"/&gt;<br>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&lt;/ProxyGroupDomain&gt;<br>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&lt;DataTypeDomain name="input_type"&gt;<br>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&lt;DataType value="vtkImageData"/&gt;<br>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&lt;/DataTypeDomain&gt;<br>&nbsp; &nbsp; &nbsp; &lt;/InputProperty&gt;<br>&nbsp; &nbsp; &nbsp; &lt;DoubleVectorProperty name="OpThreshold" &nbsp;command="SetOpThreshold" number_of_elements ="1" default_values="0"&gt;<br>&nbsp; &nbsp; &nbsp; &lt;/DoubleVectorProperty&gt;&nbsp;&nbsp;&nbsp;&nbsp;<br>&nbsp; &nbsp; &nbsp; &lt;DoubleVectorProperty name = "OpThreshold" command="GetOpThreshold" number_of_elements = "1" default_values="0" information_only="1"&gt;<br>&nbsp; &nbsp; &nbsp; &lt;/DoubleVectorProperty&gt;&nbsp;<br><br>&nbsp; &nbsp;&lt;/SourceProxy&gt;<br>&nbsp; &lt;/ProxyGroup&gt;&nbsp;<br>&lt;/ServerManagerConfiguration&gt;<br><span>===========================================================================</span>
</div>

Gmane