zl程序教程

您现在的位置是:首页 >  其它

当前栏目

报错"the geometry has no Z values"处理

处理 报错 The No quot has VALUES geometry
2023-09-11 14:15:05 时间

    from:http://blog.sina.com.cn/s/blog_6faf711d010138vq.html     
         
        
 
          

// <summary>/// 设置Z值和M值,解决The Geometry has no Z values错误
        
///</summary>///<param name="pF">要素</param>///<param name="pGeo">几何</param>publicstaticvoid SetZValue(IFeature pF, IGeometry pGeo)
        {
            int index;

            index = pF.Fields.FindField("Shape");

            IGeometryDef pGeometryDef;

            pGeometryDef = pF.Fields.get_Field(index).GeometryDef as IGeometryDef;

            if (pGeometryDef.HasZ)
            {

                IZAware pZAware = (IZAware)pGeo;

                pZAware.ZAware = true;

                IZ iz1 = (IZ)pGeo;

                iz1.SetConstantZ(0);  //将Z值设置为0

                
//IPoint point = (IPoint)pGeo;

                
//point.Z = 0;

            }

            else
            {
                IZAware pZAware = (IZAware)pGeo;
                pZAware.ZAware = false;
            }

            //M值
            if (pGeometryDef.HasM)
            {
                IMAware pMAware = (IMAware)pGeo;
                pMAware.MAware = true;
            }
            else
            {
                IMAware pMAware = (IMAware)pGeo;
                pMAware.MAware = false;

            }
        }//function