Is there any chance you can compile from source? There is an easy way of doing this in 3.8. (There will be an even easier one after 3.8).
Requirements: - ParaView compiled with Python - NumPy Recipe: - Select 2 objects in the pipeline browser - Apply Programmable Filter - Use a script like the following: output.PointData.append(inputs[0].PointData['Normals'] - inputs[1].PointData['Normals'], 'difference') (replace Normals with whatever array you want to compare). Note that you will still need to merge the blocks beforehand if your objects are multi-block. -berk On Wed, Mar 31, 2010 at 6:19 AM, <[email protected]> wrote: > [email protected] wrote on 03/30/2010 07:12:48 PM: >> >> Unfortunately, you have to copy the array with something like: >> >> copy_array = original_array.NewInstance() >> copy_array.DeepCopy(original_array) >> copy_array.SetName("foo") >> copy_array.UnRegister(None) >> >> Having said that there might be a better way of doing this. Are you >> planning to use the calculator to compare these arrays later in the >> pipeline? >> > > Dear Berk, > Yes, I'd like to get the difference of the two arrays. > Maybe I should try to do it directly in the programmable filter and simply > return the result array... > > Any suggestion is welcome... > > Thank you very much for your help, > Luca > > > >> -berk >> >> On Mon, Mar 29, 2010 at 11:34 AM, <[email protected]> wrote: >> > Dear Berk, >> > >> > this really helped me a lot, thanks! >> > >> > >> > But now Im stuck with another problem. >> > >> > The scalar value that I'm trying to compare from the two data sets > have the >> > same names. >> > >> > >> > meanTotalPressure >> > >> > >> > So when I do the AddArray() in my script the second array simply > overrides >> > the first one. >> > >> > http://www.vtk.org/doc/nightly/html/ >> classvtkFieldData.html#a22259e3c071ac8ff7a62ac49e9f1a92e >> > >> > >> > I tried to change the name with SetName() method, but it changes the > Array >> > name globally, and the second time I run the filter the GetArray > returns >> > NoneType object. >> > >> > >> > Do I have to copy the object to rename it? >> > >> > >> > Sincerely, >> > >> > Luca >> > >> > ----------------------------------- >> > >> > i0 = self.GetInputDataObject(0,0) >> > i1 = self.GetInputDataObject(0,1) >> > o = self.GetOutputDataObject(0) >> > print "the class is: " + >> > str(i0.GetPointData().GetArray("meanTotalPressureMonitor").__class__) >> > array0 = i0.GetPointData().GetArray("meanTotalPressureMonitor") >> > array0.SetName("meanTotalPressure0") >> > o.GetPointData().AddArray(array0) >> > array1 = i1.GetPointData().GetArray("meanTotalPressureMonitor") >> > array1.SetName("meanTotalPressure1") >> > o.GetPointData().AddArray(array1) >> > ----------------------------------- >> > >> > >> > Berk Geveci <[email protected]> wrote on 03/23/2010 08:57:52 PM: >> >> >> >> This is because the EnSight reader produces a multi-block dataset. > Try >> >> applying Merge Blocks filter first. >> >> >> >> -berk >> >> >> >> On Mon, Mar 22, 2010 at 1:12 PM, <[email protected]> > wrote: >> >> > Hi all, >> >> > Im trying to compare two data sets in Ensight .case format. >> >> > >> >> > I found only this thread referring to data set comparison: >> >> > http://www.cmake.org/pipermail/paraview/2008-November/010034.html >> >> > >> >> > But I could not get it to work. I tried resamply directly the two >> >> > Ensight >> >> > data reader. Then I also tried to filter the two Ensight data > readers >> >> > through a CellDatatoPointData reader and also through a CellCenter > (with >> >> > vertex cells active), but I always get: >> >> > ERROR: In >> >> > /home/kitware/ParaView3/Utilities/BuildScripts/ParaView-3.6/ >> >> ParaView3/VTK/Filtering/vtkDataSet.cxx, >> >> > line 406 >> >> > vtkUnstructuredGrid (0x3a46da0): Point array vtkValidPointMask with > 1 >> >> > components, only has 3726 tuples but there are 407364 pointsERROR: > In >> >> > /home/kitware/ParaView3/Utilities/BuildScripts/ParaView-3.6/ >> >> ParaView3/VTK/Filtering/vtkDataSet.cxx, >> >> > line 406 >> >> > vtkUnstructuredGrid (0x67183e0): Point array vtkValidPointMask with > 1 >> >> > components, only has 3726 tuples but there are 407364 points >> >> > >> >> > >> >> > ERROR: In >> >> > /home/kitware/ParaView3/Utilities/BuildScripts/ParaView-3.6/ >> >> ParaView3/VTK/Filtering/vtkExecutive.cxx, >> >> > line 757 >> >> > vtkCompositeDataPipeline (0x65c0b20): Algorithm >> >> > vtkPVGeometryFilter(0x65bdb80) returned failure for request: >> >> > vtkInformation (0x67155a0) >> >> > Debug: Off >> >> > Modified Time: 13672858 >> >> > Reference Count: 1 >> >> > Registered Events: (none) >> >> > Request: REQUEST_DATA >> >> > FROM_OUTPUT_PORT: 0 >> >> > ALGORITHM_AFTER_FORWARD: 1 >> >> > FORWARD_DIRECTION: 0 >> >> > >> >> > >> >> > I also tried the programmable filter suggested in the previous > email, >> >> > (using two input file with the same geometry), but in that case I > always >> >> > get: >> >> > >> >> > paraview version 3.6.2, Date: 2009-05-18 >> >> > >> >> > Traceback (most recent call last): >> >> > File "<string>", line 25, in <module> >> >> > File "<string>", line 5, in RequestData >> >> > AttributeError: GetPointData >> >> > >> >> > >> >> > That's the filter Im trying to use: >> >> > i0 = self.GetInputDataObject(0,0) >> >> > i1 = self.GetInputDataObject(0,1) >> >> > o = self.GetOutputDataObject(0) >> >> > o.GetPointData().AddArray(i0.GetPointData().GetArray >> >> ("meanTotalPressureMonitor")) >> >> > o.GetPointData().AddArray(i1.GetPointData().GetArray >> >> ("meanTotalPressureMonitor")) >> >> > >> >> > >> >> > Thank you very much for your help! >> >> > >> >> > Sincerely, >> >> > Luca >> >> > >> >> > >> >> > >> > >> > >> > _________________________________________________________________________________________________________________ >> > Questo messaggio è da intendersi esclusivamente ad uso del > destinatario e >> > può contenere informazioni che sono di natura privilegiata, > confidenziale >> > o non divulgabile secondo le leggi vigenti. Se il lettore del presente >> > messaggio non è il destinatario designato, o il dipendente/agente >> > responsabile >> > per la consegna del messaggio al destinatario designato, si informa > che ogni >> > disseminazione, distribuzione o copiatura di questa comunicazione è >> > strettamente proibita anche ai sensi del decreto legislativo 196/03 . > Se >> > avete ricevuto questo messaggio per errore, vi preghiamo di > notificarcelo >> > immediatamente a mezzo e-mail di risposta e successivamente di > procedere >> > alla cancellazione di questa e-mail e relativi allegati dal vostro > sistema. >> > >> > _________________________________________________________________________________________________________________ >> > This message is intended only for the use of the addressee and may > contain >> > information that is privileged, confidential and exempt from >> > disclosure under applicable law. If the reader of this message is not > the >> > intended recipient, or the employee or agent responsible for > delivering the >> > message to the intended recipient, you are hereby notified that any >> > dissemination, distribution or copying of this communication is > strictly >> > prohibited. If you have received this e-mail in error, please notify > us >> > immediately by return e-mail and delete this e-mail and all > attachments from >> > your system. >> > >> > _________________________________________________________________________________________________________________ >> > >> _______________________________________________ >> 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 > > > _________________________________________________________________________________________________________________ > Questo messaggio è da intendersi esclusivamente ad uso del destinatario e può > contenere informazioni che sono di natura privilegiata, confidenziale > o non divulgabile secondo le leggi vigenti. Se il lettore del presente > messaggio non è il destinatario designato, o il dipendente/agente responsabile > per la consegna del messaggio al destinatario designato, si informa che ogni > disseminazione, distribuzione o copiatura di questa comunicazione è > strettamente proibita anche ai sensi del decreto legislativo 196/03 . Se > avete ricevuto questo messaggio per errore, vi preghiamo di notificarcelo > immediatamente a mezzo e-mail di risposta e successivamente di procedere alla > cancellazione di questa e-mail e relativi allegati dal vostro sistema. > _________________________________________________________________________________________________________________ > This message is intended only for the use of the addressee and may contain > information that is privileged, confidential and exempt from > disclosure under applicable law. If the reader of this message is not the > intended recipient, or the employee or agent responsible for delivering the > message to the intended recipient, you are hereby notified that any > dissemination, distribution or copying of this communication is strictly > prohibited. If you have received this e-mail in error, please notify us > immediately by return e-mail and delete this e-mail and all attachments from > your system. > _________________________________________________________________________________________________________________ > _______________________________________________ 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
