00001 //$Header: /home/ben/Mapper/include/RCS/curve_segment.h,v 6.1 2002/06/25 16:13:52 ben Exp $
00002 #ifndef CURVESEGMENT_H
00003 #define CURVESEGMENT_H
00004 // Copyright Benedict Adamson 2002.
00005 // This file is part of Mapper.
00006
00007 // Mapper is free software; you can redistribute it and/or modify
00008 // it under the terms of the GNU General Public License as published by
00009 // the Free Software Foundation; either version 2 of the License, or
00010 // (at your option) any later version.
00011
00012 // Mapper is distributed in the hope that it will be useful,
00013 // but WITHOUT ANY WARRANTY; without even the implied warranty of
00014 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
00015 // GNU General Public License for more details.
00016
00017 // You should have received a copy of the GNU General Public License
00018 // along with Mapper; if not, write to the Free Software
00019 // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
00020
00031 class curve;
00032 class vector2;
00033
00034
00035
00039 struct curve_segment
00040 {
00041 public: //constructors
00042
00046 inline curve_segment(void);
00047
00062 inline curve_segment(
00063 curve *c,
00064 vector2 *f,
00065 vector2 *t
00066 );
00067
00068 public: //relationships
00069
00073 curve *along;
00074
00078 vector2 *from;
00079
00083 vector2 *to;
00084 };
00085
00086
00087
00088 inline curve_segment::curve_segment(void)
00089 {
00090 //Do nothing
00091 }
00092
00093
00094 inline curve_segment::curve_segment(
00095 curve *c,
00096 vector2 *f,
00097 vector2 *t
00098 )
00099 :
00100 along( c ),
00101 from( f ),
00102 to( t )
00103 {
00104 //Do nothing
00105 }
00106
00107 #endif