aboutsummaryrefslogtreecommitdiff
path: root/generic/Geo.h
diff options
context:
space:
mode:
authorlecoanet2000-01-26 13:39:20 +0000
committerlecoanet2000-01-26 13:39:20 +0000
commit9d2861b8fb77adc89682633330b312b55acb0288 (patch)
tree96e66a3d4b56f0257112ee73e27415c327b6060a /generic/Geo.h
parent65c1342e3831bd04543e64c226ac6372bbaef905 (diff)
downloadtkzinc-9d2861b8fb77adc89682633330b312b55acb0288.zip
tkzinc-9d2861b8fb77adc89682633330b312b55acb0288.tar.gz
tkzinc-9d2861b8fb77adc89682633330b312b55acb0288.tar.bz2
tkzinc-9d2861b8fb77adc89682633330b312b55acb0288.tar.xz
*** empty log message ***
Diffstat (limited to 'generic/Geo.h')
-rw-r--r--generic/Geo.h31
1 files changed, 30 insertions, 1 deletions
diff --git a/generic/Geo.h b/generic/Geo.h
index 28e3dae..00382ea 100644
--- a/generic/Geo.h
+++ b/generic/Geo.h
@@ -49,7 +49,7 @@
#define ABS(a) ((a) < 0 ? -(a) : (a))
#endif
#ifndef M_PI
-#define M_PI 3.14159265358979323846
+#define M_PI 3.14159265358979323846264338327
#endif
#ifndef M_PI_2
#define M_PI_2 1.57079632679489661923
@@ -152,6 +152,24 @@ OvalInBBox(RadarPoint *center,
RadarBBox *bbox);
RadarBool
+HorizLineToArc(RadarReal x1,
+ RadarReal x2,
+ RadarReal y,
+ RadarReal rx,
+ RadarReal ry,
+ RadarReal start_angle,
+ RadarReal angle_extent);
+
+RadarBool
+VertLineToArc(RadarReal x,
+ RadarReal y1,
+ RadarReal y2,
+ RadarReal rx,
+ RadarReal ry,
+ RadarReal start_angle,
+ RadarReal angle_extent);
+
+RadarBool
PointInAngle(int start_angle,
int angle_extent,
RadarPoint *p);
@@ -220,6 +238,11 @@ InsetPolygon(RadarPoint *p,
RadarDim inset);
void
+BezierSubdivide(RadarPoint *controls,
+ RadarReal t,
+ RadarBool first);
+
+void
SmoothPathWithBezier(RadarList from_points,
RadarList to_points);
@@ -228,6 +251,12 @@ GetBezierPath(RadarList from_points,
RadarList to_points);
void
+GetArcPath(RadarReal start_angle,
+ RadarReal end_angle,
+ int type,
+ RadarList to_points);
+
+void
GetLineEnd(RadarPoint *p1,
RadarPoint *p2,
unsigned int line_width,