Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
[ice-dev] Fwd: Re: ICE-ParaView integration

-------- Forwarded Message --------
Subject: Re: ICE-ParaView integration
Date: Mon, 02 Mar 2015 10:34:54 -0500
From: Jordan Deyton <deytonjh@xxxxxxxx>
To: Scott Wittenburg <scott.wittenburg@xxxxxxxxxxx>
CC: Sebastien Jourdain <sebastien.jourdain@xxxxxxxxxxx>, Patrick O'Leary <patrick.oleary@xxxxxxxxxxx>


Scott,

Although I'm quite new to ParaView, I think I can finally piece together what I need to hook up ParaView to ICE. Thanks for the help!

And sorry about the email issue. I'll just forward this conversation to our dev list to keep my team members updated.

Jordan
Jordan Deyton
Oak Ridge National Laboratory
Telephone: (865) 574-1091
Email: deytonjh@xxxxxxxx
On 2/27/2015 6:05 PM, Scott Wittenburg wrote:
Hi Jordan,

   By the way, the "ice developer discussions" address keeps getting rejected when I respond, which is why I keep removing it from the address list before replying.

On Fri, Feb 27, 2015 at 3:48 PM, Jordan Deyton <deytonjh@xxxxxxxx> wrote:
Thanks for the quick reply, Scott!

So, say I decide I want to display variable called "temp". I find it in the "PointVariables" JSON object under the "properties" JSON object.

Which of the proxy's properties should be updated to force it to render "temp" rather than just the surface of the mesh?


So there are three proxies which you should be retrieving for a pipeline component: source, representation, and view.  The representation proxy JSON object has a "colorBy" section which tells you which array is being colored by, if any, which component (or the magnitude) which is being used, as well as a few other pieces of information.  When you want to change the color, you will actually use the following protocol instead of the proxy manager:


To change the array being colored by, use the "pv.color.manager.color.by" rpc method.

To change most other properties aside from the color, you should use the proxy manager protocol to update the property of the relevant proxy.  For example. to change the representation to "Surface with Edges", you would use the representation proxy and use the property with the name "Representation", setting it to "Surface With Edges".  That property probably turns out to be at element [1] in the properties JSON.  So look at element [1] in the ui subsection of the JSON.  Under "values" you should see the possible strings that property can accept for a value.

Hope this helps,
Scott

 
Thanks,
Jordan
Jordan Deyton
Oak Ridge National Laboratory
Telephone: (865) 574-1091
Email: deytonjh@xxxxxxxx
On 2/27/2015 5:21 PM, Scott Wittenburg wrote:


On Fri, Feb 27, 2015 at 3:07 PM, Jordan Deyton <deytonjh@xxxxxxxx> wrote:
Scott, Sebastien, et al,

I have been trying to open up an Exodus file using the http_pvw_server.py script that you wrote. I have successfully opened and rendered the test file by sending RPC calls to a remote server. In particular, I used "file.server.directory.list" and "pv.proxy.manager.create.reader" to get the files open. The end result is that the Exodus file is successfully opened and rendered over the connection (huzzah!).

However, I haven't been able to figure out how to customize what exactly is displayed for the file. For instance, I'd like to be able to switch between "surface", "wireframe", "surface with edges", and other representations. I would also like to switch between the different variables in the "Color By" widget seen in the Web Vizualizer's "Representation" section. See the attached pictures for a little more context.

It looks like I might be able to pull the different variables from the proxy's properties as returned by "pv.proxy.manager.get", but I'm not sure what RPC method (if any) can be used to change these settings.

You're right that you can get the properties by the rpc method you mentioned.  This will give you back a json object with a lot of information, including parallel, ordered lists of property values and information on what kind of ui component could be used for each one.  Then you will call the "pv.proxy.manager.update" rpc method to update them.  See my second link below. 
 
Also, would anyone happen to have a link to the most recent ParaViewWeb documentation?


The top-level of that documentation is here:


But based on your questions, you may be most interested to skip right to here:


Hope this helps,
Scott

 
Thanks,
Jordan

--
Jordan Deyton
Oak Ridge National Laboratory
Telephone: (865) 574-1091
Email: deytonjh@xxxxxxxx








Back to the top