28   cout.sync_with_stdio(
true);
    34   std::vector<double> x(Nx);
    35   std::vector<double> y(Ny);
    36   std::vector<double> u(Nx*Ny);
    37   std::vector<double> v(Nx*Ny);
    39   std::vector<double> fx(Nx);
    40   std::vector<double> fy(Ny);
    42   const double x_low = -2.5;
    43   const double x_upp = 1.5;
    44   const double y_low = -2.5;
    45   const double y_upp = 4;
    46   const double dx = (x_upp-x_low)/(Nx-1);
    47   const double dy = (y_upp-y_low)/(Ny-1);
    56   for (
int i=0; i<Nx; i++)
    59   for (
int i=0; i<Ny; i++)
    65   auto t0=std::chrono::system_clock::now();
    70   frame->SetLayout(2,2);
    71   frame->LinkCamera(1,frame,0);
    73   frame->SetSize(800,400);
    74   frame->SetWindowTitle(
"vtkfig");
    75   frame->SetFrameTitle(
"Multiple figures in one frame");
    78   griddata->SetRectilinearGrid(x,y);
    79   griddata->SetPointScalar(u ,
"u");
    80   griddata->SetPointScalar(v ,
"v");
    85   contour_u->SetData(griddata,
"u");
    86   contour_u->SetSurfaceRGBTable(colors,255);
    87   frame->AddFigure(contour_u,0);
    90   contour_v->SetData(griddata,
"v");
    91   contour_v->SetSurfaceRGBTable(colors,255);
    92   frame->AddFigure(contour_v,1);
    95   xyplot->SetYRange(-0.5,0.5);
    96   frame->AddFigure(xyplot,2);
   100     for (
int i=0; i<Nx; i++)
   101       for (
int j=0; j<Ny; j++)
   103         double f=
GU(x[i],y[j],t);
   105         if (i==Nx/2) fy[j]=f;
   106         if (j==Ny/2) fx[i]=f;
   112     griddata->SetPointScalar(u ,
"u");
   113     griddata->SetPointScalar(v ,
"v");
   116     xyplot->SetPlotColor(0,0,1);
   117     xyplot->SetPlotLineType(
"-");
   118     xyplot->SetPlotLegend(
"y=0.5");
   119     xyplot->AddPlot(x, fx);
   120     xyplot->SetPlotColor(1,0,0);
   121     xyplot->SetPlotLineType(
"-");
   122     xyplot->SetPlotLegend(
"x=0.5");
   123     xyplot->AddPlot(y, fy);
   127       frame->WritePNG(
"example-multifig.png");
   130     auto t1=std::chrono::system_clock::now();
   131     double dt=std::chrono::duration_cast<std::chrono::duration<double>>(t1-t0).count();
   135       printf(
"Frame rate: %.2f fps\n",(
double)(i1-i0)/4.0);
   136       t0=std::chrono::system_clock::now();
 double GU(double x, double y, double t)
 
static std::shared_ptr< Frame > New()
Create frame with multiple subframes. 
 
static std::shared_ptr< ScalarView > New()
 
static std::shared_ptr< XYPlot > New()
 
static std::shared_ptr< DataSet > New()
Static constructor of an empty instance. 
 
double GV(double x, double y, double t)
 
std::vector< RGBPoint > RGBTable