Function:ss2srm
From S2PLOT
ss2srm
Set the rendering mode.
Prototype
void ss2srm(int mode);
Description
Set the rendering mode. Options are:
- WIREFRAME
- SHADE_FLAT
- SHADE_DIFFUSE
- SHADE_SPECULAR
At runtime, the rendering mode may be toggled by pressing the R key.
See Also
ss2qrm | Get the rendering mode. |
Code Example
#include <stdio.h>
#include <stdlib.h>
#include "s2plot.h"
#define WIREFRAME 0
#define SHADE_FLAT 1
#define SHADE_DIFFUSE 2
#define SHADE_SPECULAR 3
void numcb(int *N)
{
switch(*N) { /* Set the render mode */
case 1 : ss2srm(WIREFRAME); break;
case 2 : ss2srm(SHADE_FLAT); break;
case 3 : ss2srm(SHADE_DIFFUSE); break;
case 4 : ss2srm(SHADE_SPECULAR); break;
default : return;
}
cs2tcb(); /* Turn the callback back on */
}
void cb(double *t, int *kc)
{
float x, y, z; /* Position */
float r, g, b; /* Colour */
float radius = 0.3; /* Radius */
x = 0.0; y = 0.0; z = 0.0;
r = 1.0; g = 1.0; b = 1.0; /* Yellow */
ns2sphere(x,y,z, radius, r,g,b); /* Draw the sphere */
cs2tcb(); /* Temporarily turn-off callback */
}
int main(int argc, char *argv[])
{
s2opend("/?",argc, argv); /* Open the display */
s2swin(-1.,1., -1.,1., -1.,1.); /* Set the window coordinates */
s2box("BCDET",0,0,"BCDET",0,0,"BCDET",0,0); /* Draw coordinate box */
cs2scb(&cb); /* Install callback */
cs2sncb(&numcb); /* Install number callback */
s2show(1); /* Open the s2plot window */
return 1;
}
Back to S2PLOT function list.