00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021 #include <iostream>
00022 #include <cmath>
00023 #include <vector>
00024
00025 #include "numerical/meshgrid.h"
00026
00027 #include "vtkwrap/vtkwin.h"
00028 #include "vtkwrap/sgridoutline.h"
00029 #include "vtkwrap/axes.h"
00030 #include "vtkwrap/colors.h"
00031 #include "vtkwrap/cutclip.h"
00032 #include "vtkwrap/sphere.h"
00033 #include "vtkwrap/cube.h"
00034 #include "vtkwrap/structgrid.h"
00035 #include "vtkwrap/sgridisosurf.h"
00036
00037 int main(int argc, char **argv)
00038 {
00039
00040 VTKWin win;
00041
00042
00043 Axes ax(2, true);
00044 win.AddActor(ax.GetActor());
00045
00046
00047 const int n_pts = 20;
00048 MeshGrid mg(0,1,n_pts, 0,1,n_pts, 0,1,n_pts);
00049 int Size = mg.Length();
00050
00051
00052 double * F = new double [Size];
00053 for (int i=0; i<Size; ++i)
00054 F[i] = pow(mg.X(i),2.0)+pow(mg.Y(i),2.0)+pow(mg.Z(i),2.0) - 1.0;
00055
00056
00057 StructGrid sg(mg.X(),n_pts, mg.Y(),n_pts, mg.Z(),n_pts, F);
00058
00059
00060 vtkLookupTable * lt = vtkLookupTable::New();
00061 lt->SetNumberOfColors(1);
00062 lt->Build();
00063 lt->SetTableValue(0,CLR["blue"].C);
00064
00065
00066 SGridIsoSurf sgiso(sg.GetGrid(), 0.0, lt);
00067 win.AddActor(sgiso.GetActor());
00068
00069
00070 win.Show();
00071
00072
00073 delete [] F;
00074 lt->Delete();
00075
00076 return 0;
00077 }