arcgis开发常用源码.pdf
arcgis开发常用源码
arcgis开发常用源码
1.点上生成面的代码
if(m_pFeatureLayer.FeatureClass.ShapeType==esriGeometryType.esriGeometryPolygon)
{IPointCollectionm_pPointCollection=newPolygonClass();objectmissing=Type.Missing;
inticount=newFeature.XLIST.Count;if(icount3)return;for(inti=0;iicount;i++)
{IPointpoint=newPointClass();point.PutCoords(newFeature.XLIST,newFeature.YLIST);
m_pPointCollection.AddPoint(point,refmissing,refmissing);}IPolygonm_pPolygon=
m_pPointCollectionasIPolygon;if(m_pPolygon==null)
{System.Windows.Forms.MessageBox.Show(null);return;}else{ITopologicalOperator
pTopo=m_pPolygonasITopologicalOperator;if(pTopo!=null){pTopo.Simplify();}}
IWorkspaceEditm_pWorkspaceEdit=m_EngineEditor.EditWorkspaceasIWorkspaceEdit;
m_pWorkspaceEdit.StartEditOperation();IFeaturem_pFeature=
m_pFeatureLayer.FeatureClass.CreateFeature();m_pFeature.Shape=m_pPolygonas
IGeometry;m_pFeature.Store();m_pWorkspaceEdit.StopEditOperation();}
2.文件的打开保存另存的代码
usingSystem;
usingSystem.Windows.Forms;
usingESRI.ArcGIS.esriSystem;
usingESRI.ArcGIS.SystemUI;
usingESRI.ArcGIS.Carto;
namespaceSaveMapDocument
{
///summary
///SummarydescriptionforForm1.
////summary
publicclassSaveMapDocument:System.Windows.Forms.Form
{
publicSystem.Windows.Forms.TextBoxtxtMapDocument;
publicSystem.Windows.Forms.ButtoncmdOpen;
publicSystem.Windows.Forms.ButtoncmdSave;
publicSystem.Windows.Forms.ButtoncmdSaveAs;
privateSystem.Windows.Forms.OpenFileDialogopenFileDialog1;
privateSystem.Windows.Forms.SaveFileDialogsaveFileDialog1;
privateIMapDocumentm_MapDocument;
privateESRI.ArcGIS.Controls.AxToolbarControlaxToolbarControl1;
privateESRI.ArcGIS.Controls.AxPageLayoutControlaxPageLayoutControl1;
privateESRI.ArcGIS.Controls.AxLicenseControlaxLicenseControl1;
privateESRI.ArcGIS.Controls.AxTOCControlaxTOCControl1;
///summary
///Requireddesignervariable.
////summary
privateSys