File: p_point.c

package info (click to toggle)
plotutils 2.4.1-11
  • links: PTS
  • area: main
  • in suites: sarge
  • size: 11,676 kB
  • ctags: 6,967
  • sloc: ansic: 76,305; sh: 15,172; cpp: 12,403; yacc: 2,604; makefile: 888; lex: 144
file content (36 lines) | stat: -rw-r--r-- 989 bytes parent folder | download | duplicates (3)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
/* The internal point-drawing function, which point() is a wrapper around.
   It draws a point at the current location.  There is no standard
   definition of `point', so any Plotter is free to implement this as it
   sees fit. */

/* In the PSPlotter class, a `point' is displayed as a small filled circle
   (one of libplot's standard marker symbols). */

#include "sys-defines.h"
#include "extern.h"

void
#ifdef _HAVE_PROTOS
_p_paint_point (S___(Plotter *_plotter))
#else
_p_paint_point (S___(_plotter))
     S___(Plotter *_plotter;)
#endif
{
  double norm;

  if (_plotter->drawstate->pen_type != 0)
    /* have a pen to draw with */
    {
      /* compute size of a `point' in user coordinates */
      norm = _matrix_norm (_plotter->drawstate->transform.m);
      if (norm != 0.0)
	{
	  double user_size;
	  
	  user_size = POINT_PS_SIZE / _matrix_norm (_plotter->drawstate->transform.m);
	  _plotter->paint_marker (R___(_plotter) 
				 (int)M_FILLED_CIRCLE, user_size);
	}
    }
}