Exemplo n.º 1
0
        public ISelectionSet Select(IQueryFilter filter)
        {
            filter.SubFields = this.IDFieldName;

            filter.AddField("FDB_OID");
            filter.AddField("FDB_SHAPE");
            IFeatureCursor cursor = (IFeatureCursor)_fdb.Query(this, filter);
            IFeature       feat;

            SpatialIndexedIDSelectionSet selSet = new SpatialIndexedIDSelectionSet(this.Envelope);

            while ((feat = cursor.NextFeature) != null)
            {
                int nid = 0;
                foreach (FieldValue fv in feat.Fields)
                {
                    //if (fv.Name == "FDB_NID")
                    //{
                    //    nid = (int)fv.Value;
                    //    break;
                    //}
                }
                selSet.AddID(feat.OID, feat.Shape);
            }
            cursor.Dispose();
            return(selSet);
        }
Exemplo n.º 2
0
        async public Task <ISelectionSet> Select(IQueryFilter filter)
        {
            filter.SubFields = this.IDFieldName;

            filter.AddField("FDB_SHAPE");
            filter.AddField("FDB_OID");
            IFeatureCursor cursor = await _fdb.Query(this, filter);

            IFeature feat;

            SpatialIndexedIDSelectionSet selSet = new SpatialIndexedIDSelectionSet(this.Envelope);

            while ((feat = await cursor.NextFeature()) != null)
            {
                //long nid = 0;
                foreach (FieldValue fv in feat.Fields)
                {
                    //if (fv.Name == "FDB_NID")
                    //{
                    //    nid = Convert.ToInt64(fv.Value);
                    //    break;
                    //}
                }
                selSet.AddID(feat.OID, feat.Shape);
            }
            cursor.Dispose();
            return(selSet);
        }
Exemplo n.º 3
0
        public ISelectionSet Select(IQueryFilter filter)
        {
            filter.SubFields = this.IDFieldName;

            filter.AddField("FDB_SHAPE");
            filter.AddField("FDB_OID");
            using (IFeatureCursor cursor = (IFeatureCursor)_fdb.Query(this, filter))
            {
                IFeature feat;

                SpatialIndexedIDSelectionSet selSet = new SpatialIndexedIDSelectionSet(this.Envelope);
                while ((feat = cursor.NextFeature) != null)
                {
                    selSet.AddID(feat.OID, feat.Shape);
                }
                return(selSet);
            }
        }
Exemplo n.º 4
0
        async public Task <ISelectionSet> Select(IQueryFilter filter)
        {
            filter.SubFields = this.IDFieldName;
            if (filter is ISpatialFilter)
            {
                filter.AddField(this.ShapeFieldName);
            }

            using (IFeatureCursor cursor = await OgcSpatialFeatureCursor.Create(this, filter))
            {
                IFeature feat;

                SpatialIndexedIDSelectionSet selSet = new SpatialIndexedIDSelectionSet(this.Envelope);
                while ((feat = await cursor.NextFeature()) != null)
                {
                    selSet.AddID(feat.OID, feat.Shape);
                }
                return(selSet);
            }
        }
Exemplo n.º 5
0
        public ISelectionSet Select(IQueryFilter filter)
        {
            if (String.IsNullOrEmpty(this.IDFieldName) || filter == null)
            {
                return(null);
            }

            filter.SubFields = this.IDFieldName;

            using (IFeatureCursor cursor = this.GetFeatures(filter))
            {
                IFeature feat;

                SpatialIndexedIDSelectionSet selSet = new SpatialIndexedIDSelectionSet(this.Envelope);
                while ((feat = cursor.NextFeature) != null)
                {
                    selSet.AddID(feat.OID, feat.Shape);
                }

                return(selSet);
            }
        }