Ejemplo n.º 1
0
 private void InitClass()
 {
     _FeatureTables     = new FeatureTableCollection();
     Prefix             = "";
     Namespace          = "http://tempuri.org/FeatureDataSet.xsd";
     Locale             = new CultureInfo("en-US");
     CaseSensitive      = false;
     EnforceConstraints = true;
 }
Ejemplo n.º 2
0
 private void InitClass()
 {
     _FeatureTables = new FeatureTableCollection();
     //this.DataSetName = "FeatureDataSet";
     this.Prefix             = "";
     this.Namespace          = "http://tempuri.org/FeatureDataSet.xsd";
     this.Locale             = new System.Globalization.CultureInfo("en-US");
     this.CaseSensitive      = false;
     this.EnforceConstraints = true;
 }
Ejemplo n.º 3
0
        /// <summary>
        /// Check if the layer can be queried and retrieve data, if there is any.
        /// </summary>
        protected bool TryGetData(Map map,
            float x, float y,
            int pixelSensitivity,
            WmsServer.InterSectDelegate intersectDelegate,
            ICanQueryLayer queryLayer,
            string cqlFilter,
            out FeatureDataSet fds)
        {
            if (!queryLayer.IsQueryEnabled)
            {
                fds = null;
                return false;
            }

            float queryBoxMinX = x - pixelSensitivity;
            float queryBoxMinY = y - pixelSensitivity;
            float queryBoxMaxX = x + pixelSensitivity;
            float queryBoxMaxY = y + pixelSensitivity;

            Coordinate minXY = map.ImageToWorld(new PointF(queryBoxMinX, queryBoxMinY));
            Coordinate maxXY = map.ImageToWorld(new PointF(queryBoxMaxX, queryBoxMaxY));
            Envelope queryBox = new Envelope(minXY, maxXY);

            fds = new FeatureDataSet();
            queryLayer.ExecuteIntersectionQuery(queryBox, fds);

            FeatureTableCollection tables = fds.Tables;
            FeatureDataTable table = tables[0];
            if (intersectDelegate != null)
                tables[0] = intersectDelegate(table, queryBox);

            // filter the rows with the CQLFilter if one is provided
            if (cqlFilter != null)
            {
                DataRowCollection rows = table.Rows;
                for (int i = rows.Count - 1; i >= 0; i--)
                {
                    FeatureDataRow row = (FeatureDataRow)rows[i];
                    bool b = CqlFilter(row, cqlFilter);
                    if (!b)
                        rows.RemoveAt(i);
                }
            }

            bool res = tables.Count > 0 && table.Rows.Count > 0;
            return res;
        }
Ejemplo n.º 4
0
 private void initClass(string name)
 {
     DataSetName = name;
     _featureTables = new FeatureTableCollection(base.Tables);
     Prefix = "";
     Namespace = "http://www.codeplex.com/SharpMap/Wiki/View.aspx?title=FeatureDataSet";
     Locale = new CultureInfo("en-US");
     CaseSensitive = false;
     EnforceConstraints = true;
 }