HowToC:DrawLines
From S2PLOT
(Difference between revisions)
Revision as of 23:50, 10 December 2007 S2plot admin (Talk | contribs) ← Previous diff |
Revision as of 00:01, 11 December 2007 S2plot admin (Talk | contribs) Next diff → |
||
Line 1: | Line 1: | ||
==Drawing Lines== | ==Drawing Lines== | ||
+ | As with points, you can use either the PGPLOT-style functions or the native S2PLOT routines. | ||
- | ===Points example=== | + | ===Lines example=== |
Copy and paste the following code, and save the file as <tt>s2lines.c</tt> | Copy and paste the following code, and save the file as <tt>s2lines.c</tt> | ||
Line 18: | Line 19: | ||
s2opend("/?",argc,argv); /* Which S2PLOT device to open? */ | s2opend("/?",argc,argv); /* Which S2PLOT device to open? */ | ||
s2swin(xmin, xmax, ymin, ymax, zmin, zmax); /* Set the display coordinates */ | s2swin(xmin, xmax, ymin, ymax, zmin, zmax); /* Set the display coordinates */ | ||
+ | |||
+ | float x[10], y[10], z[10]; | ||
+ | int i; | ||
+ | for (i=0;i<10;i++) { | ||
+ | x[i] = drand48()*(xmax-xmin) + xmin; | ||
+ | y[i] = drand48()*(ymax-ymin) + ymin; | ||
+ | z[i] = drand48()*(zmax-zmin) + zmin; | ||
+ | } | ||
+ | s2line(10, x, y, z); | ||
s2show(1); /* Hand over to the display */ | s2show(1); /* Hand over to the display */ | ||
Line 25: | Line 35: | ||
</pre></code> | </pre></code> | ||
- | Compile using: <tt>cbuild.csh s2example<tt> and then run by typing <tt>s2example</tt> at the command prompt. | + | The line-style and thickness are controlled using the s2sls and s2slw functions. To see what they do, put the following code: |
+ | s2sls(style); | ||
+ | s2slw(width); | ||
+ | before the s2line function call, where <tt>style</tt> is an integer that selects one of: | ||
+ | # 1 = normal line | ||
+ | # 2 = dashed | ||
+ | # 3 = dot-dash-dot-dash | ||
+ | # 4 = dotted | ||
+ | # 5 = dash-dot-dot-dot | ||
+ | and <tt>width</tt> is the line width in pixels. | ||
+ | |||
===Experiment for yourself=== | ===Experiment for yourself=== |
Revision as of 00:01, 11 December 2007
Contents |
Drawing Lines
As with points, you can use either the PGPLOT-style functions or the native S2PLOT routines.
Lines example
Copy and paste the following code, and save the file as s2lines.c
#include <stdio.h>
#include <stdlib.h>
#include "s2plot.h"
int main(int argc, char *argv[])
{
float xmin = -1, xmax = +1; /* X data range */
float ymin = -1, ymax = +1; /* Y data range */
float zmin = -1, zmax = +1; /* Z data range */
s2opend("/?",argc,argv); /* Which S2PLOT device to open? */
s2swin(xmin, xmax, ymin, ymax, zmin, zmax); /* Set the display coordinates */
float x[10], y[10], z[10];
int i;
for (i=0;i<10;i++) {
x[i] = drand48()*(xmax-xmin) + xmin;
y[i] = drand48()*(ymax-ymin) + ymin;
z[i] = drand48()*(zmax-zmin) + zmin;
}
s2line(10, x, y, z);
s2show(1); /* Hand over to the display */
return 1;
}
The line-style and thickness are controlled using the s2sls and s2slw functions. To see what they do, put the following code:
s2sls(style); s2slw(width);
before the s2line function call, where style is an integer that selects one of:
- 1 = normal line
- 2 = dashed
- 3 = dot-dash-dot-dash
- 4 = dotted
- 5 = dash-dot-dot-dot
and width is the line width in pixels.
Experiment for yourself
Function Overview
For more information on the functions we have introduced so far, see:
Common Problems
Test code: s2points.c
This is the full test code for the point-drawing example.
Where to Next?
- Back to S2PLOT How To...
- Drawing circles and disks