15c6c1daeSBarry Smith 25c6c1daeSBarry Smith /* 35c6c1daeSBarry Smith Defines the operations for the X PetscDraw implementation. 45c6c1daeSBarry Smith */ 55c6c1daeSBarry Smith 65c6c1daeSBarry Smith #include <../src/sys/classes/draw/impls/x/ximpl.h> /*I "petscsys.h" I*/ 75c6c1daeSBarry Smith 85c6c1daeSBarry Smith /*@C 95c6c1daeSBarry Smith PetscDrawOpenX - Opens an X-window for use with the PetscDraw routines. 105c6c1daeSBarry Smith 11d083f849SBarry Smith Collective 125c6c1daeSBarry Smith 135c6c1daeSBarry Smith Input Parameters: 145c6c1daeSBarry Smith + comm - the communicator that will share X-window 155c6c1daeSBarry Smith . display - the X display on which to open,or null for the local machine 165c6c1daeSBarry Smith . title - the title to put in the title bar,or null for no title 175c6c1daeSBarry Smith . x,y - the screen coordinates of the upper left corner of window 185c6c1daeSBarry Smith may use PETSC_DECIDE for these two arguments, then PETSc places the 195c6c1daeSBarry Smith window 205c6c1daeSBarry Smith - w, h - the screen width and height in pixels, or PETSC_DRAW_HALF_SIZE, PETSC_DRAW_FULL_SIZE, 215c6c1daeSBarry Smith or PETSC_DRAW_THIRD_SIZE or PETSC_DRAW_QUARTER_SIZE 225c6c1daeSBarry Smith 23*f899ff85SJose E. Roman Output Parameter: 245c6c1daeSBarry Smith . draw - the drawing context. 255c6c1daeSBarry Smith 265c6c1daeSBarry Smith Options Database Keys: 275c6c1daeSBarry Smith + -nox - Disables all x-windows output 285c6c1daeSBarry Smith . -display <name> - Sets name of machine for the X display 295c6c1daeSBarry Smith . -draw_pause <pause> - Sets time (in seconds) that the 305c6c1daeSBarry Smith program pauses after PetscDrawPause() has been called 315c6c1daeSBarry Smith (0 is default, -1 implies until user input). 3200d931feSLisandro Dalcin . -draw_cmap <name> - Sets the colormap to use. 3300d931feSLisandro Dalcin . -draw_cmap_reverse - Reverses the colormap. 3400d931feSLisandro Dalcin . -draw_cmap_brighten - Brighten (0 < beta < 1) or darken (-1 < beta < 0) the colormap. 355c6c1daeSBarry Smith . -draw_x_shared_colormap - Causes PETSc to use a shared 365c6c1daeSBarry Smith colormap. By default PETSc creates a separate color 375c6c1daeSBarry Smith for its windows, you must put the mouse into the graphics 385c6c1daeSBarry Smith window to see the correct colors. This options forces 395c6c1daeSBarry Smith PETSc to use the default colormap which will usually result 405c6c1daeSBarry Smith in bad contour plots. 4100d931feSLisandro Dalcin . -draw_fast - Does not create colormap for countour plots. 425c6c1daeSBarry Smith . -draw_double_buffer - Uses double buffering for smooth animation. 4300d931feSLisandro Dalcin - -geometry - Indicates location and size of window. 445c6c1daeSBarry Smith 455c6c1daeSBarry Smith Level: beginner 465c6c1daeSBarry Smith 475c6c1daeSBarry Smith Note: 485c6c1daeSBarry Smith When finished with the drawing context, it should be destroyed 495c6c1daeSBarry Smith with PetscDrawDestroy(). 505c6c1daeSBarry Smith 515c6c1daeSBarry Smith Note for Fortran Programmers: 525c6c1daeSBarry Smith Whenever indicating null character data in a Fortran code, 53ecb7eb19SJed Brown PETSC_NULL_CHARACTER must be employed; using NULL is not 545c6c1daeSBarry Smith correct for character data! Thus, PETSC_NULL_CHARACTER can be 555c6c1daeSBarry Smith used for the display and title input parameters. 565c6c1daeSBarry Smith 575b399a63SLisandro Dalcin .seealso: PetscDrawFlush(), PetscDrawDestroy(), PetscDrawCreate(), PetscDrawOpnOpenGL() 585c6c1daeSBarry Smith @*/ 595c6c1daeSBarry Smith PetscErrorCode PetscDrawOpenX(MPI_Comm comm,const char display[],const char title[],int x,int y,int w,int h,PetscDraw *draw) 605c6c1daeSBarry Smith { 615c6c1daeSBarry Smith PetscErrorCode ierr; 625c6c1daeSBarry Smith 635c6c1daeSBarry Smith PetscFunctionBegin; 645c6c1daeSBarry Smith ierr = PetscDrawCreate(comm,display,title,x,y,w,h,draw);CHKERRQ(ierr); 655c6c1daeSBarry Smith ierr = PetscDrawSetType(*draw,PETSC_DRAW_X);CHKERRQ(ierr); 665c6c1daeSBarry Smith PetscFunctionReturn(0); 675c6c1daeSBarry Smith } 685c6c1daeSBarry Smith 69