public static qGis_ReferenceObject[] GetReferenceObjects(int rule_id, qGis_Rectangle boundary) { string boundary_as_text = boundary.ToString(); qGis_ClientGeography [] geo_objects = qGis_ClientGeography.GetObjects(rule_id); List <qGis_ReferenceObject> reference_objects_list = new List <qGis_ReferenceObject>(); if (geo_objects != null) { foreach (var geo_object in geo_objects) { string sql = string.Format("SELECT {0} FROM qGis_ReferenceObjects WHERE geom.Filter ({1}) = 1 {2}", string.IsNullOrEmpty(geo_object.ReferenceColumns) ? "*" : geo_object.ReferenceColumns, boundary_as_text, string.IsNullOrEmpty(geo_object.ReferenceFilter) ? string.Empty : string.Format("AND {0}", geo_object.ReferenceFilter)); DbRow[] objects = DbRow.Select(qGis_ReferenceObject.schema, sql, null); qGis_ReferenceObject[] reference_objects = DbRow.CreateArray <qGis_ReferenceObject>(objects, c => new qGis_ReferenceObject(c)); if (reference_objects != null) { foreach (qGis_ReferenceObject reference_object in reference_objects) { reference_object.LoadPointsFromGeographyObject(); reference_objects_list.Add(reference_object); } } } } return(reference_objects_list.ToArray()); }
public static qGis_Object[] GetObjects(qGis_Rectangle boundary) { SqlQueryParameter sql_left = new SqlQueryParameter("@Left", boundary.NorthWest.Longitude); SqlQueryParameter sql_right = new SqlQueryParameter("@Right", boundary.NorthEast.Longitude); SqlQueryParameter sql_top = new SqlQueryParameter("@Top", boundary.NorthEast.Latitude); SqlQueryParameter sql_bottom = new SqlQueryParameter("@Bottom", boundary.SouthWest.Latitude); DbRow[] objects = DbRow.Select(schema2, "SELECT * FROM qGIS_Objects WHERE (Longitude BETWEEN @Left AND @Right) AND (Latitude BETWEEN @Bottom AND @Top)", new SqlQueryParameter [] { sql_left, sql_right, sql_top, sql_bottom }); return(DbRow.CreateArray <qGis_Object>(objects, c => new qGis_Object(c))); }
public static qGis_Object[] GetObjects(qGis_Rectangle boundary, int search_id) { SqlQueryParameter sql_left = new SqlQueryParameter("@Left", boundary.NorthWest.Longitude); SqlQueryParameter sql_right = new SqlQueryParameter("@Right", boundary.NorthEast.Longitude); SqlQueryParameter sql_top = new SqlQueryParameter("@Top", boundary.NorthEast.Latitude); SqlQueryParameter sql_bottom = new SqlQueryParameter("@Bottom", boundary.SouthWest.Latitude); qDbs_Search search = new qDbs_Search(search_id); qDbs_DataGroupConfig data_group_config = new qDbs_DataGroupConfig(search.DataGroupID); DbRow[] results = search.GetResults(schema2, string.Format("INNER JOIN qGIS_Objects ON qGIS_Objects.ReferenceID = {0}", data_group_config.KeyColumn), string.Format("qGIS_Objects.DataGroupID = {0} AND (Longitude BETWEEN @Left AND @Right) AND (Latitude BETWEEN @Bottom AND @Top)", search.DataGroupID), sql_left, sql_right, sql_top, sql_bottom); return(DbRow.CreateArray <qGis_Object>(results, c => new qGis_Object(c))); }
public qGis_ClusterGrid(qGis_Rectangle boundary, int rule_id, int search_id) : this(boundary, rule_id) { SearchID = search_id; }
public qGis_ClusterGrid(qGis_Rectangle boundary, int rule_id) : this() { Boundary = boundary; RuleID = rule_id; }
public static qGis_ReferenceObject[] GetReferenceObjects(int rule_id, qGis_Rectangle boundary) { string boundary_as_text = boundary.ToString (); qGis_ClientGeography [] geo_objects = qGis_ClientGeography.GetObjects(rule_id); List<qGis_ReferenceObject> reference_objects_list = new List<qGis_ReferenceObject>(); if (geo_objects != null) { foreach (var geo_object in geo_objects) { string sql = string.Format("SELECT {0} FROM qGis_ReferenceObjects WHERE geom.Filter ({1}) = 1 {2}", string.IsNullOrEmpty(geo_object.ReferenceColumns) ? "*" : geo_object.ReferenceColumns, boundary_as_text, string.IsNullOrEmpty(geo_object.ReferenceFilter) ? string.Empty : string.Format("AND {0}", geo_object.ReferenceFilter)); DbRow[] objects = DbRow.Select(qGis_ReferenceObject.schema, sql, null); qGis_ReferenceObject[] reference_objects = DbRow.CreateArray<qGis_ReferenceObject>(objects, c => new qGis_ReferenceObject(c)); if (reference_objects != null) { foreach (qGis_ReferenceObject reference_object in reference_objects) { reference_object.LoadPointsFromGeographyObject(); reference_objects_list.Add(reference_object); } } } } return reference_objects_list.ToArray (); }
public static qGis_Object[] GetObjects(qGis_Rectangle boundary, int search_id) { SqlQueryParameter sql_left = new SqlQueryParameter("@Left", boundary.NorthWest.Longitude); SqlQueryParameter sql_right = new SqlQueryParameter("@Right", boundary.NorthEast.Longitude); SqlQueryParameter sql_top = new SqlQueryParameter("@Top", boundary.NorthEast.Latitude); SqlQueryParameter sql_bottom = new SqlQueryParameter("@Bottom", boundary.SouthWest.Latitude); qDbs_Search search = new qDbs_Search(search_id); qDbs_DataGroupConfig data_group_config = new qDbs_DataGroupConfig(search.DataGroupID); DbRow[] results = search.GetResults(schema2, string.Format("INNER JOIN qGIS_Objects ON qGIS_Objects.ReferenceID = {0}", data_group_config.KeyColumn), string.Format("qGIS_Objects.DataGroupID = {0} AND (Longitude BETWEEN @Left AND @Right) AND (Latitude BETWEEN @Bottom AND @Top)", search.DataGroupID), sql_left, sql_right, sql_top, sql_bottom); return DbRow.CreateArray<qGis_Object>(results, c => new qGis_Object(c)); }
public static qGis_Object[] GetObjects(qGis_Rectangle boundary) { SqlQueryParameter sql_left = new SqlQueryParameter("@Left", boundary.NorthWest.Longitude); SqlQueryParameter sql_right = new SqlQueryParameter("@Right", boundary.NorthEast.Longitude); SqlQueryParameter sql_top = new SqlQueryParameter("@Top", boundary.NorthEast.Latitude); SqlQueryParameter sql_bottom = new SqlQueryParameter("@Bottom", boundary.SouthWest.Latitude); DbRow[] objects = DbRow.Select(schema2, "SELECT * FROM qGIS_Objects WHERE (Longitude BETWEEN @Left AND @Right) AND (Latitude BETWEEN @Bottom AND @Top)", new SqlQueryParameter [] { sql_left, sql_right, sql_top, sql_bottom }); return DbRow.CreateArray<qGis_Object>(objects, c => new qGis_Object(c)); }
public qGis_ClusterGrid(qGis_Rectangle boundary, int rule_id, int search_id) : this(boundary, rule_id) { SearchID = search_id; }
public qGis_ClusterGrid(qGis_Rectangle boundary, int rule_id) : this() { Boundary = boundary; RuleID = rule_id; }