#!/usr/bin/env python

import vtk


quadPoints = vtk.vtkPoints()
quadPoints.SetNumberOfPoints(4)

# 4 points for planar quad

quadPoints.InsertPoint(0, 0.0, 0, 0)
quadPoints.InsertPoint(1, 0.1, 0, 0)
quadPoints.InsertPoint(2, 0.1, 1, 0)
quadPoints.InsertPoint(3, 0.0, 1, 0)

aQuadGrid1 = vtk.vtkPolyData()
aQuadGrid1.Allocate(1, 1)
aQuadGrid1.SetPoints(quadPoints)

ids = vtk.vtkIdList()
ids.SetNumberOfIds(4)

# add one quad

ids.SetId(0, 0)
ids.SetId(1, 1)
ids.SetId(2, 2)
ids.SetId(3, 3)
aQuadGrid1.InsertNextCell(7, ids)

# create mapper and actor
aQuadMapper1 = vtk.vtkPolyDataMapper()
aQuadMapper1.SetInput(aQuadGrid1)
aQuadActor1 = vtk.vtkActor()
aQuadActor1.SetMapper(aQuadMapper1)

transform = vtk.vtkTransform()
transform.Scale(10,1,1)
aQuadActor1.SetUserTransform(transform)

# Create the usual rendering stuff.
ren = vtk.vtkRenderer()
renWin = vtk.vtkRenderWindow()
renWin.SetSize(600, 200)
renWin.AddRenderer(ren)
iren = vtk.vtkRenderWindowInteractor()
iren.SetRenderWindow(renWin)
picker = vtk.vtkCellPicker()
iren.SetPicker(picker)

ren.AddViewProp(aQuadActor1)

ren.ResetCamera()

# Render the scene and start interaction.
iren.Initialize()
renWin.Render()
iren.Start()

