摘要:在MFC中使用AE(AO)进行二次开发时,当目标机器上若没有安装AE的Runtime,程序会直接挂掉。对此,通过在CXXApp的InitInstance()的起始处增加环境的检测代码,来友好地提示用户安装AE的Runtime。代码如下: 1 BOOL CMap2DApp::InitInstance() 2 { 3 CoInitialize(NULL); 4 5 try 6 { 7 IAoInitializePtr ipAoInitialize(CLSID_AoInitialize); 8 if (ipAoInitialize==NULL...
阅读全文
摘要:目标:给定一个任意点串序列的多边形(可能出现自相交的情况),判断其形点的存放序列方向。注:输入的多边形点串的尾点与首点相同,即多存一个点,将首点存两遍。算法思想:(1)判断多边形形点个数,若少于4,则表明该点串无法构成多多边形。【return -2】(2)计算多边形外包围盒的宽度和高度,若其中一个为0,则表明该多边形退化成了一条线或一个点。【return -1】(3)计算多边形落在其外包围盒四条边上的顶点的索引号(left, bottom,right,up)(4)比较得到索引号中最小的索引值:hit = min{left, bottom,right,up}(5)判断从hit开始之后,(left
阅读全文
摘要:具体做法是:打开一个obj文件,查找含有“v x y z"的字串,然后对z的字串进行符号处理:若为"-",直接将该符号删除;不为"-"且z值不为0,则在z的字串前加上"-"。示例(原始文件box.obj)## object Box01#v -39.306316 -32.828358 -29.183971v -39.306316 33.259296 -29.183971v 39.726025 33.259296 -29.183971v 39.726025 -32.828358 -29.183971v -39.306316 -3
阅读全文
摘要:单件模式要保证的是:类只能实例化一个对象。为了保证这点,需要将类的构造函数和析构函数声明为私有类型!代码如下: 1 class single 2 { 3 private: 4 single():m_chs("Hello"){} 5 ~single(){} 6 7 public: 8 void printHello() 9 {10 printf("%s\n",m_chs);11 }12 13 public:14 static single* getInstance()15 {16 if (!m_instan...
阅读全文