在点图层加入点时,将已有坐标的点赋给要素的shape 报错No support for this geometry type.

#region 加入点
        private void AddPointByStore(IFeatureLayer pFeatureLayer, IPoint pt)
        {
            if (pFeatureLayer != null)
            {
                //定义一个地物类, 把要编辑的图层转化为定义的地物类
                IFeatureClass pFeatureClass = pFeatureLayer.FeatureClass;
                //先定义一个编辑的工作空间, 然后将其转化为数据集, 最后转化为编辑工作空间
                IWorkspaceEdit w = (pFeatureClass as IDataset).Workspace as IWorkspaceEdit;
                IFeature pFeature;
                //开始事务操作
                w.StartEditing(false);
                //开始编辑
                w.StartEditOperation();
                //创建一个(点)要素
                pFeature = pFeatureClass.CreateFeature();
                //赋值该要素的Shape属性
                IGeometry ptGeo = pt;
                pFeature.Shape = ptGeo;//  报错!!
                //保存要素, 完成点要素生成
                //此时生成的点要素只要集合特征(shape/Geometry), 无普通属性
                pFeature.Store();
                //结束编辑
                w.StopEditOperation();
                //结束事务操作
                w.StopEditing(true);
            }
            //屏幕刷新this.axMapControl1.ActiveView.PartialRefresh(esriViewDrawPhase.esriViewGeography, pFeatureLayer, null);
        }
        #endregion
问题.png
已邀请:

宽恕 - 95后测绘仔

赞同来自:

你的要素会不会是multipoint类型

要回复问题请先登录注册