1// -*- C++ -*-
2/* Copyright (C) 1989, 1990, 1991, 1992 Free Software Foundation, Inc.
3     Written by James Clark (jjc@jclark.com)
4
5This file is part of groff.
6
7groff is free software; you can redistribute it and/or modify it under
8the terms of the GNU General Public License as published by the Free
9Software Foundation; either version 2, or (at your option) any later
10version.
11
12groff is distributed in the hope that it will be useful, but WITHOUT ANY
13WARRANTY; without even the implied warranty of MERCHANTABILITY or
14FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
15for more details.
16
17You should have received a copy of the GNU General Public License along
18with groff; see the file COPYING.  If not, write to the Free Software
19Foundation, 51 Franklin St - Fifth Floor, Boston, MA 02110-1301, USA. */
20
21struct place;
22struct position {
23  double x;
24  double y;
25  position(double, double );
26  position();
27  position(const place &);
28  position &operator+=(const position &);
29  position &operator-=(const position &);
30  position &operator*=(double);
31  position &operator/=(double);
32};
33
34position operator-(const position &);
35position operator+(const position &, const position &);
36position operator-(const position &, const position &);
37position operator/(const position &, double);
38position operator*(const position &, double);
39// dot product
40double operator*(const position &, const position &);
41int operator==(const position &, const position &);
42int operator!=(const position &, const position &);
43
44double hypot(const position &a);
45
46typedef position distance;
47
48