Files
haiku-beta6/headers/os/interface/Polygon.h
T

46 lines
941 B
C++
Raw Normal View History

2007-02-04 13:32:36 +00:00
/*
* Copyright 2001-2007, Haiku, Inc. All Rights Reserved.
* Distributed under the terms of the MIT License.
*
* Authors:
* Marc Flerackers, [email protected]
*/
#ifndef _POLYGON_H
2007-02-04 13:32:36 +00:00
#define _POLYGON_H
2007-02-04 13:32:36 +00:00
#include <BeBuild.h>
#include <InterfaceDefs.h>
#include <Rect.h>
class BPolygon {
public:
BPolygon(const BPoint *ptArray, int32 numPoints);
BPolygon(const BPolygon *polygon);
BPolygon();
virtual ~BPolygon();
BPolygon &operator=(const BPolygon &from);
BRect Frame() const;
void AddPoints(const BPoint *ptArray, int32 numPoints);
int32 CountPoints() const;
void MapTo(BRect srcRect, BRect dstRect);
void PrintToStream() const;
private:
friend class BView;
void _ComputeBounds();
void _MapPoint(BPoint *point, BRect srcRect, BRect dstRect);
void _MapRectangle(BRect *rect, BRect srcRect, BRect dstRect);
private:
BRect fBounds;
int32 fCount;
BPoint *fPoints;
};
2007-02-04 13:32:36 +00:00
#endif // _POLYGON_H_