Function:ns2cline
From S2PLOT
(Difference between revisions)
Current revision
ns2cline
Draw a coloured line, with colour blended between the two given colours along the line.
Prototype
void ns2cline(float x1, float y1, float z1, float x2, float y2, float z2,
float red1, float green1, float blue1, float red2, float green2, float blue2);
Description
Draw a coloured line from (x1,y1,z1) to (x2,y2,z2). The colour is blended along the line between the two input RGB colours (red1,green1,blue1) and (red2,green2,blue2).
See Also
ns2line | Draw a line from one point to another in a specific colour. |
ns2vline | Draw a line from one point to another in a specific colour - vector input. |
ns2thline | Draw a thick line from one point to another in a specific colour. |
ns2vthline | Draw a thick line from one point to another in a specific colour - vector input. |
ns2vcline | Draw a coloured line, with colour blended between the two given colours along the line - vector input. |
Code Example
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#include "s2plot.h"
int main(int argc, char *argv[])
{
float x1, y1, z1; /* Start of line */
float x2, y2, z2; /* End of line */
float r1, g1, b1; /* Start colour of line segment */
float r2, g2, b2; /* End colour of line segment */
int N = 10; /* Number of lines */
int i; /* Loop variable */
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 */
s2sci(S2_PG_YELLOW); /* Set colour */
for (i=0;i<N;i++) {
x1 = drand48()*2.0 - 1.0; /* Random (x,y,z) coordinates */
y1 = drand48()*2.0 - 1.0;
z1 = drand48()*2.0 - 1.0;
x2 = drand48()*2.0 - 1.0; /* Random (x,y,z) coordinates */
y2 = drand48()*2.0 - 1.0;
z2 = drand48()*2.0 - 1.0;
r1 = drand48(); /* First colour */
g1 = drand48();
b1 = drand48();
r2 = drand48(); /* Second colour */
g2 = drand48();
b2 = drand48();
ns2cline(x1,y1,z1, x2,y2,z2, r1,g1,b1, r2,g2,b2); /* Draw the coloured line */
}
s2show(1); /* Open the s2plot window */
return 1;
}
Back to S2PLOT function list.