1 /* This file is part of the GNU plotutils package.  Copyright (C) 1995,
2    1996, 1997, 1998, 1999, 2000, 2005, 2008, Free Software Foundation, Inc.
3 
4    The GNU plotutils package is free software.  You may redistribute it
5    and/or modify it under the terms of the GNU General Public License as
6    published by the Free Software foundation; either version 2, or (at your
7    option) any later version.
8 
9    The GNU plotutils package is distributed in the hope that it will be
10    useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
11    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
12    General Public License for more details.
13 
14    You should have received a copy of the GNU General Public License along
15    with the GNU plotutils package; see the file COPYING.  If not, write to
16    the Free Software Foundation, Inc., 51 Franklin St., Fifth Floor,
17    Boston, MA 02110-1301, USA. */
18 
19 /* The internal point-drawing function, which point() is a wrapper around.
20    It draws a point at the current location.  There is no standard
21    definition of `point', so any Plotter is free to implement this as it
22    sees fit. */
23 
24 #include "sys-defines.h"
25 #include "extern.h"
26 
27 void
_pl_m_paint_point(S___ (Plotter * _plotter))28 _pl_m_paint_point (S___(Plotter *_plotter))
29 {
30   _pl_m_set_attributes (R___(_plotter)
31 		     PL_ATTR_TRANSFORMATION_MATRIX
32 		     | PL_ATTR_PEN_COLOR | PL_ATTR_PEN_TYPE);
33   _pl_m_emit_op_code (R___(_plotter) O_FPOINT);
34   _pl_m_emit_float (R___(_plotter) _plotter->drawstate->pos.x);
35   _pl_m_emit_float (R___(_plotter) _plotter->drawstate->pos.y);
36   _pl_m_emit_terminator (S___(_plotter));
37 
38   _plotter->meta_pos = _plotter->drawstate->pos;
39 
40   return;
41 }
42 
43