可可西

2011年5月17日 #

红黑树简介

摘要: 红黑树(Red-black tree)是一棵二叉查找树,红黑树“近似平衡”,并不追求“完全平衡”——它只要求部分地达到平衡要求,降低了对旋转的要求,从而提高了性能。 谈到红黑树的用途,最广为人知的应该就是红黑树在C++ STL的set, multiset, map, multimap等关联式容器中。 阅读全文

posted @ 2011-05-17 13:04 可可西 阅读(681) 评论(0) 推荐(0) 编辑

2011年5月16日 #

GDAL读写shp文件

摘要: #include "gdal_include/gdal.h"#include "gdal_include/ogr_api.h"#include "gdal_include/ogrsf_frmts.h"#pragma comment(lib, "lib/gdal_i.lib")-----------------------------------------GDAL读shp文件(1)注册所有的文件格式驱动1 GDALAllRegister();2 OGRRegisterAll();(2)得到shp文件的处理器1 OG 阅读全文

posted @ 2011-05-16 14:11 可可西 阅读(12638) 评论(0) 推荐(2) 编辑

2011年5月3日 #

dem彩色晕渲

摘要: 根据不同的高程对dem使用不同颜色进行晕渲,再加上光照,让地形看起来更有艺术感,如下图所示: 阅读全文

posted @ 2011-05-03 22:22 可可西 阅读(1831) 评论(0) 推荐(0) 编辑

2011年4月25日 #

dxf格式8位色索引转24位色

摘要: 现在的颜色基本上都是24位色,由RGB三个分量组成,每一个分量占8个bit,通过RGB混合得到最终的颜色。所谓32位色是在RGB的基础上,引进了一个Alpha通道,用于描述颜色的透明。Alpha值越小,透明度越高。8位色即256色,共可以表示256种颜色。目前存在两种定义。详见:http://en.wikipedia.org/wiki/8_bit_color一种是直接定义出256种颜色,通过索引访问这256种颜色;另一种是同RGB分量来进行的,格式为:R R R G G G B B。windows是使用了第一种方案来描述8位色的,我们可以使用下列数组来实现windows上的dxf格式从8位色到 阅读全文

posted @ 2011-04-25 13:41 可可西 阅读(1843) 评论(0) 推荐(0) 编辑

2011年3月30日 #

.net语言中使用MapWinGIS.ocx

摘要: 以下以VS2008开发环境为例:----------------------------------------------------------------------step 1: 将com接口转成.net接口在.net语言中使用MapWinGIS.ocx之前,需要将com接口转换成.net接口,程序通过.net接口去访问com中具体的实现函数。方法(1)在.net工程中添加MapWinGIS.ocx时,会自动产生一个名为:Interop.MapWinGIS.dll(或Interop.MapWinGIS.4.7.dll)的文件。这个dll是vs2008为添加的ocx生成的.net接口组件 阅读全文

posted @ 2011-03-30 12:53 可可西 阅读(2139) 评论(0) 推荐(0) 编辑

2011年3月25日 #

c++(/clr)非托管类型和托管类型互转

摘要: 以下代码必须有“Common Language Runtime Support(/clr)” 和“MFC”支持1. 字符窜之间的转换 1 // 托管类型到非托管类型 2 inline CString ManageToUnManageStr(System::String^ cmStr) 3 { 4 using namespace System::Runtime::InteropServices; 5 CString cStr = (char*)(Marshal::StringToHGlobalAnsi(cmStr)).ToPointer(); 6 return cStr; 7 } 8 9 // 阅读全文

posted @ 2011-03-25 17:33 可可西 阅读(3989) 评论(0) 推荐(0) 编辑

2011年3月24日 #

winXP系统通过蓝牙在笔记本和手机之间传递数据

摘要: 软硬件环境:笔记本 - ThinkPad R61 7755-BH1手机 -LG-T310操作系统 -windows xp sp2(通过360打补丁到今天)由于没有买LG-T310的数据线,而且其驱动程序也难以在网上找到,只能通过蓝牙将手机上前几天拍的一些照片传到笔记本上来。(1)首先要保证笔记本已正确装上蓝牙驱动程序。(2)开启笔记本无线设备开关(在笔记本正面的左下角区域,一个开关,向右扒就可以打开了)(3)保证windows中蓝牙相关的服务开启(有两个服务)(4)开启手机蓝牙服务(5)进行蓝牙连接--进行配对这样就可以在电脑上访问手机中的文件了。(在操作手机上的文件时,可能需要手机进行连接请 阅读全文

posted @ 2011-03-24 18:36 可可西 阅读(673) 评论(0) 推荐(0) 编辑

2011年3月10日 #

判断一个浮点数是否为NAN(INF)

摘要: NAN(wiki en 中文)是指not a number。 INF(wiki en 中文)Infinity(无穷)。 浮点数变成NAN: ① 有一个及以上参数为NaN时 如:1.0f/NaN、1.0f*NaN、NaN+1.0f、NaN-1.0f、Nan^1.0f等 ② 下列运算的情况 除法:0/0 阅读全文

posted @ 2011-03-10 14:52 可可西 阅读(8643) 评论(0) 推荐(0) 编辑

使用fscanf读取文本文件

摘要: fscanf为读取文本文件的一个c API,其特点是可格式化读取文件内容。1 FILE* pf = fopen("c:\\hello.txt", "r");2 if (NULL==pf)3 return;4 5 char cstr[256];6 fscanf(pf, "%s", cstr);7 fclose(pf);fscanf使用空格,Tab,回车来分割不同单词,使用起来比较方便。下面对fscanf进行了简单的封装,使其能搜索目标字符,读取字符串,整型和双精度浮点数。 1 #pragma once 2 #pragma warning 阅读全文

posted @ 2011-03-10 11:43 可可西 阅读(8066) 评论(0) 推荐(0) 编辑

单文档中只是想得到当前View类的指针

摘要: 对于MFC的单文档应用程序,在其他的类中我们经常要获取View类的指针,以此来访问View下的public成员。一般的方法:1 CMainFrame* pMainFrm = (CMainFrame*)AfxGetMainWnd();2 CMapGISView* pMapView = (CMapGISView*)pMainFrm->GetActiveView();有时用这种方法会存在问题,程序会断言失败。我们来看看GetActiveView()的实现代码:1 CView* CFrameWnd::GetActiveView() const2 {3 ASSERT(m_pViewActive = 阅读全文

posted @ 2011-03-10 11:26 可可西 阅读(1191) 评论(0) 推荐(0) 编辑

导航