Function:ns2thcline

From S2PLOT

(Difference between revisions)
Jump to: navigation, search
Revision as of 01:18, 7 January 2009
S2plot admin (Talk | contribs)

← Previous diff
Current revision
S2plot admin (Talk | contribs)

Line 27: Line 27:
<code><pre> <code><pre>
-</pre></code>+#include <stdio.h>
 +#include <stdlib.h>
 +#include <time.h>
 +#include "s2plot.h"
-[[S2PLOT:Function List | Back]] to S2PLOT function list.+int main(int argc, char *argv[])
 +{
 + float x1, y1, z1; /* Start of line */
 + float x2, y2, z2; /* End of line */
 + float r1, g1, b1; /* Colour of line segment (start) */
 + float r2, g2, b2; /* Colour of line segment (end) */
 + float size; /* Thickness of line */
 + 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();
 + g1 = drand48();
 + b1 = drand48();
 + r2 = drand48();
 + g2 = drand48();
 + b2 = drand48();
 + size = drand48()*10.0; /* Line thickness */
 + ns2thcline(x1,y1,z1, x2,y2,z2, r1,g1,b1, r2,g2,b2, size); /* Draw the thick line */
 + }
-__NOTOC__+ s2show(1); /* Open the s2plot window */
-__NOEDITSECTION__+
 + return 1;
 +}
 +</pre></code>
-Back to [[Function:Template | template]] page.+[[S2PLOT:Function List | Back]] to S2PLOT function list.
 + 
 +__NOTOC__
 +__NOEDITSECTION__

Current revision

ns2cline

Draw a thick coloured line.

Prototype

void ns2thcline(float x1, float y1, float z1, float x2, float y2, float z2, 
                float red1, float green1, 
                float blue1, float red2, float green2, float blue2,float width);

Description

Draw a thick coloured line, with colour blended between the two given colours along the line, and given width.

See Also

ns2vthcline Draw a thick coloured line - vector input.
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.
ns2cline Draw a coloured line, with colour blended between the two given colours along the line.
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;                            /* Colour of line segment (start) */
   float r2, g2, b2;                            /* Colour of line segment (end) */
   float size;                                  /* Thickness of line */
   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();
      g1  = drand48();
      b1  = drand48();
      r2  = drand48();
      g2  = drand48();
      b2  = drand48();
      size = drand48()*10.0;                    /* Line thickness */
      ns2thcline(x1,y1,z1, x2,y2,z2, r1,g1,b1, r2,g2,b2, size); /* Draw the thick line */
   }

   s2show(1);                                   /* Open the s2plot window */

   return 1;
}

Back to S2PLOT function list.


Personal tools