WEB开发网
开发学院软件开发VC VC、OpenGL、ArcGIS Engine开发的二维三维结合的G... 阅读

VC、OpenGL、ArcGIS Engine开发的二维三维结合的GIS系统

 2009-01-16 19:39:17 来源:WEB开发网   
核心提示: 第一种本论文称之为COM方式,该方式加载的控件图标并不出现在工具箱中,VC、OpenGL、ArcGIS Engine开发的二维三维结合的GIS系统(4),首先右击对话框,选择“插入ActiveX控件”;然后选择“插入ActiveX控件”对话框

第一种本论文称之为COM方式,该方式加载的控件图标并不出现在工具箱中。首先右击对话框,选择“插入ActiveX控件”;然后选择“插入ActiveX控件”对话框中要加载的控件,如:ESRI MapControl,这样MapControl即出现在对话框中。

第二种本论文称之为C++方式,该方式加载的控件图标出现在工具箱中,并且向VC工程中添加该控件的VC源文件(*.cpp)和头文件(*.h)。首先,选择工程->增加到工程->Components and Controls菜单,打开“Components and Controls”对话框,选择Registered ActiveX Controls中要插入到工程的控件,如:ESRI MapControl,这样MapControl即出现在VC工具箱中,便可以像默认控件那样,在对话框中绘制MapControl。

3、定义ArcGIS Engine的类对象。ArcGIS Engine包含三种类[62]:抽象类(abstract class)、可实例化类(class)和组件类(cocalss)。抽象类不能用以创建新对象,但可以指定子类;可实例化类不能够直接创建新对象,因为它的构造函数是私有的,但可以通过其他类对象的属性或其他类的方法实例化;组件类指的是能够直接使用通过开发环境中的对象定义语法来创建对象的类,组件类可以直接被创建或者实例化。

VC中均采用智能指针来声明ArcGIS Engine接口,可以被实例化的类在VC中具有三种实例化方式:

第一种本论文称之为类标识方式。在类对象声明时,直接使用类唯一标识(CLSID)进行构造,如:IFieldsPtr pFlds(CLSID_Fields);

第二种本论文称之为ATL方式。在类对象声明时,使用CocreateInstance方法进行构造,如:CComPtr<IFields> pFlds;pFlds.CoCreateInstance(CLSID_Fields);

第三种本论文称之为COM方式。在类对象声明时,使用CreateInstance方法进行构造,如:IFeatureLayerPtr pFlds;HRESULT hr = pFlds.CreateInstance(CLSID_Fields)。

上一页  1 2 3 4 5 6 7 8 9  下一页

Tags:VC OpenGL ArcGIS

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接