Function:ns2vf3n
From S2PLOT
ns2vf3n
3-vertex facet with single colour and normals given.
Prototype
void ns2vf3n(XYZ *P, XYZ *N, COLOUR col);
Description
Draw a 3-vertex facet with a single colour. The vertices are given by the array P, normals are specified in the array N, and the RGB colours is col.
See Also
ns2vf3 | 3-vertex facet with single colour and automatic normals. |
ns2vf3c | 3-vertex facet with coloured vertices and autmoatic normals. |
ns2vf3nc | 3-vertex facet with coloured vertices and normals given. |
ns2vf3a | 3-vertex facet with transparency |
struct_COLOUR | Data structure for (r,g,b) colour indices. |
struct_XYZ | Data structure for (x,y,z) coordinates. |
Code Example
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#include "s2plot.h"
int main(int argc, char *argv[])
{
XYZ vertex[3]; /* 3 vertices */
XYZ normal[3]; /* 3 vertices */
COLOUR col = { 1.0, 1.0, 0.3 }; /* Yellowish */
int i;
srand48((long)time(NULL)); /* Seed random numbers */
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 */
for (i=0;i<3;i++) {
vertex[i].x = drand48()*2.0 - 1.0; /* Random corners to facet */
vertex[i].y = drand48()*2.0 - 1.0;
vertex[i].z = drand48()*2.0 - 1.0;
normal[i].x = drand48()*2.0 - 1.0; /* Random normal for facet */
normal[i].y = drand48()*2.0 - 1.0;
normal[i].z = drand48()*2.0 - 1.0;
}
ns2vf3n(vertex, normal, col); /* Draw 3-vertex facet */
s2show(1); /* Open the s2plot window */
return 1;
}
Back to S2PLOT function list.