wolffd@0: /* $Id: pathgeom.h,v 1.4 2009/06/03 01:10:54 ellson Exp $ $Revision: 1.4 $ */ wolffd@0: /* vim:set shiftwidth=4 ts=8: */ wolffd@0: wolffd@0: /********************************************************** wolffd@0: * This software is part of the graphviz package * wolffd@0: * http://www.graphviz.org/ * wolffd@0: * * wolffd@0: * Copyright (c) 1994-2004 AT&T Corp. * wolffd@0: * and is licensed under the * wolffd@0: * Common Public License, Version 1.0 * wolffd@0: * by AT&T Corp. * wolffd@0: * * wolffd@0: * Information and Software Systems Research * wolffd@0: * AT&T Research, Florham Park NJ * wolffd@0: **********************************************************/ wolffd@0: wolffd@0: wolffd@0: #ifndef _PATHGEOM_INCLUDE wolffd@0: #define _PATHGEOM_INCLUDE wolffd@0: wolffd@0: #ifdef __cplusplus wolffd@0: extern "C" { wolffd@0: #endif wolffd@0: wolffd@0: #ifdef HAVE_POINTF_S wolffd@0: typedef struct pointf_s Ppoint_t; wolffd@0: typedef struct pointf_s Pvector_t; wolffd@0: #else wolffd@0: typedef struct Pxy_t { wolffd@0: double x, y; wolffd@0: } Pxy_t; wolffd@0: wolffd@0: typedef struct Pxy_t Ppoint_t; wolffd@0: typedef struct Pxy_t Pvector_t; wolffd@0: #endif wolffd@0: wolffd@0: typedef struct Ppoly_t { wolffd@0: Ppoint_t *ps; wolffd@0: int pn; wolffd@0: } Ppoly_t; wolffd@0: wolffd@0: typedef Ppoly_t Ppolyline_t; wolffd@0: wolffd@0: typedef struct Pedge_t { wolffd@0: Ppoint_t a, b; wolffd@0: } Pedge_t; wolffd@0: wolffd@0: /* opaque state handle for visibility graph operations */ wolffd@0: typedef struct vconfig_s vconfig_t; wolffd@0: wolffd@0: #ifdef __cplusplus wolffd@0: } wolffd@0: #endif wolffd@0: #endif