Import GNU Classpath (20121202).
[official-gcc.git] / libjava / java / awt / geom / Area.h
blob6a127dced4541ebc994c5cfd67f4ac1f00d1a526
2 // DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
4 #ifndef __java_awt_geom_Area__
5 #define __java_awt_geom_Area__
7 #pragma interface
9 #include <java/lang/Object.h>
10 #include <gcj/array.h>
12 extern "Java"
14 namespace java
16 namespace awt
18 class Rectangle;
19 class Shape;
20 namespace geom
22 class AffineTransform;
23 class Area;
24 class Area$CubicSegment;
25 class Area$Intersection;
26 class Area$LineSegment;
27 class Area$QuadSegment;
28 class Area$Segment;
29 class CubicCurve2D;
30 class PathIterator;
31 class Point2D;
32 class Rectangle2D;
38 class java::awt::geom::Area : public ::java::lang::Object
41 public:
42 Area();
43 Area(::java::awt::Shape *);
44 virtual void add(::java::awt::geom::Area *);
45 virtual void subtract(::java::awt::geom::Area *);
46 virtual void intersect(::java::awt::geom::Area *);
47 virtual void exclusiveOr(::java::awt::geom::Area *);
48 virtual void reset();
49 virtual jboolean isEmpty();
50 virtual jboolean isPolygonal();
51 virtual jboolean isRectangular();
52 virtual jboolean isSingular();
53 virtual ::java::awt::geom::Rectangle2D * getBounds2D();
54 virtual ::java::awt::Rectangle * getBounds();
55 virtual ::java::lang::Object * clone();
56 virtual jboolean equals(::java::awt::geom::Area *);
57 virtual void transform(::java::awt::geom::AffineTransform *);
58 virtual ::java::awt::geom::Area * createTransformedArea(::java::awt::geom::AffineTransform *);
59 virtual jboolean contains(jdouble, jdouble);
60 virtual jboolean contains(::java::awt::geom::Point2D *);
61 virtual jboolean contains(jdouble, jdouble, jdouble, jdouble);
62 virtual jboolean contains(::java::awt::geom::Rectangle2D *);
63 virtual jboolean intersects(jdouble, jdouble, jdouble, jdouble);
64 virtual jboolean intersects(::java::awt::geom::Rectangle2D *);
65 virtual ::java::awt::geom::PathIterator * getPathIterator(::java::awt::geom::AffineTransform *);
66 virtual ::java::awt::geom::PathIterator * getPathIterator(::java::awt::geom::AffineTransform *, jdouble);
67 private:
68 ::java::util::Vector * weilerAtherton(::java::util::Vector *);
69 jint getRecursionDepth(::java::awt::geom::Area$CubicSegment *);
70 void recursiveSubdivide(::java::awt::geom::CubicCurve2D *, ::java::awt::geom::CubicCurve2D *, jint, jint, jdouble, jdouble, jdouble, jdouble);
71 public: // actually package-private
72 virtual JArray< ::java::awt::geom::Area$Intersection * > * cubicCubicIntersect(::java::awt::geom::Area$CubicSegment *, ::java::awt::geom::Area$CubicSegment *);
73 virtual JArray< ::java::awt::geom::Area$Intersection * > * lineQuadIntersect(::java::awt::geom::Area$LineSegment *, ::java::awt::geom::Area$QuadSegment *);
74 virtual JArray< ::java::awt::geom::Area$Intersection * > * lineCubicIntersect(::java::awt::geom::Area$LineSegment *, ::java::awt::geom::Area$CubicSegment *);
75 virtual ::java::awt::geom::Area$Intersection * linesIntersect(::java::awt::geom::Area$LineSegment *, ::java::awt::geom::Area$LineSegment *);
76 virtual jboolean pointEquals(::java::awt::geom::Point2D *, ::java::awt::geom::Point2D *);
77 private:
78 ::java::util::Vector * makeSegment(::java::awt::Shape *);
79 jint createNodes(::java::awt::geom::Area$Segment *, ::java::awt::geom::Area$Segment *);
80 jint createNodesSelf(::java::awt::geom::Area$Segment *);
81 void deleteRedundantPaths(::java::util::Vector *);
82 void setDirection(::java::util::Vector *, jboolean);
83 static jdouble EPSILON;
84 static jdouble RS_EPSILON;
85 static jdouble PE_EPSILON;
86 public: // actually package-private
87 ::java::util::Vector * __attribute__((aligned(__alignof__( ::java::lang::Object)))) solids;
88 ::java::util::Vector * holes;
89 private:
90 ::java::util::Vector * ccIntersections;
91 jint windingRule;
92 public:
93 static ::java::lang::Class class$;
96 #endif // __java_awt_geom_Area__