On Tue, Jan 18, 2011 at 10:41 AM, Steffen Oeltze <span dir="ltr">&lt;<a href="mailto:stoeltze@isg.cs.uni-magdeburg.de" target="_blank">stoeltze@isg.cs.uni-magdeburg.de</a>&gt;</span> wrote:<br><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">

DearAll,<br>
<br>
I plan to evaluate VTK for graph visualization and I wonder whether it provides the features listed below.<br>
For some features, I already found information online.<br>
<br>
- handle ~100 vertices and ~10000 edges (ok)<br>
- circular layout strategy (ok)<br>
- edge bundling (ok)<br>
- vertex/edge labeling (ok)<br>
<br>
- interactive selection of multiple vertices and edges by picking (???)<br></blockquote><div><br></div><div>Yes. See for example Views/Testing/Cxx/TestGraphLayoutView.cxx (run &quot;bin/ViewsCxxTests TestGraphLayoutView -I&quot;) with VTK testing on). If you want to do something with the selection you need to implement a callback.</div>

<div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
- modifying the edge thickness/width according to some edge weight (???)<br></blockquote><div><br></div><div>Not currently possible. To stress certain edges I normally use a color map for edges that changes their opacity based on the weight.</div>

<div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
- filtering vertices according to their degree (???)<br></blockquote><div><br></div><div>Yes. Use vtkVertexDegree followed by vtkThresholdGraph.</div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">


- filtering edges according to their weight (???)<br></blockquote><div><br></div><div>Yes, again vtkThresholdGraph.</div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">


- fast update when the set of vertices remains fixed but the set of connecting edges changes (???)<br></blockquote><div><br></div><div>Depends what you mean by fast. If you add them via VTK&#39;s pipeline, the topology structure and edge data arrays would be copied for any change, while the vertex data arrays would remain the same. If you perform &quot;out of band&quot; processing, where you directly manipulate the graph data structure outside the pipeline, it would be faster and would have less memory overhead.</div>
<div><br></div><div>Jeff</div>
<div><br></div></div>