示例#1
0
        public void CanUseExteriorRingCountAlias()
        {
            IFeatureClass featureClass = CreateFeatureClass(
                "CanUseExteriorRingCountAlias",
                esriGeometryType.esriGeometryPolygon);

            IFeature f1 = featureClass.CreateFeature();

            IGeometry polygon = GeometryUtils.Union(
                GeometryFactory.CreatePolygon(0, 0, 10, 10),
                GeometryFactory.CreatePolygon(20, 20, 30, 30));

            f1.Shape = polygon;
            f1.Store();

            IFeature f2 = featureClass.CreateFeature();

            f2.Shape = GeometryFactory.CreatePolygon(0, 0, 100, 100);
            GeometryUtils.Simplify(f2.Shape);
            f2.Store();

            IFeature f3 = featureClass.CreateFeature();

            f3.Shape = GeometryFactory.CreatePolygonWithHole(
                GeometryFactory.CreatePolygon(0, 0, 10, 10), 1, -1);
            // NOTE: result is non-simple
            f3.Store();

            AssertFilteredRowCount(1, "$ShapeExteriorRingCount = 2", f1, f2, f3);
            AssertFilteredRowCount(1, "$ShapeExteriorRingCount = 1", f1, f2, f3);
            AssertFilteredRowCount(1, "$ShapeExteriorRingCount IS NULL", f1, f2, f3);
        }
示例#2
0
        public void CanUsePartCountAlias()
        {
            IFeatureClass featureClass = CreateFeatureClass(
                "CanUsePartCountAlias",
                esriGeometryType.esriGeometryPolygon);

            IFeature  f1      = featureClass.CreateFeature();
            IGeometry polygon = GeometryFactory.CreatePolygonWithHole(
                GeometryFactory.CreatePolygon(0, 0, 10, 10), 1, -1);

            GeometryUtils.Simplify(polygon);
            f1.Shape = polygon;
            f1.Store();

            IFeature f2 = featureClass.CreateFeature();

            f2.Shape = GeometryFactory.CreatePolygon(0, 0, 100, 100);
            GeometryUtils.Simplify(f2.Shape);
            f2.Store();

            AssertFilteredRowCount(1, "$ShapePartCount = 2", f1, f2);
            AssertFilteredRowCount(1, "$ShapePartCount = 1", f1, f2);
        }