X-Git-Url: http://git.kpe.io/?a=blobdiff_plain;ds=sidebyside;f=include%2Fctsupport.h;h=ac3ffe0732ccdbfbd4f675d0770c626df206e40c;hb=55426f4170ed9dc777c3cec3741e4a59e6eebd38;hp=14ef13c2b87edb1d844db171b504aca0093903e4;hpb=ff9c2e8f6e126acbef08e0dfccc6ea112b44ca41;p=ctsim.git diff --git a/include/ctsupport.h b/include/ctsupport.h index 14ef13c..ac3ffe0 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.7 2000/11/28 14:54:07 kevin Exp $ +** $Id: ctsupport.h,v 1.9 2000/12/06 15:17:51 kevin Exp $ ** ** ** This program is free software; you can redistribute it and/or modify @@ -222,6 +222,9 @@ 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); } + template inline T clamp (T value, T lowerBounds, T upperBounds) { return (value >= upperBounds ? upperBounds : (value <= lowerBounds ? lowerBounds : value )); } @@ -248,11 +251,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