1c4762a1bSJed Brown static char help[] = "Demonstrates use of color map\n";
2c4762a1bSJed Brown
3c4762a1bSJed Brown #include <petscsys.h>
4c4762a1bSJed Brown #include <petscdraw.h>
5c4762a1bSJed Brown
main(int argc,char ** argv)6d71ae5a4SJacob Faibussowitsch int main(int argc, char **argv)
7d71ae5a4SJacob Faibussowitsch {
8c4762a1bSJed Brown PetscDraw draw;
9c4762a1bSJed Brown PetscMPIInt size, rank;
10c4762a1bSJed Brown int x = 0, y = 0, width = 256, height = 256, i;
11c4762a1bSJed Brown
12327415f7SBarry Smith PetscFunctionBeginUser;
139566063dSJacob Faibussowitsch PetscCall(PetscInitialize(&argc, &argv, NULL, help));
149566063dSJacob Faibussowitsch PetscCall(PetscDrawCreate(PETSC_COMM_WORLD, 0, "Title", x, y, width, height, &draw));
159566063dSJacob Faibussowitsch PetscCall(PetscDrawSetFromOptions(draw));
169566063dSJacob Faibussowitsch PetscCallMPI(MPI_Comm_size(PETSC_COMM_WORLD, &size));
179566063dSJacob Faibussowitsch PetscCallMPI(MPI_Comm_rank(PETSC_COMM_WORLD, &rank));
18c4762a1bSJed Brown for (i = rank; i < height; i += size) {
19c4762a1bSJed Brown PetscReal y = ((PetscReal)i) / (height - 1);
209566063dSJacob Faibussowitsch PetscCall(PetscDrawLine(draw, 0.0, y, 1.0, y, i % 256));
21c4762a1bSJed Brown }
229566063dSJacob Faibussowitsch PetscCall(PetscDrawFlush(draw));
239566063dSJacob Faibussowitsch PetscCall(PetscDrawPause(draw));
249566063dSJacob Faibussowitsch PetscCall(PetscDrawSave(draw));
259566063dSJacob Faibussowitsch PetscCall(PetscDrawDestroy(&draw));
269566063dSJacob Faibussowitsch PetscCall(PetscFinalize());
27b122ec5aSJacob Faibussowitsch return 0;
28c4762a1bSJed Brown }
29c4762a1bSJed Brown
30c4762a1bSJed Brown /*TEST
31c4762a1bSJed Brown
32c4762a1bSJed Brown build:
33c4762a1bSJed Brown requires: x
34c4762a1bSJed Brown
35c4762a1bSJed Brown test:
36*3886731fSPierre Jolivet output_file: output/empty.out
37c4762a1bSJed Brown
38c4762a1bSJed Brown TEST*/
39