Actual source code: ex4.c
petsc-3.8.3 2017-12-09
2: static char help[] = "Demonstrates use of PetscDrawZoom()\n";
4: #if defined(PETSC_APPLE_FRAMEWORK)
5: #include <PETSc/petscsys.h>
6: #include <PETSc/petscdraw.h>
7: #else
8: #include <petscsys.h>
9: #include <petscdraw.h>
10: #endif
12: PetscErrorCode zoomfunction(PetscDraw draw,void *dummy)
13: {
14: int i;
15: MPI_Comm comm = PetscObjectComm((PetscObject)draw);
16: PetscMPIInt size,rank;
19: MPI_Comm_size(comm,&size);
20: MPI_Comm_rank(comm,&rank);
21: for (i=rank; i<256; i+=size) {
22: PetscReal y = ((PetscReal)i)/(256-1);
23: PetscDrawLine(draw,0.0,y,1.0,y,i);
24: }
25: return 0;
26: }
28: int main(int argc,char **argv)
29: {
30: int x = 0,y = 0,width = 256,height = 256;
31: PetscDraw draw;
34: PetscInitialize(&argc,&argv,NULL,help);
35: PetscDrawCreate(PETSC_COMM_WORLD,NULL,"Title",x,y,width,height,&draw);
36: PetscDrawSetFromOptions(draw);
37: PetscDrawZoom(draw,zoomfunction,NULL);
38: PetscDrawDestroy(&draw);
39: PetscFinalize();
40: return ierr;
41: }