polygon.h

Go to the documentation of this file.
00001 //
00002 //  Copyright (c) 1996-2006 by Autodesk, Inc.
00003 //
00004 //  By using this code, you are agreeing to the terms and conditions of
00005 //  the License Agreement included in the documentation for this code.
00006 //
00007 //  AUTODESK MAKES NO WARRANTIES, EXPRESS OR IMPLIED, AS TO THE CORRECTNESS
00008 //  OF THIS CODE OR ANY DERIVATIVE WORKS WHICH INCORPORATE IT. AUTODESK
00009 //  PROVIDES THE CODE ON AN "AS-IS" BASIS AND EXPLICITLY DISCLAIMS ANY
00010 //  LIABILITY, INCLUDING CONSEQUENTIAL AND INCIDENTAL DAMAGES FOR ERRORS,
00011 //  OMISSIONS, AND OTHER PROBLEMS IN THE CODE.
00012 //
00013 //  Use, duplication, or disclosure by the U.S. Government is subject to
00014 //  restrictions set forth in FAR 52.227-19 (Commercial Computer Software
00015 //  Restricted Rights) and DFAR 252.227-7013(c)(1)(ii) (Rights in Technical
00016 //  Data and Computer Software), as applicable.
00017 //
00018 
00019 #if !defined POLYGON_HEADER
00020 #define POLYGON_HEADER
00021 
00025 
00026 #include "whiptk/whipcore.h"
00027 #include "whiptk/file.h"
00028 #include "whiptk/drawable.h"
00029 #include "whiptk/pointset.h"
00030 
00035 
00036 
00042 class WHIPTK_API WT_Polygon : public WT_Drawable, public WT_Point_Set
00043 {
00044         friend class WT_W2D_Class_Factory;
00045         friend class WT_Opcode;
00046 
00047 public:
00048 
00050     WT_Polygon ()
00051     { }
00052 
00054     WT_Polygon(
00055         int                         count, 
00056         WT_Logical_Point const *    points, 
00057         WT_Boolean                  copy 
00058         ) throw(WT_Result)
00059         : WT_Point_Set(count, points, copy)
00060     { }
00061 
00063     WT_Polygon(const WT_Polygon & pline) throw(WT_Result)
00064         : WT_Drawable()
00065         , WT_Point_Set(pline.count(), pline.points(), !!pline.allocated())
00066     { }
00067 
00069     virtual ~WT_Polygon()
00070     { }
00071 public:
00073 
00076     WT_Polygon const & operator= (const WT_Polygon & polygon) throw(WT_Result)
00077     {
00078         set(polygon.count(), polygon.points(), !!polygon.allocated());
00079         return *this;
00080     }
00081 
00083     WT_ID            object_id() const;
00084     WT_Result        materialize(WT_Opcode const & opcode, WT_File & file);
00085     WT_Result        serialize(WT_File & file) const;
00086     WT_Result        skip_operand(WT_Opcode const & opcode, WT_File & file);
00087     WT_Result        process(WT_File & file);
00088     virtual void     update_bounds(WT_File * file);
00090 
00092 
00094     static WT_Result default_process(
00095         WT_Polygon & item, 
00096         WT_File & file 
00097         );
00098 
00099 };
00100 
00102 #endif // POLYGON_HEADER

Generated on Tue Jan 6 22:41:13 2009 for Autodesk DWF Whip 2D Toolkit by  doxygen 1.4.5