Extrude output of delaunay 2D


I wanted to know whether it is possible to extrude the output from vtkDelaunay2D. I am trying to create a solid whose cross section is a semi-ellipse. I first created a polyData containing an arc attached to a line but when I extrude this I don’t get the faces of the cylinder. So I filled in my polyData with a Delaunay2D but when I try to extrude the GetOutput of this algorithm, it says there is nothing to extrude.

Here is my code:

angle = 0
majorAxis = 90
minorAxis = 50
xCenter = 0.0
yCenter = 0.0
maxAngle = 180.0

points = vtk.vtkPoints()
idx = 0
while angle <= 2.0 * vtk.vtkMath.Pi() * maxAngle / 360.0 + (vtk.vtkMath.Pi() / 100.0):
points.InsertNextPoint(majorAxis * math.cos(angle) + centerX,
minorAxis * math.sin(angle) + centerY,
angle = angle + (vtk.vtkMath.Pi() / 60.0)
idx += 1
points.InsertNextPoint(r1 + xCenter, yCenter, 0.0)
idx += 1

line = vtk.vtkPolyLine()
for i in range(0, idx):
line.GetPointIds().SetId(i, i)

lines = vtk.vtkCellArray()

polyData = vtk.vtkPolyData()

delny = vtk.vtkDelaunay2D()

extruder = vtk.vtkLinearExtrusionFilter()
extruder.SetVector( 0, 0, 80 )

You might like to try this alternative method: Capped Sphere. You can modify the the equatios to generate a variety of surfaces.

Thanks for the suggestion! What is the best way to subtract two volumes from each other, if both volumes are the output of an extrusion filter? I tried to use vtkBooleanOperationPolyDataFilter but it says there are no points to operate on.