/****************************************************************************************


		MCPolygon.h

		Copyright: (c) 2001 Eovia Corp. All rights reserved.


		Author:	Eric B.
		Date:	12/21/98

		Revision History

		when		who			what & why
		==========	==========	======================================================
		6/10/99		Yann		Added forward declaration of TMCRect 

*****************************************************************************************/

#ifndef __MCPolygon__
#define __MCPolygon__

#if CP_PRAGMA_ONCE
#pragma once
#endif

#include "MCBasicTypes.h"
#include "MCPublicGCTypes.h"

class TMCRect;

/// Undocumented
///
class TMCPolygon
{
	public:

		TMCPolygon(void);
		TMCPolygon(uint16 nbrVertices);
		~TMCPolygon(void);
		TMCPolygon*	Clone(void);

		enum
		{
			kPolyMaxNbrVertices = 8000
		};

		void	MoveTo(MCXYPos xPos, MCXYPos yPos);
		void	LineTo(MCXYPos xPos, MCXYPos yPos);
		uint16	GetSize(void) const;
		void*	GetBase(void) const;
		void	GetBounds(TMCRect& arect) const;
		void	Offset(MCXYPos xPos, MCXYPos yPos);


	protected:
		void*	fData;
		void*	fCurPos;
		void*	fEndPos;
};

#endif