Exemple #1
0
    /// <summary>
    /// The main entry method called by the CSharp driver
    /// </summary>
    /// <param name="argv"></param>
    public static void AVfieldToPolyData(String [] argv)
    {
        //Prefix Content is: ""

        // This example demonstrates the reading of a field and conversion to PolyData[]
        // The output should be the same as polyEx.tcl.[]
        // get the interactor ui[]
        // Create a reader and write out the field[]
        reader = new vtkPolyDataReader();
        reader.SetFileName((string)"" + (VTK_DATA_ROOT.ToString()) + "/Data/polyEx.vtk");
        ds2do = new vtkDataSetToDataObjectFilter();
        ds2do.SetInputConnection((vtkAlgorithmOutput)reader.GetOutputPort());
        try
        {
            channel       = new StreamWriter("PolyField.vtk");
            tryCatchError = "NOERROR";
        }
        catch (Exception)
        { tryCatchError = "ERROR"; }

        if (tryCatchError.Equals("NOERROR"))
        {
            channel.Close();
            writer = new vtkDataObjectWriter();
            writer.SetInputConnection((vtkAlgorithmOutput)ds2do.GetOutputPort());
            writer.SetFileName((string)"PolyField.vtk");
            writer.Write();
            // create pipeline[]
            //[]
            dor = new vtkDataObjectReader();
            dor.SetFileName((string)"PolyField.vtk");
            do2ds = new vtkDataObjectToDataSetFilter();
            do2ds.SetInputConnection((vtkAlgorithmOutput)dor.GetOutputPort());
            do2ds.SetDataSetTypeToPolyData();
            do2ds.SetPointComponent((int)0, (string)"Points", (int)0);
            do2ds.SetPointComponent((int)1, (string)"Points", (int)1);
            do2ds.SetPointComponent((int)2, (string)"Points", (int)2);
            do2ds.SetPolysComponent((string)"Polys", (int)0);

            fd2ad = new vtkFieldDataToAttributeDataFilter();
            fd2ad.SetInputConnection(do2ds.GetOutputPort());
            fd2ad.SetInputFieldToDataObjectField();
            fd2ad.SetOutputAttributeDataToPointData();
            fd2ad.SetScalarComponent((int)0, (string)"my_scalars", (int)0);
            mapper = vtkPolyDataMapper.New();
            mapper.SetInputConnection(fd2ad.GetOutputPort());
            mapper.SetScalarRange((double)((vtkDataSet)fd2ad.GetOutput()).GetScalarRange()[0], (double)((vtkDataSet)fd2ad.GetOutput()).GetScalarRange()[1]);
            actor = new vtkActor();
            actor.SetMapper((vtkMapper)mapper);
            // Create the RenderWindow, Renderer and both Actors[]
            ren1   = vtkRenderer.New();
            renWin = vtkRenderWindow.New();
            renWin.AddRenderer((vtkRenderer)ren1);
            iren = new vtkRenderWindowInteractor();
            iren.SetRenderWindow((vtkRenderWindow)renWin);
            ren1.AddActor((vtkProp)actor);
            ren1.SetBackground((double)1, (double)1, (double)1);
            renWin.SetSize((int)300, (int)300);
            ren1.ResetCamera();
            cam1 = ren1.GetActiveCamera();
            cam1.SetClippingRange((double).348, (double)17.43);
            cam1.SetPosition((double)2.92, (double)2.62, (double)-0.836);
            cam1.SetViewUp((double)-0.436, (double)-0.067, (double)-0.897);
            cam1.Azimuth((double)90);
            // render the image[]
            //[]
            renWin.Render();
            File.Delete("PolyField.vtk");
        }


        // prevent the tk window from showing up then start the event loop[]

//deleteAllVTKObjects();
    }
    /// <summary>
    /// The main entry method called by the CSharp driver
    /// </summary>
    /// <param name="argv"></param>
    public static void AVfieldToPolyData(String [] argv)
    {
        //Prefix Content is: ""

          // This example demonstrates the reading of a field and conversion to PolyData[]
          // The output should be the same as polyEx.tcl.[]
          // get the interactor ui[]
          // Create a reader and write out the field[]
          reader = new vtkPolyDataReader();
          reader.SetFileName((string)"" + (VTK_DATA_ROOT.ToString()) + "/Data/polyEx.vtk");
          ds2do = new vtkDataSetToDataObjectFilter();
          ds2do.SetInputConnection((vtkAlgorithmOutput)reader.GetOutputPort());
          try
        {
        channel = new StreamWriter("PolyField.vtk");
        tryCatchError = "NOERROR";
        }
          catch(Exception)
          {tryCatchError = "ERROR";}

          if(tryCatchError.Equals("NOERROR"))
        {
          channel.Close();
          writer = new vtkDataObjectWriter();
          writer.SetInputConnection((vtkAlgorithmOutput)ds2do.GetOutputPort());
          writer.SetFileName((string)"PolyField.vtk");
          writer.Write();
          // create pipeline[]
          //[]
          dor = new vtkDataObjectReader();
          dor.SetFileName((string)"PolyField.vtk");
          do2ds = new vtkDataObjectToDataSetFilter();
          do2ds.SetInputConnection((vtkAlgorithmOutput)dor.GetOutputPort());
          do2ds.SetDataSetTypeToPolyData();
          do2ds.SetPointComponent((int)0,(string)"Points",(int)0);
          do2ds.SetPointComponent((int)1,(string)"Points",(int)1);
          do2ds.SetPointComponent((int)2,(string)"Points",(int)2);
          do2ds.SetPolysComponent((string)"Polys",(int)0);

          fd2ad = new vtkFieldDataToAttributeDataFilter();
          fd2ad.SetInputConnection(do2ds.GetOutputPort());
          fd2ad.SetInputFieldToDataObjectField();
          fd2ad.SetOutputAttributeDataToPointData();
          fd2ad.SetScalarComponent((int)0,(string)"my_scalars",(int)0);
          mapper = vtkPolyDataMapper.New();
          mapper.SetInputConnection(fd2ad.GetOutputPort());
          mapper.SetScalarRange((double)((vtkDataSet)fd2ad.GetOutput()).GetScalarRange()[0],(double)((vtkDataSet)fd2ad.GetOutput()).GetScalarRange()[1]);
          actor = new vtkActor();
          actor.SetMapper((vtkMapper)mapper);
          // Create the RenderWindow, Renderer and both Actors[]
          ren1 = vtkRenderer.New();
          renWin = vtkRenderWindow.New();
          renWin.AddRenderer((vtkRenderer)ren1);
          iren = new vtkRenderWindowInteractor();
          iren.SetRenderWindow((vtkRenderWindow)renWin);
          ren1.AddActor((vtkProp)actor);
          ren1.SetBackground((double)1,(double)1,(double)1);
          renWin.SetSize((int)300,(int)300);
          ren1.ResetCamera();
          cam1 = ren1.GetActiveCamera();
          cam1.SetClippingRange((double).348,(double)17.43);
          cam1.SetPosition((double)2.92,(double)2.62,(double)-0.836);
          cam1.SetViewUp((double)-0.436,(double)-0.067,(double)-0.897);
          cam1.Azimuth((double)90);
          // render the image[]
          //[]
          renWin.Render();
          File.Delete("PolyField.vtk");
        }

          // prevent the tk window from showing up then start the event loop[]

        //deleteAllVTKObjects();
    }