X-Git-Url: http://git.kpe.io/?p=ctsim.git;a=blobdiff_plain;f=include%2Fctsupport.h;h=6263b69bd88228019a0e5f930d3ec66dc930aa46;hp=58274ee3039a9e37c7157a73f3dbcb7a70eef987;hb=6afa21de8aa00b405de47584efe108c71df33e1b;hpb=3e346e67f7f7a331919a32439b0f54a4d53d3029 diff --git a/include/ctsupport.h b/include/ctsupport.h index 58274ee..6263b69 100644 --- a/include/ctsupport.h +++ b/include/ctsupport.h @@ -9,7 +9,7 @@ ** This is part of the CTSim program ** Copyright (C) 1983-2000 Kevin Rosenberg ** -** $Id: ctsupport.h,v 1.5 2000/06/28 15:25:34 kevin Exp $ +** $Id: ctsupport.h,v 1.11 2000/12/16 02:44:26 kevin Exp $ ** ** ** This program is free software; you can redistribute it and/or modify @@ -33,17 +33,17 @@ #include "config.h" #endif -#ifdef _WIN32 +#ifdef MSVC #define snprintf _snprintf #endif #define STR_MAX_LEN 255 #define STR_SIZE STR_MAX_LEN+1 -#include -#include -#include -#include +#include +#include +#include +#include #define TRUE 1 #define FALSE 0 @@ -92,7 +92,7 @@ typedef struct timedate_st TIMEDATE; /* codes for open command */ -#if MICROSOFT +#ifdef MSVC #define OPEN_RDONLY O_RDONLY /* other system use standard codes */ #define OPEN_WRONLY O_WRONLY /* for binary */ #define OPEN_RDWR O_RDWR @@ -114,7 +114,7 @@ typedef struct timedate_st TIMEDATE; /*----------------------------------------------------------------------*/ -#if defined(MICROSOFT) || ! defined(SIZEOF_INT) +#if defined(MSVC) || ! defined(SIZEOF_INT) #define SIZEOF_INT 4 #define SIZEOF_LONG 4 #define SIZEOF_SHORT 2 @@ -191,7 +191,7 @@ char *td_day_name(int n); // Math Section -#include +#include #define PI 3.14159265358979323846 #define HALFPI 1.57079632679489661923 /* PI divided by 2 */ @@ -222,6 +222,12 @@ template inline T nearest (double x) { return (x > 0 ? static_cast(x+0.5) : static_cast(x-0.5)); } +inline int imax (int a, int b) +{ return (a >= b ? a : b); } + +inline double dmax (double a, double b) +{ return (a >= b ? a : b); } + template inline T clamp (T value, T lowerBounds, T upperBounds) { return (value >= upperBounds ? upperBounds : (value <= lowerBounds ? lowerBounds : value )); } @@ -248,11 +254,11 @@ inline void minmax_array (const T* array, const int n, T& min, T& max) ////////////////////////////////////////////////////////////// // clip.cpp -int clip_rect (double& x1, double& y1, double& x2, double& y2, const double rect[4]); -int clip_segment (double& x1, double& y1, double& x2, double& y2, const double u, const double v); -int clip_sector (double& x1, double& y1, double& x2, double& y2, const double u, const double v); -int clip_circle (double& x1, double& y1, double& x2, double& y2, const double cx, const double cy, const double radius, double t1, double t2); -int clip_triangle (double& x1, double& y1, double& x2, double& y2, const double u, const double v, const int clip_xaxis); +bool clip_rect (double& x1, double& y1, double& x2, double& y2, const double rect[4]); +bool clip_segment (double& x1, double& y1, double& x2, double& y2, const double u, const double v); +bool clip_sector (double& x1, double& y1, double& x2, double& y2, const double u, const double v); +bool clip_circle (double& x1, double& y1, double& x2, double& y2, const double cx, const double cy, const double radius, double t1, double t2); +bool clip_triangle (double& x1, double& y1, double& x2, double& y2, const double u, const double v, const int clip_xaxis); // xform.cpp @@ -271,25 +277,6 @@ double normalizeAngle (double theta); double integrateSimpson (const double xmin, const double xmax, const double *y, const int np); -// Console I/O Section - -#define C_BLACK 0 /* color codes */ -#define C_BLUE 1 -#define C_GREEN 2 -#define C_CYAN 3 -#define C_RED 4 -#define C_MAGENTA 5 -#define C_BROWN 6 -#define C_WHITE 7 -#define C_GREY 8 -#define C_LTBLUE 9 -#define C_LTGREEN 10 -#define C_LTCYAN 11 -#define C_LTRED 12 -#define C_LTMAGENTA 13 -#define C_YELLOW 14 -#define C_LTWHITE 15 - /*----------------------------------------------------------------------*/ /* screen character codes */ @@ -361,4 +348,4 @@ unsigned int cio_kb_waitc(const char *astr, int beep); #define PERIOD '.' #define VERTBAR '|' -#endif /* #ifndef ASCII_H */ +#endif /* #ifndef CTSUPPORT_H */