1 2 static char help[] = "Tests repeatedly setting a window type.\n"; 3 4 #include <petscsys.h> 5 #include <petscdraw.h> 6 7 int main(int argc,char **argv) 8 { 9 PetscDraw draw; 10 PetscErrorCode ierr; 11 int x = 0,y = 0,width = 300,height = 300; 12 13 ierr = PetscInitialize(&argc,&argv,NULL,help);if (ierr) return ierr; 14 ierr = PetscDrawCreate(PETSC_COMM_WORLD,0,"Title",x,y,width,height,&draw);CHKERRQ(ierr); 15 #if defined(PETSC_HAVE_X) 16 ierr = PetscDrawSetType(draw,"x");CHKERRQ(ierr); 17 ierr = PetscDrawSetType(draw,"null");CHKERRQ(ierr); 18 ierr = PetscDrawSetType(draw,"x");CHKERRQ(ierr); 19 #else 20 ierr = PetscDrawSetType(draw,"null");CHKERRQ(ierr); 21 #endif 22 ierr = PetscDrawSetFromOptions(draw);CHKERRQ(ierr); 23 ierr = PetscDrawSetViewPort(draw,.25,.25,.75,.75);CHKERRQ(ierr); 24 ierr = PetscDrawClear(draw);CHKERRQ(ierr); 25 ierr = PetscDrawLine(draw,0.0,0.0,1.0,1.0,PETSC_DRAW_BLACK);CHKERRQ(ierr); 26 ierr = PetscDrawString(draw,.2,.2,PETSC_DRAW_RED,"Some Text");CHKERRQ(ierr); 27 ierr = PetscDrawStringSetSize(draw,.5,.5);CHKERRQ(ierr); 28 ierr = PetscDrawString(draw,.2,.2,PETSC_DRAW_BLUE,"Some Text");CHKERRQ(ierr); 29 ierr = PetscDrawFlush(draw);CHKERRQ(ierr); 30 ierr = PetscSleep(2);CHKERRQ(ierr); 31 ierr = PetscDrawResizeWindow(draw,600,600);CHKERRQ(ierr); 32 ierr = PetscDrawClear(draw);CHKERRQ(ierr); 33 ierr = PetscSleep(2);CHKERRQ(ierr); 34 ierr = PetscDrawLine(draw,0.0,1.0,1.0,0.0,PETSC_DRAW_BLUE);CHKERRQ(ierr); 35 ierr = PetscDrawFlush(draw);CHKERRQ(ierr); 36 ierr = PetscSleep(2);CHKERRQ(ierr); 37 ierr = PetscDrawDestroy(&draw);CHKERRQ(ierr); 38 ierr = PetscFinalize(); 39 return ierr; 40 } 41 42 43 44 /*TEST 45 46 build: 47 requires: x 48 49 test: 50 output_file: output/ex1_1.out 51 52 TEST*/ 53