本文整理汇总了C#中vtkRenderWindow.SetMultiSamples方法的典型用法代码示例。如果您正苦于以下问题:C# vtkRenderWindow.SetMultiSamples方法的具体用法?C# vtkRenderWindow.SetMultiSamples怎么用?C# vtkRenderWindow.SetMultiSamples使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类vtkRenderWindow
的用法示例。
在下文中一共展示了vtkRenderWindow.SetMultiSamples方法的10个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: AVTenEllip
/// <summary>
/// The main entry method called by the CSharp driver
/// </summary>
/// <param name="argv"></param>
public static void AVTenEllip(String [] argv)
{
//Prefix Content is: ""
// create tensor ellipsoids[]
// Create the RenderWindow, Renderer and interactive renderer[]
//[]
ren1 = vtkRenderer.New();
renWin = vtkRenderWindow.New();
renWin.SetMultiSamples(0);
renWin.AddRenderer((vtkRenderer)ren1);
iren = new vtkRenderWindowInteractor();
iren.SetRenderWindow((vtkRenderWindow)renWin);
//[]
// Create tensor ellipsoids[]
//[]
// generate tensors[]
ptLoad = new vtkPointLoad();
ptLoad.SetLoadValue((double)100.0);
ptLoad.SetSampleDimensions((int)6,(int)6,(int)6);
ptLoad.ComputeEffectiveStressOn();
ptLoad.SetModelBounds((double)-10,(double)10,(double)-10,(double)10,(double)-10,(double)10);
// extract plane of data[]
plane = new vtkImageDataGeometryFilter();
plane.SetInputConnection((vtkAlgorithmOutput)ptLoad.GetOutputPort());
plane.SetExtent((int)2,(int)2,(int)0,(int)99,(int)0,(int)99);
// Generate ellipsoids[]
sphere = new vtkSphereSource();
sphere.SetThetaResolution((int)8);
sphere.SetPhiResolution((int)8);
ellipsoids = new vtkTensorGlyph();
ellipsoids.SetInputConnection((vtkAlgorithmOutput)ptLoad.GetOutputPort());
ellipsoids.SetSourceConnection((vtkAlgorithmOutput)sphere.GetOutputPort());
ellipsoids.SetScaleFactor((double)10);
ellipsoids.ClampScalingOn();
ellipNormals = new vtkPolyDataNormals();
ellipNormals.SetInputConnection((vtkAlgorithmOutput)ellipsoids.GetOutputPort());
// Map contour[]
lut = new vtkLogLookupTable();
lut.SetHueRange((double).6667,(double)0.0);
ellipMapper = vtkPolyDataMapper.New();
ellipMapper.SetInputConnection((vtkAlgorithmOutput)ellipNormals.GetOutputPort());
ellipMapper.SetLookupTable((vtkScalarsToColors)lut);
plane.Update();
//force update for scalar range[]
ellipMapper.SetScalarRange((double)((vtkDataSet)plane.GetOutput()).GetScalarRange()[0],(double)((vtkDataSet)plane.GetOutput()).GetScalarRange()[1]);
ellipActor = new vtkActor();
ellipActor.SetMapper((vtkMapper)ellipMapper);
//[]
// Create outline around data[]
//[]
outline = new vtkOutlineFilter();
outline.SetInputConnection((vtkAlgorithmOutput)ptLoad.GetOutputPort());
outlineMapper = vtkPolyDataMapper.New();
outlineMapper.SetInputConnection((vtkAlgorithmOutput)outline.GetOutputPort());
outlineActor = new vtkActor();
outlineActor.SetMapper((vtkMapper)outlineMapper);
outlineActor.GetProperty().SetColor((double)0,(double)0,(double)0);
//[]
// Create cone indicating application of load[]
//[]
coneSrc = new vtkConeSource();
coneSrc.SetRadius((double).5);
coneSrc.SetHeight((double)2);
coneMap = vtkPolyDataMapper.New();
coneMap.SetInputConnection((vtkAlgorithmOutput)coneSrc.GetOutputPort());
coneActor = new vtkActor();
coneActor.SetMapper((vtkMapper)coneMap);
coneActor.SetPosition((double)0,(double)0,(double)11);
coneActor.RotateY((double)90);
coneActor.GetProperty().SetColor((double)1,(double)0,(double)0);
camera = new vtkCamera();
camera.SetFocalPoint((double)0.113766,(double)-1.13665,(double)-1.01919);
camera.SetPosition((double)-29.4886,(double)-63.1488,(double)26.5807);
camera.SetViewAngle((double)24.4617);
camera.SetViewUp((double)0.17138,(double)0.331163,(double)0.927879);
camera.SetClippingRange((double)1,(double)100);
ren1.AddActor((vtkProp)ellipActor);
ren1.AddActor((vtkProp)outlineActor);
ren1.AddActor((vtkProp)coneActor);
ren1.SetBackground((double)1.0,(double)1.0,(double)1.0);
ren1.SetActiveCamera((vtkCamera)camera);
renWin.SetSize((int)400,(int)400);
renWin.Render();
// prevent the tk window from showing up then start the event loop[]
//deleteAllVTKObjects();
}
示例2: AVlabeledContours
/// <summary>
/// The main entry method called by the CSharp driver
/// </summary>
/// <param name="argv"></param>
public static void AVlabeledContours(String [] argv)
{
//Prefix Content is: ""
// demonstrate labeling of contour with scalar value[]
// Create the RenderWindow, Renderer and both Actors[]
//[]
ren1 = vtkRenderer.New();
renWin = vtkRenderWindow.New();
renWin.SetMultiSamples(0);
renWin.AddRenderer((vtkRenderer)ren1);
iren = new vtkRenderWindowInteractor();
iren.SetRenderWindow((vtkRenderWindow)renWin);
// Read a slice and contour it[]
v16 = new vtkVolume16Reader();
v16.SetDataDimensions((int)64,(int)64);
v16.GetOutput().SetOrigin((double)0.0,(double)0.0,(double)0.0);
v16.SetDataByteOrderToLittleEndian();
v16.SetFilePrefix((string)"" + (VTK_DATA_ROOT.ToString()) + "/Data/headsq/quarter");
v16.SetImageRange((int)45,(int)45);
v16.SetDataSpacing((double)3.2,(double)3.2,(double)1.5);
iso = new vtkContourFilter();
iso.SetInputConnection((vtkAlgorithmOutput)v16.GetOutputPort());
iso.GenerateValues((int)6,(double)500,(double)1150);
iso.Update();
numPts = iso.GetOutput().GetNumberOfPoints();
isoMapper = vtkPolyDataMapper.New();
isoMapper.SetInputConnection((vtkAlgorithmOutput)iso.GetOutputPort());
isoMapper.ScalarVisibilityOn();
isoMapper.SetScalarRange((double)((vtkDataSet)iso.GetOutput()).GetScalarRange()[0],(double)((vtkDataSet)iso.GetOutput()).GetScalarRange()[1]);
isoActor = new vtkActor();
isoActor.SetMapper((vtkMapper)isoMapper);
// Subsample the points and label them[]
mask = new vtkMaskPoints();
mask.SetInputConnection((vtkAlgorithmOutput)iso.GetOutputPort());
mask.SetOnRatio((int)(numPts/50));
mask.SetMaximumNumberOfPoints((int)50);
mask.RandomModeOn();
// Create labels for points - only show visible points[]
visPts = new vtkSelectVisiblePoints();
visPts.SetInputConnection((vtkAlgorithmOutput)mask.GetOutputPort());
visPts.SetRenderer((vtkRenderer)ren1);
ldm = new vtkLabeledDataMapper();
ldm.SetInputConnection((vtkAlgorithmOutput)mask.GetOutputPort());
// ldm SetLabelFormat "%g"[]
ldm.SetLabelModeToLabelScalars();
tprop = ldm.GetLabelTextProperty();
tprop.SetFontFamilyToArial();
tprop.SetFontSize((int)10);
tprop.SetColor((double)1,(double)0,(double)0);
contourLabels = new vtkActor2D();
contourLabels.SetMapper((vtkMapper2D)ldm);
// Add the actors to the renderer, set the background and size[]
//[]
ren1.AddActor2D((vtkProp)isoActor);
ren1.AddActor2D((vtkProp)contourLabels);
ren1.SetBackground((double)1,(double)1,(double)1);
renWin.SetSize((int)500,(int)500);
renWin.Render();
ren1.GetActiveCamera().Zoom((double)1.5);
// render the image[]
//[]
// prevent the tk window from showing up then start the event loop[]
//deleteAllVTKObjects();
}
示例3: AVLineIntersectQuadraticCells
//.........这里部分代码省略.........
aPyramid.GetPointIds().SetId((int)7,(int)7);
aPyramid.GetPointIds().SetId((int)8,(int)8);
aPyramid.GetPointIds().SetId((int)9,(int)9);
aPyramid.GetPointIds().SetId((int)10,(int)10);
aPyramid.GetPointIds().SetId((int)11,(int)11);
aPyramid.GetPointIds().SetId((int)12,(int)12);
aPyramidGrid = new vtkUnstructuredGrid();
aPyramidGrid.Allocate((int)1,(int)1);
aPyramidGrid.InsertNextCell((int)aPyramid.GetCellType(),(vtkIdList)aPyramid.GetPointIds());
aPyramidGrid.SetPoints((vtkPoints)pyraPoints);
aPyramidGrid.GetPointData().SetScalars((vtkDataArray)pyraScalars);
pyraContours = new vtkClipDataSet();
pyraContours.SetInputData((vtkDataObject)aPyramidGrid);
pyraContours.SetValue((double)0.5);
aPyramidContourMapper = new vtkDataSetMapper();
aPyramidContourMapper.SetInputConnection((vtkAlgorithmOutput)pyraContours.GetOutputPort());
aPyramidContourMapper.ScalarVisibilityOff();
aPyramidMapper = new vtkDataSetMapper();
aPyramidMapper.SetInputData((vtkDataSet)aPyramidGrid);
aPyramidMapper.ScalarVisibilityOff();
aPyramidActor = new vtkActor();
aPyramidActor.SetMapper((vtkMapper)aPyramidMapper);
aPyramidActor.GetProperty().SetRepresentationToWireframe();
aPyramidActor.GetProperty().SetAmbient((double)1.0);
aPyramidContourActor = new vtkActor();
aPyramidContourActor.SetMapper((vtkMapper)aPyramidContourMapper);
aPyramidContourActor.GetProperty().SetAmbient((double)1.0);
// Create the rendering related stuff.[]
// Since some of our actors are a single vertex, we need to remove all[]
// cullers so the single vertex actors will render[]
ren1 = vtkRenderer.New();
ren1.GetCullers().RemoveAllItems();
renWin = vtkRenderWindow.New();
renWin.SetMultiSamples(0);
renWin.AddRenderer((vtkRenderer)ren1);
iren = new vtkRenderWindowInteractor();
iren.SetRenderWindow((vtkRenderWindow)renWin);
ren1.SetBackground((double).1,(double).2,(double).3);
renWin.SetSize((int)400,(int)200);
// specify properties[]
ren1.AddActor((vtkProp)aEdgeActor);
ren1.AddActor((vtkProp)aTriActor);
ren1.AddActor((vtkProp)aQuadActor);
ren1.AddActor((vtkProp)aTetActor);
ren1.AddActor((vtkProp)aHexActor);
ren1.AddActor((vtkProp)aWedgeActor);
ren1.AddActor((vtkProp)aPyramidActor);
// places everyone!![]
aTriActor.AddPosition((double)2,(double)0,(double)0);
aQuadActor.AddPosition((double)4,(double)0,(double)0);
aTetActor.AddPosition((double)6,(double)0,(double)0);
aHexActor.AddPosition((double)8,(double)0,(double)0);
aWedgeActor.AddPosition((double)10,(double)0,(double)0);
aPyramidActor.AddPosition((double)12,(double)0,(double)0);
BuildBackdrop(-1, 15, -1, 4, -1, 2, .1);
ren1.AddActor((vtkProp)base1);
base1.GetProperty().SetDiffuseColor((double).2,(double).2,(double).2);
ren1.AddActor((vtkProp)left);
left.GetProperty().SetDiffuseColor((double).2,(double).2,(double).2);
ren1.AddActor((vtkProp)back);
back.GetProperty().SetDiffuseColor((double).2,(double).2,(double).2);
ren1.ResetCamera();
ren1.GetActiveCamera().Dolly((double)2.5);
ren1.ResetCameraClippingRange();
renWin.Render();
// create a little scorecard above each of the cells. These are displayed[]
示例4: AVrectGrid
/// <summary>
/// The main entry method called by the CSharp driver
/// </summary>
/// <param name="argv"></param>
public static void AVrectGrid(String [] argv)
{
//Prefix Content is: ""
VTK_VARY_RADIUS_BY_VECTOR = 2;
// create pipeline[]
//[]
reader = new vtkDataSetReader();
reader.SetFileName((string)"" + (VTK_DATA_ROOT.ToString()) + "/Data/RectGrid2.vtk");
reader.Update();
toRectilinearGrid = new vtkCastToConcrete();
toRectilinearGrid.SetInputConnection((vtkAlgorithmOutput)reader.GetOutputPort());
toRectilinearGrid.Update();
plane = new vtkRectilinearGridGeometryFilter();
plane.SetInputData((vtkDataObject)toRectilinearGrid.GetRectilinearGridOutput());
plane.SetExtent((int)0,(int)100,(int)0,(int)100,(int)15,(int)15);
warper = new vtkWarpVector();
warper.SetInputConnection((vtkAlgorithmOutput)plane.GetOutputPort());
warper.SetScaleFactor((double)0.05);
planeMapper = new vtkDataSetMapper();
planeMapper.SetInputConnection((vtkAlgorithmOutput)warper.GetOutputPort());
planeMapper.SetScalarRange((double)0.197813,(double)0.710419);
planeActor = new vtkActor();
planeActor.SetMapper((vtkMapper)planeMapper);
cutPlane = new vtkPlane();
cutPlane.SetOrigin(reader.GetOutput().GetCenter()[0],reader.GetOutput().GetCenter()[1],reader.GetOutput().GetCenter()[2]);
cutPlane.SetNormal((double)1,(double)0,(double)0);
planeCut = new vtkCutter();
planeCut.SetInputData((vtkDataObject)toRectilinearGrid.GetRectilinearGridOutput());
planeCut.SetCutFunction((vtkImplicitFunction)cutPlane);
cutMapper = new vtkDataSetMapper();
cutMapper.SetInputConnection((vtkAlgorithmOutput)planeCut.GetOutputPort());
cutMapper.SetScalarRange((double)((vtkDataSet)reader.GetOutput()).GetPointData().GetScalars().GetRange()[0], (double)((vtkDataSet)reader.GetOutput()).GetPointData().GetScalars().GetRange()[1]);
cutActor = new vtkActor();
cutActor.SetMapper((vtkMapper)cutMapper);
iso = new vtkContourFilter();
iso.SetInputData((vtkDataObject)toRectilinearGrid.GetRectilinearGridOutput());
iso.SetValue((int)0,(double)0.7);
normals = new vtkPolyDataNormals();
normals.SetInputConnection((vtkAlgorithmOutput)iso.GetOutputPort());
normals.SetFeatureAngle((double)45);
isoMapper = vtkPolyDataMapper.New();
isoMapper.SetInputConnection((vtkAlgorithmOutput)normals.GetOutputPort());
isoMapper.ScalarVisibilityOff();
isoActor = new vtkActor();
isoActor.SetMapper((vtkMapper)isoMapper);
isoActor.GetProperty().SetColor((double) 1.0000, 0.8941, 0.7686 );
isoActor.GetProperty().SetRepresentationToWireframe();
streamer = new vtkStreamLine();
streamer.SetInputConnection((vtkAlgorithmOutput)reader.GetOutputPort());
streamer.SetStartPosition((double)-1.2,(double)-0.1,(double)1.3);
streamer.SetMaximumPropagationTime((double)500);
streamer.SetStepLength((double)0.05);
streamer.SetIntegrationStepLength((double)0.05);
streamer.SetIntegrationDirectionToIntegrateBothDirections();
streamTube = new vtkTubeFilter();
streamTube.SetInputConnection((vtkAlgorithmOutput)streamer.GetOutputPort());
streamTube.SetRadius((double)0.025);
streamTube.SetNumberOfSides((int)6);
streamTube.SetVaryRadius((int)VTK_VARY_RADIUS_BY_VECTOR);
mapStreamTube = vtkPolyDataMapper.New();
mapStreamTube.SetInputConnection((vtkAlgorithmOutput)streamTube.GetOutputPort());
mapStreamTube.SetScalarRange((double)((vtkDataSet)reader.GetOutput()).GetPointData().GetScalars().GetRange()[0], (double)((vtkDataSet)reader.GetOutput()).GetPointData().GetScalars().GetRange()[1]);
streamTubeActor = new vtkActor();
streamTubeActor.SetMapper((vtkMapper)mapStreamTube);
streamTubeActor.GetProperty().BackfaceCullingOn();
outline = new vtkOutlineFilter();
outline.SetInputData((vtkDataObject)toRectilinearGrid.GetRectilinearGridOutput());
outlineMapper = vtkPolyDataMapper.New();
outlineMapper.SetInputConnection((vtkAlgorithmOutput)outline.GetOutputPort());
outlineActor = new vtkActor();
outlineActor.SetMapper((vtkMapper)outlineMapper);
outlineActor.GetProperty().SetColor((double) 0.0000, 0.0000, 0.0000 );
// Graphics stuff[]
// Create the RenderWindow, Renderer and both Actors[]
//[]
ren1 = vtkRenderer.New();
renWin = vtkRenderWindow.New();
renWin.SetMultiSamples(0);
renWin.AddRenderer((vtkRenderer)ren1);
iren = new vtkRenderWindowInteractor();
iren.SetRenderWindow((vtkRenderWindow)renWin);
// Add the actors to the renderer, set the background and size[]
//[]
ren1.AddActor((vtkProp)outlineActor);
ren1.AddActor((vtkProp)planeActor);
ren1.AddActor((vtkProp)cutActor);
ren1.AddActor((vtkProp)isoActor);
ren1.AddActor((vtkProp)streamTubeActor);
ren1.SetBackground((double)1,(double)1,(double)1);
renWin.SetSize((int)400,(int)400);
cam1 = ren1.GetActiveCamera();
cam1.SetClippingRange((double)3.76213,(double)10.712);
cam1.SetFocalPoint((double)-0.0842503,(double)-0.136905,(double)0.610234);
cam1.SetPosition((double)2.53813,(double)2.2678,(double)-5.22172);
cam1.SetViewUp((double)-0.241047,(double)0.930635,(double)0.275343);
//.........这里部分代码省略.........
示例5: AVfieldToRGrid
//.........这里部分代码省略.........
plane.SetExtent((int)0,(int)100,(int)0,(int)100,(int)15,(int)15);
warper = new vtkWarpVector();
warper.SetInputConnection((vtkAlgorithmOutput)plane.GetOutputPort());
warper.SetScaleFactor((double)0.05);
planeMapper = new vtkDataSetMapper();
planeMapper.SetInputConnection((vtkAlgorithmOutput)warper.GetOutputPort());
planeMapper.SetScalarRange((double)0.197813,(double)0.710419);
planeActor = new vtkActor();
planeActor.SetMapper((vtkMapper)planeMapper);
cutPlane = new vtkPlane();
cutPlane.SetOrigin(fd2ad.GetOutput().GetCenter()[0],fd2ad.GetOutput().GetCenter()[1],fd2ad.GetOutput().GetCenter()[2]);
cutPlane.SetNormal((double)1,(double)0,(double)0);
planeCut = new vtkCutter();
planeCut.SetInputData((vtkDataObject)fd2ad.GetRectilinearGridOutput());
planeCut.SetCutFunction((vtkImplicitFunction)cutPlane);
cutMapper = new vtkDataSetMapper();
cutMapper.SetInputConnection((vtkAlgorithmOutput)planeCut.GetOutputPort());
cutMapper.SetScalarRange(
(double)((vtkDataSet)fd2ad.GetOutput()).GetPointData().GetScalars().GetRange()[0],
(double)((vtkDataSet)fd2ad.GetOutput()).GetPointData().GetScalars().GetRange()[1]);
cutActor = new vtkActor();
cutActor.SetMapper((vtkMapper)cutMapper);
iso = new vtkContourFilter();
iso.SetInputData((vtkDataObject)fd2ad.GetRectilinearGridOutput());
iso.SetValue((int)0,(double)0.7);
normals = new vtkPolyDataNormals();
normals.SetInputConnection((vtkAlgorithmOutput)iso.GetOutputPort());
normals.SetFeatureAngle((double)45);
isoMapper = vtkPolyDataMapper.New();
isoMapper.SetInputConnection((vtkAlgorithmOutput)normals.GetOutputPort());
isoMapper.ScalarVisibilityOff();
isoActor = new vtkActor();
isoActor.SetMapper((vtkMapper)isoMapper);
isoActor.GetProperty().SetColor((double) 1.0000, 0.8941, 0.7686 );
isoActor.GetProperty().SetRepresentationToWireframe();
streamer = new vtkStreamLine();
streamer.SetInputConnection((vtkAlgorithmOutput)fd2ad.GetOutputPort());
streamer.SetStartPosition((double)-1.2,(double)-0.1,(double)1.3);
streamer.SetMaximumPropagationTime((double)500);
streamer.SetStepLength((double)0.05);
streamer.SetIntegrationStepLength((double)0.05);
streamer.SetIntegrationDirectionToIntegrateBothDirections();
streamTube = new vtkTubeFilter();
streamTube.SetInputConnection((vtkAlgorithmOutput)streamer.GetOutputPort());
streamTube.SetRadius((double)0.025);
streamTube.SetNumberOfSides((int)6);
streamTube.SetVaryRadiusToVaryRadiusByVector();
mapStreamTube = vtkPolyDataMapper.New();
mapStreamTube.SetInputConnection((vtkAlgorithmOutput)streamTube.GetOutputPort());
mapStreamTube.SetScalarRange(
(double)((vtkDataSet)fd2ad.GetOutput()).GetPointData().GetScalars().GetRange()[0],
(double)((vtkDataSet)fd2ad.GetOutput()).GetPointData().GetScalars().GetRange()[1]);
streamTubeActor = new vtkActor();
streamTubeActor.SetMapper((vtkMapper)mapStreamTube);
streamTubeActor.GetProperty().BackfaceCullingOn();
outline = new vtkOutlineFilter();
outline.SetInputData((vtkDataObject)fd2ad.GetRectilinearGridOutput());
outlineMapper = vtkPolyDataMapper.New();
outlineMapper.SetInputConnection((vtkAlgorithmOutput)outline.GetOutputPort());
outlineActor = new vtkActor();
outlineActor.SetMapper((vtkMapper)outlineMapper);
outlineActor.GetProperty().SetColor((double) 0.0000, 0.0000, 0.0000 );
// Graphics stuff[]
// Create the RenderWindow, Renderer and both Actors[]
//[]
ren1 = vtkRenderer.New();
renWin = vtkRenderWindow.New();
renWin.SetMultiSamples(0);
renWin.AddRenderer((vtkRenderer)ren1);
iren = new vtkRenderWindowInteractor();
iren.SetRenderWindow((vtkRenderWindow)renWin);
// Add the actors to the renderer, set the background and size[]
//[]
ren1.AddActor((vtkProp)outlineActor);
ren1.AddActor((vtkProp)planeActor);
ren1.AddActor((vtkProp)cutActor);
ren1.AddActor((vtkProp)isoActor);
ren1.AddActor((vtkProp)streamTubeActor);
ren1.SetBackground((double)1,(double)1,(double)1);
renWin.SetSize((int)300,(int)300);
ren1.GetActiveCamera().SetPosition((double)0.0390893,(double)0.184813,(double)-3.94026);
ren1.GetActiveCamera().SetFocalPoint((double)-0.00578326,(double)0,(double)0.701967);
ren1.GetActiveCamera().SetViewAngle((double)30);
ren1.GetActiveCamera().SetViewUp((double)0.00850257,(double)0.999169,(double)0.0398605);
ren1.GetActiveCamera().SetClippingRange((double)3.08127,(double)6.62716);
iren.Initialize();
// render the image[]
//[]
File.Delete("RGridField.vtk");
}
// prevent the tk window from showing up then start the event loop[]
//deleteAllVTKObjects();
}
示例6: AVPlot3DScalars
/// <summary>
/// The main entry method called by the CSharp driver
/// </summary>
/// <param name="argv"></param>
public static void AVPlot3DScalars(String[] argv)
{
//Prefix Content is: ""
//[]
// All Plot3D scalar functions[]
//[]
// Create the RenderWindow, Renderer and both Actors[]
//[]
renWin = vtkRenderWindow.New();
renWin.SetMultiSamples(0);
iren = new vtkRenderWindowInteractor();
iren.SetRenderWindow((vtkRenderWindow)renWin);
scalarLabels = "Density Pressure Temperature Enthalpy Internal_Energy Kinetic_Energy Velocity_Magnitude Stagnation_Energy Entropy Swirl";
scalarFunctions = "100 110 120 130 140 144 153 163 170 184";
camera = new vtkCamera();
light = new vtkLight();
math = new vtkMath();
// All text actors will share the same text prop[]
textProp = new vtkTextProperty();
textProp.SetFontSize((int)10);
textProp.SetFontFamilyToArial();
textProp.SetColor((double)0, (double)0, (double)0);
i = 0;
foreach (string scalarFunction in scalarFunctions.Split(new char[] { ' ' }))
{
pl3d[getArrayIndex(scalarFunction)] = new vtkMultiBlockPLOT3DReader();
pl3d[getArrayIndex(scalarFunction)].SetXYZFileName((string)"" + (VTK_DATA_ROOT.ToString()) + "/Data/bluntfinxyz.bin");
pl3d[getArrayIndex(scalarFunction)].SetQFileName((string)"" + (VTK_DATA_ROOT.ToString()) + "/Data/bluntfinq.bin");
pl3d[getArrayIndex(scalarFunction)].SetScalarFunctionNumber((int)(int)(Int32.Parse(scalarFunction)));
pl3d[getArrayIndex(scalarFunction)].Update();
plane[getArrayIndex(scalarFunction)] = new vtkStructuredGridGeometryFilter();
plane[getArrayIndex(scalarFunction)].SetInputData((vtkDataSet)pl3d[getArrayIndex(scalarFunction)].GetOutput().GetBlock(0));
plane[getArrayIndex(scalarFunction)].SetExtent((int)25, (int)25, (int)0, (int)100, (int)0, (int)100);
mapper[getArrayIndex(scalarFunction)] = vtkPolyDataMapper.New();
mapper[getArrayIndex(scalarFunction)].SetInputConnection((vtkAlgorithmOutput)plane[getArrayIndex(scalarFunction)].GetOutputPort());
mapper[getArrayIndex(scalarFunction)].SetScalarRange((double)((vtkDataSet)pl3d[getArrayIndex(scalarFunction)].GetOutput().GetBlock(0)).GetPointData().GetScalars().GetRange()[0],
(double)((vtkDataSet)pl3d[getArrayIndex(scalarFunction)].GetOutput().GetBlock(0)).GetPointData().GetScalars().GetRange()[1]);
actor[getArrayIndex(scalarFunction)] = new vtkActor();
actor[getArrayIndex(scalarFunction)].SetMapper((vtkMapper)mapper[getArrayIndex(scalarFunction)]);
ren[getArrayIndex(scalarFunction)] = vtkRenderer.New();
ren[getArrayIndex(scalarFunction)].SetBackground((double)0, (double)0, (double).5);
ren[getArrayIndex(scalarFunction)].SetActiveCamera((vtkCamera)camera);
ren[getArrayIndex(scalarFunction)].AddLight((vtkLight)light);
renWin.AddRenderer(ren[getArrayIndex(scalarFunction)]);
ren[getArrayIndex(scalarFunction)].SetBackground((double)vtkMath.Random((double).5, (double)1), (double)vtkMath.Random((double).5, (double)1), (double)vtkMath.Random((double).5, (double)1));
ren[getArrayIndex(scalarFunction)].AddActor((vtkProp)actor[getArrayIndex(scalarFunction)]);
textMapper[getArrayIndex(scalarFunction)] = new vtkTextMapper();
textMapper[getArrayIndex(scalarFunction)].SetInput(scalarLabels.Split(new char[] { ' ' })[i]);
textMapper[getArrayIndex(scalarFunction)].SetTextProperty((vtkTextProperty)textProp);
text[getArrayIndex(scalarFunction)] = new vtkActor2D();
text[getArrayIndex(scalarFunction)].SetMapper((vtkMapper2D)textMapper[getArrayIndex(scalarFunction)]);
text[getArrayIndex(scalarFunction)].SetPosition((double)2, (double)3);
ren[getArrayIndex(scalarFunction)].AddActor2D(text[getArrayIndex(scalarFunction)]);
i = i + 1;
}
//[]
// now layout renderers[]
column = 1;
row = 1;
deltaX = 1.0 / 5.0;
deltaY = 1.0 / 2.0;
foreach (string scalarFunction in scalarFunctions.Split(new char[] { ' ' }))
{
ren[getArrayIndex(scalarFunction)].SetViewport((double)(column - 1) * deltaX, (double)(row - 1) * deltaY, (double)column * deltaX, (double)row * deltaY);
column = column + 1;
if ((column) > 5)
{
column = 1;
row = row + 1;
}
}
camera.SetViewUp((double)0, (double)1, (double)0);
camera.SetFocalPoint((double)0, (double)0, (double)0);
camera.SetPosition((double)1, (double)0, (double)0);
ren[100].ResetCamera();
camera.Dolly((double)1.25);
ren[100].ResetCameraClippingRange();
ren[110].ResetCameraClippingRange();
ren[120].ResetCameraClippingRange();
ren[130].ResetCameraClippingRange();
ren[140].ResetCameraClippingRange();
ren[144].ResetCameraClippingRange();
ren[153].ResetCameraClippingRange();
ren[163].ResetCameraClippingRange();
ren[170].ResetCameraClippingRange();
ren[184].ResetCameraClippingRange();
//.........这里部分代码省略.........
示例7: AVmergeFilter
/// <summary>
/// The main entry method called by the CSharp driver
/// </summary>
/// <param name="argv"></param>
public static void AVmergeFilter(String [] argv)
{
//Prefix Content is: ""
// Create the RenderWindow, Renderer and both Actors[]
//[]
ren1 = vtkRenderer.New();
ren2 = vtkRenderer.New();
renWin = vtkRenderWindow.New();
renWin.SetMultiSamples(0);
renWin.AddRenderer((vtkRenderer)ren1);
renWin.AddRenderer((vtkRenderer)ren2);
iren = new vtkRenderWindowInteractor();
iren.SetRenderWindow((vtkRenderWindow)renWin);
// create pipeline[]
//[]
pl3d = new vtkMultiBlockPLOT3DReader();
pl3d.SetXYZFileName((string)"" + (VTK_DATA_ROOT.ToString()) + "/Data/combxyz.bin");
pl3d.SetQFileName((string)"" + (VTK_DATA_ROOT.ToString()) + "/Data/combq.bin");
pl3d.SetScalarFunctionNumber((int)110);
pl3d.SetVectorFunctionNumber((int)202);
pl3d.Update();
probeLine = new vtkLineSource();
probeLine.SetPoint1((double)1,(double)1,(double)29);
probeLine.SetPoint2((double)16.5,(double)5,(double)31.7693);
probeLine.SetResolution((int)500);
probe = new vtkProbeFilter();
probe.SetInputConnection((vtkAlgorithmOutput)probeLine.GetOutputPort());
probe.SetSourceData((vtkDataObject)pl3d.GetOutput().GetBlock(0));
probe.Update();
probeTube = new vtkTubeFilter();
probeTube.SetInputData((vtkDataObject)probe.GetPolyDataOutput());
probeTube.SetNumberOfSides((int)5);
probeTube.SetRadius((double).05);
probeMapper = vtkPolyDataMapper.New();
probeMapper.SetInputConnection((vtkAlgorithmOutput)probeTube.GetOutputPort());
probeMapper.SetScalarRange((double)((vtkDataSet)pl3d.GetOutput().GetBlock(0)).GetScalarRange()[0],
(double)((vtkDataSet)pl3d.GetOutput().GetBlock(0)).GetScalarRange()[1]);
probeActor = new vtkActor();
probeActor.SetMapper((vtkMapper)probeMapper);
displayLine = new vtkLineSource();
displayLine.SetPoint1((double)0,(double)0,(double)0);
displayLine.SetPoint2((double)1,(double)0,(double)0);
displayLine.SetResolution((int)probeLine.GetResolution());
displayMerge = new vtkMergeFilter();
displayMerge.SetGeometryConnection(displayLine.GetOutputPort());
displayMerge.SetScalarsData((vtkDataSet)probe.GetPolyDataOutput());
displayMerge.Update();
displayWarp = new vtkWarpScalar();
displayWarp.SetInputData((vtkDataObject)displayMerge.GetPolyDataOutput());
displayWarp.SetNormal((double)0,(double)1,(double)0);
displayWarp.SetScaleFactor((double).000001);
displayWarp.Update();
displayMapper = vtkPolyDataMapper.New();
displayMapper.SetInputData((vtkPolyData)displayWarp.GetPolyDataOutput());
displayMapper.SetScalarRange((double)((vtkDataSet)pl3d.GetOutput().GetBlock(0)).GetScalarRange()[0],
(double)((vtkDataSet)pl3d.GetOutput().GetBlock(0)).GetScalarRange()[1]);
displayActor = new vtkActor();
displayActor.SetMapper((vtkMapper)displayMapper);
outline = new vtkStructuredGridOutlineFilter();
outline.SetInputData(pl3d.GetOutput().GetBlock(0));
outlineMapper = vtkPolyDataMapper.New();
outlineMapper.SetInputConnection((vtkAlgorithmOutput)outline.GetOutputPort());
outlineActor = new vtkActor();
outlineActor.SetMapper((vtkMapper)outlineMapper);
outlineActor.GetProperty().SetColor((double)0,(double)0,(double)0);
ren1.AddActor((vtkProp)outlineActor);
ren1.AddActor((vtkProp)probeActor);
ren1.SetBackground((double)1,(double)1,(double)1);
ren1.SetViewport((double)0,(double).25,(double)1,(double)1);
ren2.AddActor((vtkProp)displayActor);
ren2.SetBackground((double)0,(double)0,(double)0);
ren2.SetViewport((double)0,(double)0,(double)1,(double).25);
renWin.SetSize((int)300,(int)300);
ren1.ResetCamera();
cam1 = ren1.GetActiveCamera();
cam1.SetClippingRange((double)3.95297,(double)50);
cam1.SetFocalPoint((double)8.88908,(double)0.595038,(double)29.3342);
cam1.SetPosition((double)9.9,(double)-26,(double)41);
cam1.SetViewUp((double)0.060772,(double)-0.319905,(double)0.945498);
ren2.ResetCamera();
cam2 = ren2.GetActiveCamera();
cam2.ParallelProjectionOn();
cam2.SetParallelScale((double).15);
iren.Initialize();
// render the image[]
//[]
// prevent the tk window from showing up then start the event loop[]
//deleteAllVTKObjects();
}
示例8: AVprobeComb
/// <summary>
/// The main entry method called by the CSharp driver
/// </summary>
/// <param name="argv"></param>
public static void AVprobeComb(String [] argv)
{
//Prefix Content is: ""
// create planes[]
// Create the RenderWindow, Renderer and both Actors[]
//[]
ren1 = vtkRenderer.New();
renWin = vtkRenderWindow.New();
renWin.SetMultiSamples(0);
renWin.AddRenderer((vtkRenderer)ren1);
iren = new vtkRenderWindowInteractor();
iren.SetRenderWindow((vtkRenderWindow)renWin);
// create pipeline[]
//[]
pl3d = new vtkMultiBlockPLOT3DReader();
pl3d.SetXYZFileName((string)"" + (VTK_DATA_ROOT.ToString()) + "/Data/combxyz.bin");
pl3d.SetQFileName((string)"" + (VTK_DATA_ROOT.ToString()) + "/Data/combq.bin");
pl3d.SetScalarFunctionNumber((int)100);
pl3d.SetVectorFunctionNumber((int)202);
pl3d.Update();
plane = new vtkPlaneSource();
plane.SetResolution((int)50,(int)50);
transP1 = new vtkTransform();
transP1.Translate((double)3.7,(double)0.0,(double)28.37);
transP1.Scale((double)5,(double)5,(double)5);
transP1.RotateY((double)90);
tpd1 = new vtkTransformPolyDataFilter();
tpd1.SetInputConnection((vtkAlgorithmOutput)plane.GetOutputPort());
tpd1.SetTransform((vtkAbstractTransform)transP1);
outTpd1 = new vtkOutlineFilter();
outTpd1.SetInputConnection((vtkAlgorithmOutput)tpd1.GetOutputPort());
mapTpd1 = vtkPolyDataMapper.New();
mapTpd1.SetInputConnection((vtkAlgorithmOutput)outTpd1.GetOutputPort());
tpd1Actor = new vtkActor();
tpd1Actor.SetMapper((vtkMapper)mapTpd1);
tpd1Actor.GetProperty().SetColor((double)0,(double)0,(double)0);
transP2 = new vtkTransform();
transP2.Translate((double)9.2,(double)0.0,(double)31.20);
transP2.Scale((double)5,(double)5,(double)5);
transP2.RotateY((double)90);
tpd2 = new vtkTransformPolyDataFilter();
tpd2.SetInputConnection((vtkAlgorithmOutput)plane.GetOutputPort());
tpd2.SetTransform((vtkAbstractTransform)transP2);
outTpd2 = new vtkOutlineFilter();
outTpd2.SetInputConnection((vtkAlgorithmOutput)tpd2.GetOutputPort());
mapTpd2 = vtkPolyDataMapper.New();
mapTpd2.SetInputConnection((vtkAlgorithmOutput)outTpd2.GetOutputPort());
tpd2Actor = new vtkActor();
tpd2Actor.SetMapper((vtkMapper)mapTpd2);
tpd2Actor.GetProperty().SetColor((double)0,(double)0,(double)0);
transP3 = new vtkTransform();
transP3.Translate((double)13.27,(double)0.0,(double)33.30);
transP3.Scale((double)5,(double)5,(double)5);
transP3.RotateY((double)90);
tpd3 = new vtkTransformPolyDataFilter();
tpd3.SetInputConnection((vtkAlgorithmOutput)plane.GetOutputPort());
tpd3.SetTransform((vtkAbstractTransform)transP3);
outTpd3 = new vtkOutlineFilter();
outTpd3.SetInputConnection((vtkAlgorithmOutput)tpd3.GetOutputPort());
mapTpd3 = vtkPolyDataMapper.New();
mapTpd3.SetInputConnection((vtkAlgorithmOutput)outTpd3.GetOutputPort());
tpd3Actor = new vtkActor();
tpd3Actor.SetMapper((vtkMapper)mapTpd3);
tpd3Actor.GetProperty().SetColor((double)0,(double)0,(double)0);
appendF = new vtkAppendPolyData();
appendF.AddInputConnection(tpd1.GetOutputPort());
appendF.AddInputConnection(tpd2.GetOutputPort());
appendF.AddInputConnection(tpd3.GetOutputPort());
probe = new vtkProbeFilter();
probe.SetInputConnection((vtkAlgorithmOutput)appendF.GetOutputPort());
probe.SetSourceData((vtkDataSet)pl3d.GetOutput().GetBlock(0));
contour = new vtkContourFilter();
contour.SetInputConnection((vtkAlgorithmOutput)probe.GetOutputPort());
contour.GenerateValues((int)50,(double)((vtkDataSet)pl3d.GetOutput().GetBlock(0)).GetScalarRange()[0],
(double)((vtkDataSet)pl3d.GetOutput().GetBlock(0)).GetScalarRange()[1]);
contourMapper = vtkPolyDataMapper.New();
contourMapper.SetInputConnection((vtkAlgorithmOutput)contour.GetOutputPort());
contourMapper.SetScalarRange((double)((vtkDataSet)pl3d.GetOutput().GetBlock(0)).GetScalarRange()[0],
(double)((vtkDataSet)pl3d.GetOutput().GetBlock(0)).GetScalarRange()[1]);
planeActor = new vtkActor();
planeActor.SetMapper((vtkMapper)contourMapper);
outline = new vtkStructuredGridOutlineFilter();
outline.SetInputData((vtkDataSet)pl3d.GetOutput().GetBlock(0));
outlineMapper = vtkPolyDataMapper.New();
outlineMapper.SetInputConnection((vtkAlgorithmOutput)outline.GetOutputPort());
outlineActor = new vtkActor();
outlineActor.SetMapper((vtkMapper)outlineMapper);
outlineActor.GetProperty().SetColor((double)0,(double)0,(double)0);
ren1.AddActor((vtkProp)outlineActor);
ren1.AddActor((vtkProp)planeActor);
ren1.AddActor((vtkProp)tpd1Actor);
ren1.AddActor((vtkProp)tpd2Actor);
ren1.AddActor((vtkProp)tpd3Actor);
ren1.SetBackground((double)1,(double)1,(double)1);
renWin.SetSize((int)400,(int)400);
//.........这里部分代码省略.........
示例9: AVTestGridSynchronizedTemplates3D
/// <summary>
/// The main entry method called by the CSharp driver
/// </summary>
/// <param name="argv"></param>
public static void AVTestGridSynchronizedTemplates3D(String [] argv)
{
//Prefix Content is: ""
// cut data[]
pl3d = new vtkMultiBlockPLOT3DReader();
pl3d.SetXYZFileName((string)"" + (VTK_DATA_ROOT.ToString()) + "/Data/combxyz.bin");
pl3d.SetQFileName((string)"" + (VTK_DATA_ROOT.ToString()) + "/Data/combq.bin");
pl3d.SetScalarFunctionNumber((int)100);
pl3d.SetVectorFunctionNumber((int)202);
pl3d.Update();
range = ((vtkDataSet)pl3d.GetOutput().GetBlock(0)).GetPointData().GetScalars().GetRange();
min = (double)(lindex(range,0));
max = (double)(lindex(range,1));
value = (min+max)/2.0;
//vtkGridSynchronizedTemplates3D cf[]
cf = new vtkContourFilter();
cf.SetInputData((vtkDataSet)pl3d.GetOutput().GetBlock(0));
cf.SetValue((int)0,(double)value);
//cf ComputeNormalsOff[]
cfMapper = vtkPolyDataMapper.New();
cfMapper.ImmediateModeRenderingOn();
cfMapper.SetInputConnection((vtkAlgorithmOutput)cf.GetOutputPort());
cfMapper.SetScalarRange((double)((vtkDataSet)pl3d.GetOutput().GetBlock(0)).GetPointData().GetScalars().GetRange()[0], (double)((vtkDataSet)pl3d.GetOutput().GetBlock(0)).GetPointData().GetScalars().GetRange()[1]);
cfActor = new vtkActor();
cfActor.SetMapper((vtkMapper)cfMapper);
//outline[]
outline = new vtkStructuredGridOutlineFilter();
outline.SetInputData((vtkDataSet)pl3d.GetOutput().GetBlock(0));
outlineMapper = vtkPolyDataMapper.New();
outlineMapper.SetInputConnection((vtkAlgorithmOutput)outline.GetOutputPort());
outlineActor = new vtkActor();
outlineActor.SetMapper((vtkMapper)outlineMapper);
outlineActor.GetProperty().SetColor((double)0,(double)0,(double)0);
//# Graphics stuff[]
// Create the RenderWindow, Renderer and both Actors[]
//[]
ren1 = vtkRenderer.New();
renWin = vtkRenderWindow.New();
renWin.SetMultiSamples(0);
renWin.AddRenderer((vtkRenderer)ren1);
iren = new vtkRenderWindowInteractor();
iren.SetRenderWindow((vtkRenderWindow)renWin);
// Add the actors to the renderer, set the background and size[]
//[]
ren1.AddActor((vtkProp)outlineActor);
ren1.AddActor((vtkProp)cfActor);
ren1.SetBackground((double)1,(double)1,(double)1);
renWin.SetSize((int)400,(int)400);
cam1 = ren1.GetActiveCamera();
cam1.SetClippingRange((double)3.95297,(double)50);
cam1.SetFocalPoint((double)9.71821,(double)0.458166,(double)29.3999);
cam1.SetPosition((double)2.7439,(double)-37.3196,(double)38.7167);
cam1.SetViewUp((double)-0.16123,(double)0.264271,(double)0.950876);
iren.Initialize();
// render the image[]
//[]
// loop over surfaces[]
i = 0;
while((i) < 17)
{
cf.SetValue((int)0,(double)min+(i/16.0)*(max-min));
renWin.Render();
i = i + 1;
}
cf.SetValue((int)0,(double)min+(0.2)*(max-min));
renWin.Render();
// prevent the tk window from showing up then start the event loop[]
//deleteAllVTKObjects();
}
示例10: AVPlot3DVectors
/// <summary>
/// The main entry method called by the CSharp driver
/// </summary>
/// <param name="argv"></param>
public static void AVPlot3DVectors(String [] argv)
{
//Prefix Content is: ""
//[]
// All Plot3D vector functions[]
//[]
// Create the RenderWindow, Renderer and both Actors[]
//[]
renWin = vtkRenderWindow.New();
renWin.SetMultiSamples(0);
ren1 = vtkRenderer.New();
ren1.SetBackground((double).8,(double).8,(double).2);
renWin.AddRenderer((vtkRenderer)ren1);
iren = new vtkRenderWindowInteractor();
iren.SetRenderWindow((vtkRenderWindow)renWin);
vectorLabels = "Velocity Vorticity Momentum Pressure_Gradient";
vectorFunctions = "200 201 202 210";
camera = new vtkCamera();
light = new vtkLight();
// All text actors will share the same text prop[]
textProp = new vtkTextProperty();
textProp.SetFontSize((int)10);
textProp.SetFontFamilyToArial();
textProp.SetColor((double).3,(double)1,(double)1);
i = 0;
foreach (string vectorFunction in vectorFunctions.Split(new char[]{' '}))
{
pl3d[getArrayIndex(vectorFunction)] = new vtkMultiBlockPLOT3DReader();
pl3d[getArrayIndex(vectorFunction)].SetXYZFileName((string)"" + (VTK_DATA_ROOT.ToString()) + "/Data/bluntfinxyz.bin");
pl3d[getArrayIndex(vectorFunction)].SetQFileName((string)"" + (VTK_DATA_ROOT.ToString()) + "/Data/bluntfinq.bin");
pl3d[getArrayIndex(vectorFunction)].SetVectorFunctionNumber((int)(int)(getArrayIndex(vectorFunction)));
pl3d[getArrayIndex(vectorFunction)].Update();
plane[getArrayIndex(vectorFunction)] = new vtkStructuredGridGeometryFilter();
plane[getArrayIndex(vectorFunction)].SetInputData((vtkDataSet)pl3d[getArrayIndex(vectorFunction)].GetOutput().GetBlock(0));
plane[getArrayIndex(vectorFunction)].SetExtent((int)25,(int)25,(int)0,(int)100,(int)0,(int)100);
hog[getArrayIndex(vectorFunction)] = new vtkHedgeHog();
hog[getArrayIndex(vectorFunction)].SetInputConnection((vtkAlgorithmOutput)plane[getArrayIndex(vectorFunction)].GetOutputPort());
maxnorm = ((vtkDataSet)pl3d[getArrayIndex(vectorFunction)].GetOutput().GetBlock(0)).GetPointData().GetVectors().GetMaxNorm();
hog[getArrayIndex(vectorFunction)].SetScaleFactor((double)1.0/maxnorm);
mapper[getArrayIndex(vectorFunction)] = vtkPolyDataMapper.New();
mapper[getArrayIndex(vectorFunction)].SetInputConnection((vtkAlgorithmOutput)hog[getArrayIndex(vectorFunction)].GetOutputPort());
actor[getArrayIndex(vectorFunction)] = new vtkActor();
actor[getArrayIndex(vectorFunction)].SetMapper((vtkMapper)mapper[getArrayIndex(vectorFunction)]);
ren[getArrayIndex(vectorFunction)] = vtkRenderer.New();
ren[getArrayIndex(vectorFunction)].SetBackground((double)0.5,(double).5,(double).5);
ren[getArrayIndex(vectorFunction)].SetActiveCamera((vtkCamera)camera);
ren[getArrayIndex(vectorFunction)].AddLight((vtkLight)light);
renWin.AddRenderer(ren[getArrayIndex(vectorFunction)]);
ren[getArrayIndex(vectorFunction)].AddActor((vtkProp)actor[getArrayIndex(vectorFunction)]);
textMapper[getArrayIndex(vectorFunction)] = new vtkTextMapper();
textMapper[getArrayIndex(vectorFunction)].SetInput(vectorLabels.Split(new char[] { ' ' })[i]);
textMapper[getArrayIndex(vectorFunction)].SetTextProperty((vtkTextProperty)textProp);
text[getArrayIndex(vectorFunction)] = new vtkActor2D();
text[getArrayIndex(vectorFunction)].SetMapper((vtkMapper2D)textMapper[getArrayIndex(vectorFunction)]);
text[getArrayIndex(vectorFunction)].SetPosition((double)2,(double)5);
ren[getArrayIndex(vectorFunction)].AddActor2D((vtkProp)text[getArrayIndex(vectorFunction)]);
i = i + 1;
}
//[]
// now layout renderers[]
column = 1;
row = 1;
deltaX = 1.0/2.0;
deltaY = 1.0/2.0;
foreach (string vectorFunction in vectorFunctions.Split(new char[]{' '}))
{
ren[getArrayIndex(vectorFunction)].SetViewport((double)(column - 1) * deltaX + (deltaX * .05), (double)(row - 1) * deltaY + (deltaY * .05), (double)column * deltaX - (deltaX * .05), (double)row * deltaY - (deltaY * .05));
column = column + 1;
if ((column) > 2)
{
column = 1;
row = row + 1;
}
}
camera.SetViewUp((double)1,(double)0,(double)0);
camera.SetFocalPoint((double)0,(double)0,(double)0);
camera.SetPosition((double).4,(double)-.5,(double)-.75);
ren[200].ResetCamera();
camera.Dolly((double)1.25);
ren[200].ResetCameraClippingRange();
ren[201].ResetCameraClippingRange();
ren[202].ResetCameraClippingRange();
ren[210].ResetCameraClippingRange();
light.SetPosition(camera.GetPosition()[0],camera.GetPosition()[1],camera.GetPosition()[2]);
light.SetFocalPoint(camera.GetFocalPoint()[0],camera.GetFocalPoint()[1],camera.GetFocalPoint()[2]);
renWin.SetSize(350,350);
renWin.Render();
iren.Initialize();
// render the image[]
//[]
// prevent the tk window from showing up then start the event loop[]
//.........这里部分代码省略.........