<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=Windows-1252">
</head>
<body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; font-family: Calibri, sans-serif; font-size: 14px; color: rgb(0, 0, 0);">
<div>According to the vtkPlaneSource documentation, you aren’t really supposed to define the plane with the SetNormal function. You are supposed to define it with SetPoint1, SetPoint2 and SetCenter. Another popular way of making the plane you want is to start
out with the default plane – which is centered at the origin, perpendicular to the z axis, and has an x-direction measurement of 1, and a y-direction measurement of 1. You then use vtkTransform to make it the shape you want it to be.</div>
<div><br>
</div>
<div>I was going to give you a working example, but ran into something that I didn’t understand.</div>
<div>I thought this would make a plane that was 2 units in x, 1 unit in y, and had a center at (1, 0.5) - which seems to be what ParaView does with it … however it seems to come out as a parallelogram?</div>
<div><br>
</div>
<div>import vtk</div>
<div><br>
</div>
<div>plane = vtk.vtkPlaneSource()</div>
<div>plane.SetPoint1(2.0, 0.0, 0.0)</div>
<div>plane.SetPoint2(0.0, 1.0, 0.0)</div>
<div>plane.SetCenter(0.0, 0.0, 0.0)</div>
<div>plane.Update()</div>
<div><br>
</div>
<div>mapper = vtk.vtkPolyDataMapper()</div>
<div>mapper.SetInputData(plane.GetOutput())</div>
<div><br>
</div>
<div>actor = vtk.vtkActor()</div>
<div>actor.SetMapper(mapper)</div>
<div><br>
</div>
<div>renderer = vtk.vtkRenderer()</div>
<div>renderer.AddActor(actor)</div>
<div><br>
</div>
<div>render_window = vtk.vtkRenderWindow()</div>
<div>render_window.AddRenderer(renderer)</div>
<div><br>
</div>
<div>render_window_interactor = vtk.vtkRenderWindowInteractor()</div>
<div>render_window_interactor.SetRenderWindow(render_window)</div>
<div><br>
</div>
<div>renderer.SetBackground(0.1, 0.3, 0.9)</div>
<div>render_window_interactor.Start()</div>
</body>
</html>