Alphabetical Class Index  Class Hierarchy   File Members   Compound Members   File List  

misc.h
00001 // Copyright (c) 1998-2014 by Tech Soft 3D, Inc.
00002 //
00003 // The information contained herein is confidential and proprietary to Tech Soft 3D, Inc.,
00004 // and considered a trade secret as defined under civil and criminal statutes.
00005 // Tech Soft 3D, Inc. shall pursue its civil and criminal remedies in the event of
00006 // unauthorized use or misappropriation of its trade secrets.  Use of this information
00007 // by anyone other than authorized employees of Tech Soft 3D, Inc. is granted only under
00008 // a written non-disclosure agreement, expressly prescribing the scope and manner of such use.
00009 
00010 #pragma once
00011 
00012 #include <dbcolor.h>
00013 #include <dbents.h>
00014 #include <gevec3d.h>
00015 #include <hc.h>
00016 
00017 #include <set>
00018 #include <map>
00019 
00020 HC_KEY My_Insert_Circle(double const * ip1, double const * ip2, double const * ip3);
00021 void copy_dwg_matrix(float matrix[16], AcGeMatrix3d const & autocad_matrix);
00022 void calculate_alignment(AcDbText * in_text, char * out_alignment);
00023 void calculate_alignment(AcDbMText::AttachmentPoint attachmentPoint, char * out_alignment);
00024 void insert_arrow(AcGePoint3d startPoint, AcGePoint3d endPoint);
00025 
00026 #define DWG_HASH_BYTES 16
00027 #define DWG_HASH_SIZE 2*DWG_HASH_BYTES+1
00028 
00029 struct mTextData
00030 {
00031 public:
00032     std::map<AcDbHandle, HC_KEY> mtext_handles;
00033     std::set<HC_KEY> mtext_segments;
00034 };
00035 
00036 class DWG_HASH
00037 {
00038 private:
00039     char m_str[DWG_HASH_SIZE];
00040 public:
00041     DWG_HASH(void const * input, size_t const len);
00042     ~DWG_HASH();
00043 
00044     operator const char* () const;
00045 };
00046 
00047 bool applyColor(AcCmEntityColor const & color, bool open_segment = false);