Alphabetical Class Index  Class Hierarchy   File Members   Compound Members   File List  

HUtilityAnnotationMeasure.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: 4a617e2b0b9493880c3d7897258ef2fa0db44960 $
00013 //
00014 
00015 // HUtilityAnnotationMeasure.h : interface of the HUtilityAnnotationMeasure class
00016 
00017 #ifndef _HUtilityAnnotationMeasure_H
00018 #define _HUtilityAnnotationMeasure_H
00019  
00020 #ifdef H_PACK_8
00021 #pragma pack(push)
00022 #pragma pack(8)
00023 #endif
00024 
00025 #include "hic_types.h"
00026 
00027 #include "HTools.h"
00028 #include "HUtilityAnnotation.h"
00029 
00031 
00034 class MVO_API HUtilityAnnotationMeasure : public HUtilityAnnotation
00035 {
00036 public:
00038     virtual char const* GetType() {return "HUtilityAnnotationMeasure";};
00039 
00051     virtual HC_KEY Insert(
00052         HPoint target,
00053         HPoint position,
00054         HC_KEY AnnotateThis,
00055         HBaseView * pView,
00056         HC_KEY layer_key = INVALID_KEY,
00057         int bg_type = BG_QUAD,
00058         bool useArrow = true,
00059         HC_KEY * key_path = (HC_KEY*)0,
00060         int key_path_length = 0);
00061 
00074     virtual HC_KEY Insert(
00075         char const * text,
00076         HPoint target,
00077         HPoint position,
00078         HC_KEY AnnotateThis,
00079         HBaseView * pView,
00080         HC_KEY layer_key = INVALID_KEY,
00081         int bg_type = BG_QUAD,
00082         bool useArrow = true,
00083         HC_KEY * key_path = (HC_KEY*)0,
00084         int key_path_length = 0);
00085 
00098     virtual HC_KEY InsertWithEncoding(
00099         unsigned short const * text,
00100         HPoint target,
00101         HPoint position,
00102         HC_KEY AnnotateThis,
00103         HBaseView * pView,
00104         HC_KEY layer_key = INVALID_KEY,
00105         int bg_type = BG_QUAD,
00106         bool useArrow = true,
00107         HC_KEY * key_path = (HC_KEY*)0,
00108         int key_path_length = 0);
00109 
00111     virtual void MoveText(HPoint position);
00112 
00114     virtual void MoveText(HPoint A, HPoint B);
00115 
00117     static bool IsMeasurement(HC_KEY key);
00118 
00121     virtual void SetNote(HC_KEY noteskey, HBaseView *view);
00122     static void drawLineCallbackDummy (HIC_Rendition const *rendition,int count, HIC_DC_Point *p);
00123 
00124 protected:
00125     static void mid_point(HPoint &A, HPoint &B, HPoint &mid);
00126 
00127     HPoint m_pnt_a1, m_pnt_b1;
00128     HPoint m_pnt_a2, m_pnt_b2, m_position;
00129 };
00130 
00131 
00132 #ifdef H_PACK_8
00133 #pragma pack(pop)
00134 #endif
00135 
00136 #endif
00137 
00138 
00139