<div class="gmail_extra">So I think I have solved the issues for my situations. I have attached my modified file, but the basic change I made was changing your definition of "largest" polygon for computation of the normal. I'm not sure how you have defined largest, but I changed largest to be the largest number of points. This seems to work for my test cases, however I think a better generalization would be the largest area.</div>
<div class="gmail_extra"><br></div><div class="gmail_extra">Let me know if this makes sense and passes your test cases <br><br><pre style="margin-top:0px;margin-bottom:0px"><span style="color:#008000">//</span><span style="color:#c0c0c0"> </span><span style="color:#008000">if</span><span style="color:#c0c0c0"> </span><span style="color:#008000">no</span><span style="color:#c0c0c0"> </span><span style="color:#008000">normal</span><span style="color:#c0c0c0"> </span><span style="color:#008000">specified,</span><span style="color:#c0c0c0"> </span><span style="color:#008000">then</span><span style="color:#c0c0c0"> </span><span style="color:#008000">compute</span><span style="color:#c0c0c0"> </span><span style="color:#008000">one</span><span style="color:#c0c0c0"> </span><span style="color:#008000">from</span><span style="color:#c0c0c0"> </span><span style="color:#008000">largest</span><span style="color:#c0c0c0"> </span><span style="color:#008000">contour</span></pre>
<pre style="margin-top:0px;margin-bottom:0px"><span style="color:#c0c0c0"> </span><span style="color:#008000">//</span><span style="color:#c0c0c0"> </span><span style="color:#008000">This</span><span style="color:#c0c0c0"> </span><span style="color:#008000">change</span><span style="color:#c0c0c0"> </span><span style="color:#008000">made</span><span style="color:#c0c0c0"> </span><span style="color:#008000">by</span><span style="color:#c0c0c0"> </span><span style="color:#008000">Jon</span><span style="color:#c0c0c0"> </span><span style="color:#008000">on</span><span style="color:#c0c0c0"> </span><span style="color:#008000">4/25/2012.</span></pre>
<pre style="margin-top:0px;margin-bottom:0px"><span style="color:#c0c0c0"> </span><span style="color:#008000">//</span><span style="color:#c0c0c0"> </span><span style="color:#008000">It</span><span style="color:#c0c0c0"> </span><span style="color:#008000">would</span><span style="color:#c0c0c0"> </span><span style="color:#008000">appear</span><span style="color:#c0c0c0"> </span><span style="color:#008000">that</span><span style="color:#c0c0c0"> </span><span style="color:#008000">at</span><span style="color:#c0c0c0"> </span><span style="color:#008000">least</span><span style="color:#c0c0c0"> </span><span style="color:#008000">for</span><span style="color:#c0c0c0"> </span><span style="color:#008000">my</span><span style="color:#c0c0c0"> </span><span style="color:#008000">examples,</span><span style="color:#c0c0c0"> </span><span style="color:#008000">the</span><span style="color:#c0c0c0"> </span><span style="color:#008000">calculation</span><span style="color:#c0c0c0"> </span><span style="color:#008000">of</span></pre>
<pre style="margin-top:0px;margin-bottom:0px"><span style="color:#c0c0c0"> </span><span style="color:#008000">//</span><span style="color:#c0c0c0"> </span><span style="color:#008000">"largest"</span><span style="color:#c0c0c0"> </span><span style="color:#008000">is</span><span style="color:#c0c0c0"> </span><span style="color:#008000">not</span><span style="color:#c0c0c0"> </span><span style="color:#008000">correct.</span><span style="color:#c0c0c0"> </span><span style="color:#008000">I</span><span style="color:#c0c0c0"> </span><span style="color:#008000">go</span><span style="color:#c0c0c0"> </span><span style="color:#008000">ahead</span><span style="color:#c0c0c0"> </span><span style="color:#008000">and</span><span style="color:#c0c0c0"> </span><span style="color:#008000">define</span><span style="color:#c0c0c0"> </span><span style="color:#008000">"largest"</span><span style="color:#c0c0c0"> </span><span style="color:#008000">as</span><span style="color:#c0c0c0"> </span><span style="color:#008000">that</span><span style="color:#c0c0c0"> </span><span style="color:#008000">contour</span></pre>
<pre style="margin-top:0px;margin-bottom:0px"><span style="color:#c0c0c0"> </span><span style="color:#008000">//</span><span style="color:#c0c0c0"> </span><span style="color:#008000">with</span><span style="color:#c0c0c0"> </span><span style="color:#008000">the</span><span style="color:#c0c0c0"> </span><span style="color:#008000">largest</span><span style="color:#c0c0c0"> </span><span style="color:#008000">number</span><span style="color:#c0c0c0"> </span><span style="color:#008000">of</span><span style="color:#c0c0c0"> </span><span style="color:#008000">points.</span><span style="color:#c0c0c0"> </span><span style="color:#008000">This</span><span style="color:#c0c0c0"> </span><span style="color:#008000">seems</span><span style="color:#c0c0c0"> </span><span style="color:#008000">to</span><span style="color:#c0c0c0"> </span><span style="color:#008000">work</span><span style="color:#c0c0c0"> </span><span style="color:#008000">for</span><span style="color:#c0c0c0"> </span><span style="color:#008000">my</span><span style="color:#c0c0c0"> </span><span style="color:#008000">test</span><span style="color:#c0c0c0"> </span><span style="color:#008000">cases,</span></pre>
<pre style="margin-top:0px;margin-bottom:0px"><span style="color:#c0c0c0"> </span><span style="color:#008000">//</span><span style="color:#c0c0c0"> </span><span style="color:#008000">however</span><span style="color:#c0c0c0"> </span><span style="color:#008000">a</span><span style="color:#c0c0c0"> </span><span style="color:#008000">good</span><span style="color:#c0c0c0"> </span><span style="color:#008000">generalization</span><span style="color:#c0c0c0"> </span><span style="color:#008000">would</span><span style="color:#c0c0c0"> </span><span style="color:#008000">be</span><span style="color:#c0c0c0"> </span><span style="color:#008000">to</span><span style="color:#c0c0c0"> </span><span style="color:#008000">define</span><span style="color:#c0c0c0"> </span><span style="color:#008000">"largest"</span><span style="color:#c0c0c0"> </span><span style="color:#008000">as</span><span style="color:#c0c0c0"> </span><span style="color:#008000">the</span><span style="color:#c0c0c0"> </span><span style="color:#008000">polygon</span></pre>
<pre style="margin-top:0px;margin-bottom:0px"><span style="color:#c0c0c0"> </span><span style="color:#008000">//</span><span style="color:#c0c0c0"> </span><span style="color:#008000">with</span><span style="color:#c0c0c0"> </span><span style="color:#008000">the</span><span style="color:#c0c0c0"> </span><span style="color:#008000">largest</span><span style="color:#c0c0c0"> </span><span style="color:#008000">area.</span></pre>
<pre style="margin-top:0px;margin-bottom:0px"><span style="color:#c0c0c0"> </span><span style="color:#808000">double</span><span style="color:#c0c0c0"> </span>computedNormal[<span style="color:#000080">3</span>]<span style="color:#c0c0c0"> </span>=<span style="color:#c0c0c0"> </span>{<span style="color:#c0c0c0"> </span><span style="color:#000080">0.0</span>,<span style="color:#c0c0c0"> </span><span style="color:#000080">0.0</span>,<span style="color:#c0c0c0"> </span><span style="color:#000080">1.0</span><span style="color:#c0c0c0"> </span>};</pre>
<pre style="margin-top:0px;margin-bottom:0px"><span style="color:#c0c0c0"> </span><span style="color:#808000">if</span><span style="color:#c0c0c0"> </span>(normal<span style="color:#c0c0c0"> </span>==<span style="color:#c0c0c0"> </span><span style="color:#000080">0</span>)</pre>
<pre style="margin-top:0px;margin-bottom:0px"><span style="color:#c0c0c0"> </span>{</pre>
<pre style="margin-top:0px;margin-bottom:0px"><span style="color:#c0c0c0"> </span><span style="color:#008000">//double</span><span style="color:#c0c0c0"> </span><span style="color:#008000">maxnorm2</span><span style="color:#c0c0c0"> </span><span style="color:#008000">=</span><span style="color:#c0c0c0"> </span><span style="color:#008000">0;</span></pre>
<pre style="margin-top:0px;margin-bottom:0px"><span style="color:#c0c0c0"> </span><span style="color:#808000">double</span><span style="color:#c0c0c0"> </span>maxPoints<span style="color:#c0c0c0"> </span>=<span style="color:#c0c0c0"> </span><span style="color:#000080">0</span>;</pre>
<pre style="margin-top:0px;margin-bottom:0px"><span style="color:#c0c0c0"> </span><span style="color:#800080">size_t</span><span style="color:#c0c0c0"> </span>numNewPolys<span style="color:#c0c0c0"> </span>=<span style="color:#c0c0c0"> </span>newPolys.size();</pre>
<pre style="margin-top:0px;margin-bottom:0px"><span style="color:#c0c0c0"> </span><span style="color:#808000">for</span><span style="color:#c0c0c0"> </span>(<span style="color:#800080">size_t</span><span style="color:#c0c0c0"> </span>i<span style="color:#c0c0c0"> </span>=<span style="color:#c0c0c0"> </span><span style="color:#000080">0</span>;<span style="color:#c0c0c0"> </span>i<span style="color:#c0c0c0"> </span><<span style="color:#c0c0c0"> </span>numNewPolys;<span style="color:#c0c0c0"> </span>i++)</pre>
<pre style="margin-top:0px;margin-bottom:0px"><span style="color:#c0c0c0"> </span>{</pre>
<pre style="margin-top:0px;margin-bottom:0px"><span style="color:#c0c0c0"> </span><span style="color:#800080">vtkCTPFPoly</span><span style="color:#c0c0c0"> </span>&poly<span style="color:#c0c0c0"> </span>=<span style="color:#c0c0c0"> </span>newPolys[i];</pre>
<pre style="margin-top:0px;margin-bottom:0px"><span style="color:#c0c0c0"> </span><span style="color:#800080">size_t</span><span style="color:#c0c0c0"> </span>numPoints<span style="color:#c0c0c0"> </span>=<span style="color:#c0c0c0"> </span>poly.size();</pre>
<pre style="margin-top:0px;margin-bottom:0px"><span style="color:#c0c0c0"> </span><span style="color:#808000">double</span><span style="color:#c0c0c0"> </span>n[<span style="color:#000080">3</span>]<span style="color:#c0c0c0"> </span>=<span style="color:#c0c0c0"> </span>{<span style="color:#c0c0c0"> </span><span style="color:#000080">0.0</span>,<span style="color:#c0c0c0"> </span><span style="color:#000080">0.0</span>,<span style="color:#c0c0c0"> </span><span style="color:#000080">0.0</span><span style="color:#c0c0c0"> </span>};</pre>
<pre style="margin-top:0px;margin-bottom:0px"><span style="color:#c0c0c0"> </span><span style="color:#808000">double</span><span style="color:#c0c0c0"> </span>v0[<span style="color:#000080">3</span>],<span style="color:#c0c0c0"> </span>v1[<span style="color:#000080">3</span>],<span style="color:#c0c0c0"> </span>v2[<span style="color:#000080">3</span>];</pre>
<pre style="margin-top:0px;margin-bottom:0px"><span style="color:#c0c0c0"> </span>points->GetPoint(poly[numPoints-<span style="color:#000080">1</span>],<span style="color:#c0c0c0"> </span>v1);</pre>
<pre style="margin-top:0px;margin-bottom:0px"><span style="color:#c0c0c0"> </span>points->GetPoint(poly[<span style="color:#000080">0</span>],<span style="color:#c0c0c0"> </span>v2);</pre>
<pre style="margin-top:0px;margin-bottom:0px"></pre>
<pre style="margin-top:0px;margin-bottom:0px"><span style="color:#c0c0c0"> </span><span style="color:#808000">for</span><span style="color:#c0c0c0"> </span>(<span style="color:#800080">size_t</span><span style="color:#c0c0c0"> </span>j<span style="color:#c0c0c0"> </span>=<span style="color:#c0c0c0"> </span><span style="color:#000080">1</span>;<span style="color:#c0c0c0"> </span>j<span style="color:#c0c0c0"> </span><<span style="color:#c0c0c0"> </span>numPoints;<span style="color:#c0c0c0"> </span>j++)</pre>
<pre style="margin-top:0px;margin-bottom:0px"><span style="color:#c0c0c0"> </span>{</pre>
<pre style="margin-top:0px;margin-bottom:0px"><span style="color:#c0c0c0"> </span>v0[<span style="color:#000080">0</span>]<span style="color:#c0c0c0"> </span>=<span style="color:#c0c0c0"> </span>v1[<span style="color:#000080">0</span>];<span style="color:#c0c0c0"> </span>v0[<span style="color:#000080">1</span>]<span style="color:#c0c0c0"> </span>=<span style="color:#c0c0c0"> </span>v1[<span style="color:#000080">1</span>];<span style="color:#c0c0c0"> </span>v0[<span style="color:#000080">2</span>]<span style="color:#c0c0c0"> </span>=<span style="color:#c0c0c0"> </span>v1[<span style="color:#000080">2</span>];</pre>
<pre style="margin-top:0px;margin-bottom:0px"><span style="color:#c0c0c0"> </span>v1[<span style="color:#000080">0</span>]<span style="color:#c0c0c0"> </span>=<span style="color:#c0c0c0"> </span>v2[<span style="color:#000080">0</span>];<span style="color:#c0c0c0"> </span>v1[<span style="color:#000080">1</span>]<span style="color:#c0c0c0"> </span>=<span style="color:#c0c0c0"> </span>v2[<span style="color:#000080">1</span>];<span style="color:#c0c0c0"> </span>v1[<span style="color:#000080">2</span>]<span style="color:#c0c0c0"> </span>=<span style="color:#c0c0c0"> </span>v2[<span style="color:#000080">2</span>];</pre>
<pre style="margin-top:0px;margin-bottom:0px"><span style="color:#c0c0c0"> </span>points->GetPoint(poly[j],<span style="color:#c0c0c0"> </span>v2);</pre>
<pre style="margin-top:0px;margin-bottom:0px"></pre>
<pre style="margin-top:0px;margin-bottom:0px"><span style="color:#c0c0c0"> </span><span style="color:#808000">double</span><span style="color:#c0c0c0"> </span>ax<span style="color:#c0c0c0"> </span>=<span style="color:#c0c0c0"> </span>v2[<span style="color:#000080">0</span>]<span style="color:#c0c0c0"> </span>-<span style="color:#c0c0c0"> </span>v1[<span style="color:#000080">0</span>];</pre>
<pre style="margin-top:0px;margin-bottom:0px"><span style="color:#c0c0c0"> </span><span style="color:#808000">double</span><span style="color:#c0c0c0"> </span>ay<span style="color:#c0c0c0"> </span>=<span style="color:#c0c0c0"> </span>v2[<span style="color:#000080">1</span>]<span style="color:#c0c0c0"> </span>-<span style="color:#c0c0c0"> </span>v1[<span style="color:#000080">1</span>];</pre>
<pre style="margin-top:0px;margin-bottom:0px"><span style="color:#c0c0c0"> </span><span style="color:#808000">double</span><span style="color:#c0c0c0"> </span>az<span style="color:#c0c0c0"> </span>=<span style="color:#c0c0c0"> </span>v2[<span style="color:#000080">2</span>]<span style="color:#c0c0c0"> </span>-<span style="color:#c0c0c0"> </span>v1[<span style="color:#000080">2</span>];</pre>
<pre style="margin-top:0px;margin-bottom:0px"><span style="color:#c0c0c0"> </span><span style="color:#808000">double</span><span style="color:#c0c0c0"> </span>bx<span style="color:#c0c0c0"> </span>=<span style="color:#c0c0c0"> </span>v0[<span style="color:#000080">0</span>]<span style="color:#c0c0c0"> </span>-<span style="color:#c0c0c0"> </span>v1[<span style="color:#000080">0</span>];</pre>
<pre style="margin-top:0px;margin-bottom:0px"><span style="color:#c0c0c0"> </span><span style="color:#808000">double</span><span style="color:#c0c0c0"> </span>by<span style="color:#c0c0c0"> </span>=<span style="color:#c0c0c0"> </span>v0[<span style="color:#000080">1</span>]<span style="color:#c0c0c0"> </span>-<span style="color:#c0c0c0"> </span>v1[<span style="color:#000080">1</span>];</pre>
<pre style="margin-top:0px;margin-bottom:0px"><span style="color:#c0c0c0"> </span><span style="color:#808000">double</span><span style="color:#c0c0c0"> </span>bz<span style="color:#c0c0c0"> </span>=<span style="color:#c0c0c0"> </span>v0[<span style="color:#000080">2</span>]<span style="color:#c0c0c0"> </span>-<span style="color:#c0c0c0"> </span>v1[<span style="color:#000080">2</span>];</pre>
<pre style="margin-top:0px;margin-bottom:0px"></pre>
<pre style="margin-top:0px;margin-bottom:0px"><span style="color:#c0c0c0"> </span>n[<span style="color:#000080">0</span>]<span style="color:#c0c0c0"> </span>+=<span style="color:#c0c0c0"> </span>(ay<span style="color:#c0c0c0"> </span>*<span style="color:#c0c0c0"> </span>bz<span style="color:#c0c0c0"> </span>-<span style="color:#c0c0c0"> </span>az<span style="color:#c0c0c0"> </span>*<span style="color:#c0c0c0"> </span>by);</pre>
<pre style="margin-top:0px;margin-bottom:0px"><span style="color:#c0c0c0"> </span>n[<span style="color:#000080">1</span>]<span style="color:#c0c0c0"> </span>+=<span style="color:#c0c0c0"> </span>(az<span style="color:#c0c0c0"> </span>*<span style="color:#c0c0c0"> </span>bx<span style="color:#c0c0c0"> </span>-<span style="color:#c0c0c0"> </span>ax<span style="color:#c0c0c0"> </span>*<span style="color:#c0c0c0"> </span>bz);</pre>
<pre style="margin-top:0px;margin-bottom:0px"><span style="color:#c0c0c0"> </span>n[<span style="color:#000080">2</span>]<span style="color:#c0c0c0"> </span>+=<span style="color:#c0c0c0"> </span>(ax<span style="color:#c0c0c0"> </span>*<span style="color:#c0c0c0"> </span>by<span style="color:#c0c0c0"> </span>-<span style="color:#c0c0c0"> </span>ay<span style="color:#c0c0c0"> </span>*<span style="color:#c0c0c0"> </span>bx);</pre>
<pre style="margin-top:0px;margin-bottom:0px"><span style="color:#c0c0c0"> </span>}</pre>
<pre style="margin-top:0px;margin-bottom:0px"></pre>
<pre style="margin-top:0px;margin-bottom:0px"><span style="color:#c0c0c0"> </span><span style="color:#808000">double</span><span style="color:#c0c0c0"> </span>norm2<span style="color:#c0c0c0"> </span>=<span style="color:#c0c0c0"> </span>n[<span style="color:#000080">0</span>]*n[<span style="color:#000080">0</span>]<span style="color:#c0c0c0"> </span>+<span style="color:#c0c0c0"> </span>n[<span style="color:#000080">1</span>]*n[<span style="color:#000080">1</span>]<span style="color:#c0c0c0"> </span>+<span style="color:#c0c0c0"> </span>n[<span style="color:#000080">2</span>]*n[<span style="color:#000080">2</span>];</pre>
<pre style="margin-top:0px;margin-bottom:0px"><span style="color:#c0c0c0"> </span><span style="color:#808000">if</span><span style="color:#c0c0c0"> </span>(numPoints<span style="color:#c0c0c0"> </span>><span style="color:#c0c0c0"> </span>maxPoints)</pre>
<pre style="margin-top:0px;margin-bottom:0px"><span style="color:#c0c0c0"> </span>{</pre>
<pre style="margin-top:0px;margin-bottom:0px"><span style="color:#c0c0c0"> </span>computedNormal[<span style="color:#000080">0</span>]<span style="color:#c0c0c0"> </span>=<span style="color:#c0c0c0"> </span>-n[<span style="color:#000080">0</span>]/norm2;</pre>
<pre style="margin-top:0px;margin-bottom:0px"><span style="color:#c0c0c0"> </span>computedNormal[<span style="color:#000080">1</span>]<span style="color:#c0c0c0"> </span>=<span style="color:#c0c0c0"> </span>-n[<span style="color:#000080">1</span>]/norm2;</pre>
<pre style="margin-top:0px;margin-bottom:0px"><span style="color:#c0c0c0"> </span>computedNormal[<span style="color:#000080">2</span>]<span style="color:#c0c0c0"> </span>=<span style="color:#c0c0c0"> </span>-n[<span style="color:#000080">2</span>]/norm2;</pre>
<pre style="margin-top:0px;margin-bottom:0px"><span style="color:#c0c0c0"> </span><span style="color:#008000">//maxnorm2</span><span style="color:#c0c0c0"> </span><span style="color:#008000">=</span><span style="color:#c0c0c0"> </span><span style="color:#008000">norm2;</span></pre>
<pre style="margin-top:0px;margin-bottom:0px"><span style="color:#c0c0c0"> </span>maxPoints<span style="color:#c0c0c0"> </span>=<span style="color:#c0c0c0"> </span>numPoints;</pre>
<pre style="margin-top:0px;margin-bottom:0px"><span style="color:#c0c0c0"> </span>}</pre>
<pre style="margin-top:0px;margin-bottom:0px"><span style="color:#c0c0c0"> </span>}</pre>
<pre style="margin-top:0px;margin-bottom:0px"><span style="color:#c0c0c0"> </span>normal<span style="color:#c0c0c0"> </span>=<span style="color:#c0c0c0"> </span>computedNormal;</pre>
<pre style="margin-top:0px;margin-bottom:0px"><span style="color:#c0c0c0"> </span>}</pre><br><div class="gmail_quote">On Tue, Apr 24, 2012 at 9:38 PM, Jonathan Morra <span dir="ltr"><<a href="mailto:jonmorra@gmail.com" target="_blank">jonmorra@gmail.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="gmail_extra">I've been looking at this all day, and I think the answer lies within the vtkCTPFCheckPolygonSense method. It would appear that for complex drawings which are correctly filled in, this method returns a sense of 1 for all but the outer contour and incorrectly filled in contours return a sense of 0 for all but the outer contour. Before I continue down this road, I was wondering if there might be a more straightforward way to solve my problem.</div>
<div class="gmail_extra"><br></div><div class="gmail_extra">I have a 3D binary volume from which I am extracting a contour for visualization using vtkMarchingSquares and a 2D region. I want to visualize the interior of this contour with varying levels of opacity. Is there another way to do this other than</div>
<div class="gmail_extra">1. Use vtkMarchingSquares to vtkStripper to generate a 2D mesh</div><div class="gmail_extra">2. Run 2D mesh through <span style>vtkContourToPolygonFilter</span></div>
<div class="gmail_extra">3. Visualize</div><div class="gmail_extra"><br></div><div class="gmail_extra">Is there someway to just tell vtkMarchingSquares to fill in the output, or maybe something else I haven't thought of?<div>
<div class="h5"><br>
<br><div class="gmail_quote">On Mon, Apr 23, 2012 at 9:20 AM, Jonathan Morra <span dir="ltr"><<a href="mailto:jonmorra@gmail.com" target="_blank">jonmorra@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div class="gmail_extra">I'm just getting around to looking into this now. I'll let you know if I fix this for my case. On a related note, does there exist a filter which takes as input a specified 2D vtkPolyData, and a set of candidate 2D vtkPolyDatas, and returns a list of those candidate vtkPolyDatas which are wholly inside the specified input? This seems to be related to this filter.<div>
<div><br>
<br><div class="gmail_quote">On Thu, Apr 19, 2012 at 11:03 AM, David Gobbi <span dir="ltr"><<a href="mailto:david.gobbi@gmail.com" target="_blank">david.gobbi@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Hi Jonathan,<br>
<br>
This is why I haven't added this filter to VTK yet. When the input<br>
has multiple contours, the code doesn't yet have the necessary logic<br>
for determining which contours are holes. In your case, it has<br>
incorrectly marked the large contour as a hole.<br>
<br>
Unfortunately I cannot provide you with a timeline for when I will<br>
finish this filter, lately I've been crazy busy on other projects.<br>
But if you want to give it a shot yourself, take a look at the code<br>
for vtkContourToPolygonFilter::MakePolysFromContours(). The<br>
section that needs to be modified is the block that starts with<br>
"if (normal == 0)".<br>
<span><font color="#888888"><br>
- David<br>
</font></span><div><br>
<br>
On Thu, Apr 19, 2012 at 11:44 AM, Jonathan Morra <<a href="mailto:jonmorra@gmail.com" target="_blank">jonmorra@gmail.com</a>> wrote:<br>
><br>
> After using your filter for a little while, for the most part it works great, however I have discovered a few cases where it doesn't work. I've attached a screen shot showing a failure, The first image is the input vtkPolyData, and the second is the result of running through your filter. Can you determine what is going on? If not, I'd be happy to give you the poly data I'm using, just let me know how to export it to disk, and I can email it to you.<br>
><br>
> Thanks<br>
><br>
> PS The behavior seems unpredictable, as sometimes with shapes just as complicated it works fine, I can't seem to tell what makes it fail.<br>
><br>
><br>
><br>
><br>
><br>
><br>
</div><div><div>> On Tue, Apr 10, 2012 at 12:26 PM, David Gobbi <<a href="mailto:david.gobbi@gmail.com" target="_blank">david.gobbi@gmail.com</a>> wrote:<br>
>><br>
>> Use the PickableOff() method (on the actor, not the data).<br>
>><br>
>> On Tue, Apr 10, 2012 at 1:17 PM, Jonathan Morra <<a href="mailto:jonmorra@gmail.com" target="_blank">jonmorra@gmail.com</a>> wrote:<br>
>> > One more question along this same line. Now that I have opaque vtkPolyData,<br>
>> > I'm noticing that my vtkPicker is no longer hitting the same data it was<br>
>> > before, it's hitting the now opaque poly data. This makes sense to me, but<br>
>> > I don't want it to happen. Is there a way to tell the vtkPicker to ignore<br>
>> > some vtkPolyData (ie always pick the underlying data).<br>
>> ><br>
>> > Thanks<br>
><br>
><br>
</div></div></blockquote></div><br></div></div></div>
</blockquote></div><br></div></div></div>
</blockquote></div><br></div>