[vtkusers] question about implicit surfaces and extractPolyDataGeometry - triangle mesh: getting elongated triangles

David Gobbi david.gobbi at gmail.com
Thu Jul 18 16:32:35 EDT 2013


Hi Michel,

Did you take my advice about using vtkLineSource::SetResolution() and
vtkTubeFilter::SetNumberOfSides() to specify how many triangles will
be produced?

The vtkTubeFilter will produce triangles directly, or to be more
precise, it produces triangle strips.

 - David

On Thu, Jul 18, 2013 at 2:27 PM, Audette, Michel A. <maudette at odu.edu> wrote:
> Hi again,
>
> I am able to get a cylinder, but I would like to produce a triangulated surface. However the triangles that I am getting, based on a wireframe visualization, are extremely elongated. I realize that this is probably something fairly obvious for VTK expert, but... Is there are VTK object that can postprocess my polygonal cylinder and produce a number of more compact triangles, suitable for a a finite-element study?
>
> Cheers,
>
> Michel
>
> Michel Audette, Ph.D.
> Assistant Professor,
> Department of Modeling, Simulation and Visualization Engineering,
> Old Dominion University,
> Norfolk, VA.
> ________________________________________
> From: vtkusers-bounces at vtk.org [vtkusers-bounces at vtk.org] on behalf of Audette, Michel A. [maudette at odu.edu]
> Sent: Thursday, July 18, 2013 3:25 PM
> To: David Gobbi
> Cc: vtkusers at vtk.org
> Subject: [Spam:6.0 SpamScore] Re: [vtkusers] question about implicit surfaces and extractPolyDataGeometry - trying to produce a triangle mesh of a cylinder
>
> Hi David,
>
> thanks for your quick reply. I'll give it a try. I assume that a vtkTriangleFilter finishes the triangulation of the polydata.
>
> Best wishes,
>
> Michel
>
> Michel Audette, Ph.D.
> Assistant Professor,
> Department of Modeling, Simulation and Visualization Engineering,
> Old Dominion University,
> Norfolk, VA.
> ________________________________________
> From: David Gobbi [david.gobbi at gmail.com]
> Sent: Thursday, July 18, 2013 3:18 PM
> To: Audette, Michel A.
> Cc: vtkusers at vtk.org
> Subject: Re: [vtkusers] question about implicit surfaces and extractPolyDataGeometry - trying to produce a triangle mesh of a cylinder
>
> Hi Michel,
>
> The best way to produce a cylinder is usually to use vtkLineSource,
> followed by vtkTubeFilter.  Use vtkLineSource::SetResolution to set
> the resolution along the line, and vtkTubeFilter::SetNumberOfSides to
> set the resolution around the cylinder.
>
> Also, vtkTubeFilter::CappingOn() can be used to set whether the ends
> of the cylinder are open or closed.
>
>  - David
>
> On Thu, Jul 18, 2013 at 12:52 PM, Audette, Michel A. <maudette at odu.edu> wrote:
>> Dear VTK users,
>>
>> I would like to use a cylindrical implicit function in order to produce a
>> triangulated cylindrical mesh. Looking at the testing example
>> extractPolyData.tcl , which includes the code below, I see both a
>> cylindrical function used as implicit function, as well as a sphere source
>> which is used in conjunction with SetInputConnection. Can someone illuminate
>> me on what purpose is served by the latter?
>>
>> If not, how can I produce a triangulated surface mesh of a cylinder, e.g.
>> vtkCylinder?
>>
>> Here is the relevant code in the tcl test file.
>>
>> vtkSphereSource sphere
>>   sphere SetThetaResolution 8
>>   sphere SetPhiResolution 16
>>   sphere SetRadius 1.5
>>
>> # Extraction stuff
>> vtkTransform t
>>     t RotateX 90
>> vtkCylinder cylfunc
>>     cylfunc SetRadius 0.5
>>     cylfunc SetTransform t
>> vtkExtractPolyDataGeometry extract
>>     extract SetInputConnection [sphere GetOutputPort]
>>     extract SetImplicitFunction cylfunc
>>     extract ExtractBoundaryCellsOn
>>
>> vtkPolyDataMapper  sphereMapper
>>     sphereMapper SetInputConnection [extract GetOutputPort]
>>     sphereMapper GlobalImmediateModeRenderingOn
>>
>> vtkActor sphereActor
>>     sphereActor SetMapper sphereMapper
>>
>> Thanks for your support.
>>
>> Michel
>> Michel Audette, Ph.D.
>> Assistant Professor,
>> Department of Modeling, Simulation and Visualization Engineering,
>> Old Dominion University,
>> Norfolk, VA.



More information about the vtkusers mailing list