private static void CellEdges() { vtkTriangle triangle = vtkTriangle.New(); triangle.GetPoints().SetPoint(0, 1.0, 0.0, 0.0); triangle.GetPoints().SetPoint(1, 0.0, 0.0, 0.0); triangle.GetPoints().SetPoint(2, 0.0, 1.0, 0.0); triangle.GetPointIds().SetId(0, 0); triangle.GetPointIds().SetId(1, 1); triangle.GetPointIds().SetId(2, 2); Console.WriteLine("The cell has " + triangle.GetNumberOfEdges() + " edges."); for (int i = 0; i < triangle.GetNumberOfEdges(); i++) { vtkCell edge = triangle.GetEdge(i); vtkIdList pointIdList = edge.GetPointIds(); Console.WriteLine("Edge " + i + " has " + pointIdList.GetNumberOfIds() + " points."); for (int p = 0; p < pointIdList.GetNumberOfIds(); p++) { Console.WriteLine("Edge " + i + " uses point " + pointIdList.GetId(p)); } } }
public static List <List <double[]> > ReadPolyDataList(this string vtpFileName) { vtkPolyData polyData = ReadPolyData(vtpFileName); List <List <double[]> > ret = new List <List <double[]> >(); for (int cellIdx = 0; cellIdx < polyData.GetNumberOfCells(); ++cellIdx) { List <double[]> list = new List <double[]>(); ret.Add(list); vtkCell cell = polyData.GetCell(cellIdx); for (int i = 0; i < cell.GetNumberOfPoints(); ++i) { list.Add(cell.GetPoints().GetPoint(i)); } } polyData.Dispose(); return(ret); }