Alphabetical Class Index  Class Hierarchy   File Members   Compound Members   File List  

HUtilityAntialiasing.h
00001 //
00002 // Copyright (c) 2000 by Tech Soft 3D, LLC.
00003 // The information contained herein is confidential and proprietary to
00004 // Tech Soft 3D, LLC., and considered a trade secret as defined under
00005 // civil and criminal statutes.  Tech Soft 3D shall pursue its civil
00006 // and criminal remedies in the event of unauthorized use or misappropriation
00007 // of its trade secrets.  Use of this information by anyone other than
00008 // authorized employees of Tech Soft 3D, LLC. is granted only under a
00009 // written non-disclosure agreement, expressly prescribing the scope and
00010 // manner of such use.
00011 //
00012 // $Id: 5552dd57cf83644ce035de5e5d281e3c77a4333c $
00013 //
00014 
00015 #ifndef _HUtilityAntialiasing_H
00016 #define _HUtilityAntialiasing_H
00017 
00018 #ifdef H_PACK_8
00019 #pragma pack(push)
00020 #pragma pack(8)
00021 #endif
00022 
00023 
00024 #include "HTools.h"
00025 #include "hic_types.h"
00026  
00027  
00028 class HBaseView;
00029 
00031 
00035 class MVO_API HUtilityAntialiasing
00036 {
00037 public:
00038 
00040     HUtilityAntialiasing(HBaseView *view);
00041     ~HUtilityAntialiasing();
00042 
00043 
00047     bool GetShowState();
00048 
00053     bool CreateImage();
00054 
00059     void Show(int factor = 4);
00060 
00064     void Hide();
00065 
00071     static void RegisterCallbacks();
00073     static void skip_segment_tree (HIC_Rendition *rendition, HIC_Segment_Info *seg);
00075     static void draw_thick_polylines (HIC_Rendition *rendition, int count, HIC_DC_Point * poi3);
00077     static void draw_thick_polyedges (HIC_Rendition *rendition, int count, HIC_DC_Point *points);
00078 
00079 
00080  
00081 protected:
00082 
00088     void GetWindowSize(int &xmax, int &ymax);
00089 
00090 private:
00091     HBaseView   *m_pHView;
00092     HPixelRGB           *m_pAAImageData; 
00093     HC_KEY      m_AntialisedImageSegmentKey;
00094     int         m_width;
00095     int         m_height;
00096     bool        m_bIsShown;
00097     int         m_factor;
00098 
00099     char        m_drawsegmenttree_callback_name[MVO_BUFFER_SIZE];
00100     char        m_drawwindow_callback_name[MVO_BUFFER_SIZE];
00101     bool        m_bFirst;
00102     char                largeImageSegment[MVO_BUFFER_SIZE];
00103     char                imagedriver[MVO_BUFFER_SIZE];
00104 
00105     bool m_bFirstFirst;     
00106     HC_KEY                  image_key; 
00107 
00108 };
00109 
00110 
00111 #ifdef H_PACK_8
00112 #pragma pack(pop)
00113 #endif
00114 
00115 #endif
00116 
00117 
00118 
00119 
00120