[Paraview-developers] [Paraview] ParaView Plugin .xml how to
David E DeMarle
dave.demarle at kitware.com
Thu Jun 7 11:21:55 EDT 2012
Your c++ class has:
double calculateOptimalThreshold(vtkImageData *voi)
But your xml property specification says paraview should call this:
void calculateOptimalThreshold(double *argument)
To pass in an image data you will need to use a ProxyProperty, not a
double vector property.
David E DeMarle
Kitware, Inc.
R&D Engineer
21 Corporate Drive
Clifton Park, NY 12065-8662
Phone: 518-881-4909
On Thu, Jun 7, 2012 at 11:12 AM, Tuan Ha Tran <tuan-ha.tran at insa-lyon.fr> wrote:
> I tried to call my function double calculateOptimalThreshold(vtkImageData
> *voi) which have a return attribute as an OpThreshold that I want to extract
> the value as well.
>
> I use the following tab for my .xml ServerManager.
> ========================================================================
>
> <DoubleVectorProperty name ="calculate" command="calculateOptimalThreshold"
> number_of_elements = "1">
> <DataTypeDomain name ="input_type">
> <DataType value = "vtkImageData">
> </DataTypeDomain>
>
> </DoubleVectorProperty>========================================================================
>
> But I failed to apply my filter with the following error
> =====================================================================
>
> ############ ABORT #############
> ERROR: In
> /home/thtran/PV/ParaView/src/ParaViewCore/ServerImplementation/vtkPVSessionCore.cxx,
> line 368
> vtkPVSessionCore (0x101ac20): Object type: vtkOtsuSphereSource, could not
> find requested method: "calculateOptimalThreshold"
> or the method was called with incorrect arguments.
>
> while processing
> Message 0 = Invoke
> Argument 0 = vtk_object_pointer {vtkOtsuSphereSource (0x29ef5f0)}
> Argument 1 = string_value
> {calculateOptimalThreshold} ======================================================================
> Can you please help me? It really really important for me indeed.
> Thank you from my heart for your help.
>
>
>
> ----- Original Message -----
> From: Tuan Ha Tran <tuan-ha.tran at insa-lyon.fr>
> To: paraview-developers at paraview.org, paraview at paraview.org
> Sent: Thu, 07 Jun 2012 16:45:22 +0200 (CEST)
> Subject: [Paraview] 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>
> ===========================================================================
>
> _______________________________________________
> Powered by www.kitware.com
>
> Visit other Kitware open-source projects at
> http://www.kitware.com/opensource/opensource.html
>
> Please keep messages on-topic and check the ParaView Wiki at:
> http://paraview.org/Wiki/ParaView
>
> Follow this link to subscribe/unsubscribe:
> http://www.paraview.org/mailman/listinfo/paraview
>
More information about the Paraview-developers
mailing list