summaryrefslogtreecommitdiff
path: root/app/bin/ccurve.h
diff options
context:
space:
mode:
Diffstat (limited to 'app/bin/ccurve.h')
-rw-r--r--app/bin/ccurve.h18
1 files changed, 15 insertions, 3 deletions
diff --git a/app/bin/ccurve.h b/app/bin/ccurve.h
index 1b2c7f6..c9d1c8c 100644
--- a/app/bin/ccurve.h
+++ b/app/bin/ccurve.h
@@ -1,5 +1,5 @@
-/*
- * $Header: /home/dmarkle/xtrkcad-fork-cvs/xtrkcad/app/bin/ccurve.h,v 1.1 2005-12-07 15:47:36 rc-flyer Exp $
+/** \file ccurve.h
+ * Definitions for curve commands
*/
/* XTrkCad - Model Railroad CAD
@@ -20,6 +20,13 @@
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
*/
+#ifndef HAVE_CCURVE_H
+#define HAVE_CCURVE_H
+
+#include "draw.h"
+#include "track.h"
+#include "wlib.h"
+#include "utility.h"
typedef struct {
curveType_e type;
@@ -27,12 +34,14 @@ typedef struct {
coOrd pos1;
DIST_T curveRadius;
ANGLE_T a0, a1;
+ BOOL_T negative;
} curveData_t;
#define crvCmdFromEP1 (0)
#define crvCmdFromTangent (1)
#define crvCmdFromCenter (2)
#define crvCmdFromChord (3)
+#define crvCmdFromCornu (4)
#define circleCmdFixedRadius (0)
#define circleCmdFromTangent (1)
@@ -45,4 +54,7 @@ void PlotCurve( long, coOrd, coOrd, coOrd, curveData_t *, BOOL_T );
track_p NewCurvedTrack( coOrd, DIST_T, ANGLE_T, ANGLE_T, long );
DIST_T CurveDescriptionDistance( coOrd, track_p );
STATUS_T CurveDescriptionMove( track_p, wAction_t, coOrd );
-BOOL_T GetCurveMiddle( track_p, coOrd * );
+BOOL_T GetCurveMiddle( track_p , coOrd * );
+void DrawArrowHeads(trkSeg_p sp, coOrd pos, ANGLE_T angle, BOOL_T bidirectional, wDrawColor color );
+
+#endif // !HAVE_CCURVE_H