扫二维码与项目经理沟通
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流
八成是license没有初始化……
创新互联建站专注于网站建设|企业网站维护|优化|托管以及网络推广,积累了大量的网站设计与制作经验,为许多企业提供了网站定制设计服务,案例作品覆盖广告设计等行业。能根据企业所处的行业与销售的产品,结合品牌形象的塑造,量身开发品质网站。
关于AE开发的学习,个人认为:
蒋波涛的《ArcObject开发基础与技巧》是入门的好教程;
《Exploring ArcObjects》是官方推荐的教程,全面,详细;
ESRI的论坛是好的交流与学习的地方;
AE自带的开发帮助和例子就是最好的学习工具;
另外,网路上好多牛人总结的资料也是不错的学习资料;
开发学习重在实践,加油吧!
不用找源码,安装一个VS.net 2005或2008,安装ArcGIS Enigne 9.2 Develope Kit for .NET 或9.3,直接在VS的IDE里面配置这些功能就行了,里面的SQL查询、距离测量、缓冲区分析那是要自己开发,不过简单,你必须学AO。建议你不要找什么源码,动手摸索了,这样对你才有好处。如果是为了完成任务的那种心态,对自己以后就业不好。
测距就用AO的INewLineFeedback画线判断一个IPolyline的长度
缓冲就用AO的ITopologicalOperator 接口的Buffer方法来做。
地图坐标显示功能比较简单,给MapControl加一个onmousemove事件,移动时获得地图的坐标mapx,mapy,显示在状态条中。
SQL查询就用IQueryFilter根据你输入的SQL进行查询,查询后,通过IFeatureCursor接口访问这些IFeature,通过IFeature的get_value方法获得每个IFeature的属性值。
编辑工具就只用配置Editor工具按钮放到你的toolbarcontrol中
以上都是在ArcGIS Engine里面实现的方法。自己动手弄吧,多实践,对你有帮助。
安装ArcGIS10.0后,请安装开发环境(如Visual Studio),如果已经有开发环境,跳过这一步直接安装ArcGIS SDK及AE并授权,即可在开发环境中使用COM组件来做二次开发。
ArcGIS Map、Server、Catalog、Scene、Globe都是基于ArcGIS Object开发出来的产品;ArcGIS Engine也是基于ArcGIS Object的类库封装起来的一个开发产品,用来自定义开发C/S端应用GIS。
或刨净并从田间清除,施用优质
“安装MAPGIS67 的SDK 后,在VB 的“工程”的“引用”中看不到需要添加的MAPGIS组件,网上有的说是系统中毒了,于是乎重装了一次系统,但是还是没有发现相应组件。浏览安装文件,强制添加,还是无果。因为装的破解狗.怀疑是软件和破解狗的问题,然后跑到老师那拿了个正版的软件和USB 狗.这回倒是看见组件了,但是新的问题来了,组件不能加载.换了台机子,虽然能加载,但是下一步的editview.ocx 不能加载,我几度接近崩溃。最后还是求助网络,有位网友提供了一种方法,试了一下,竞然成功了.万分感谢!
具体的方法为:关闭数据执行保护,卸载MaPGIS 及SDK,然后重启,重新安装MAPGIS67的SDK。”
荣耀属于:
按照这个方法,卸载掉mapgis软件,重新来过
你好 ,试下下面代码,希望对你有用
//这是直接根据路径名称加载
private voidmenuAddShp_Click(object sender, EventArgs e)
{
IWorkspaceFactory pWorkspaceFactory = new ShapefileWorkspaceFactory();
IWorkspace pWorkspace = pWorkspaceFactory.OpenFromFile(@"D:\GIS-Data",0);
IFeatureWorkspace pFeatureWorkspace =pWorkspace as IFeatureWorkspace;
IFeatureClass pFC =pFeatureWorkspace.OpenFeatureClass("continent.shp");
IFeatureLayer pFLayer = new FeatureLayerClass();
pFLayer.FeatureClass = pFC;
pFLayer.Name = pFC.AliasName;
ILayerpLayer = pFLayer as ILayer;
IMappMap = axMapControl1.Map;
pMap.AddLayer(pLayer);
axMapControl1.ActiveView.Refresh();
}
//这段是利用对话框添加
从工具箱往窗体上添加一个OpenFileDialog控件。
private voidmenuAddShp_Click(object sender, EventArgs e)
{
IWorkspaceFactorypWorkspaceFactory = new ShapefileWorkspaceFactory();
openFileDialog1.Filter = "shapefile文件(*.shp)|*.shp";
openFileDialog1.InitialDirectory = @"D:\GIS-Data";
openFileDialog1.Multiselect = false;
DialogResultpDialogResult = openFileDialog1.ShowDialog();
if(pDialogResult != DialogResult.OK)
return;
stringpPath = openFileDialog1.FileName;
stringpFolder = Path.GetDirectoryName(pPath);
stringpFileName = Path.GetFileName(pPath);
IWorkspacepWorkspace = pWorkspaceFactory.OpenFromFile(pFolder,0);
IFeatureWorkspacepFeatureWorkspace = pWorkspace as IFeatureWorkspace;
IFeatureClasspFC = pFeatureWorkspace.OpenFeatureClass(pFileName);
IFeatureLayerpFLayer = new FeatureLayerClass();
pFLayer.FeatureClass = pFC;
pFLayer.Name = pFC.AliasName;
ILayerpLayer = pFLayer as ILayer;
IMap pMap =axMapControl1.Map;
pMap.AddLayer(pLayer);
axMapControl1.ActiveView.Refresh();
}
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流