public IMapRequest Up(int steps = 1) { var mapRequest = (GeneralMapRequest)MemberwiseClone(); mapRequest.BBOX = BBOX.GetBoxOver(steps); return(mapRequest); }
public void SetParameter(string msg) { try { string[] paras = msg.Split("= ".ToArray(), StringSplitOptions.RemoveEmptyEntries); if (string.Equals(paras[0], "version", StringComparison.OrdinalIgnoreCase)) { version = paras[1]; } else if (string.Equals(paras[0], "layers", StringComparison.OrdinalIgnoreCase)) { layers = paras[1].Split(','); //只能用逗号(“,”)作为列表中各个项之间的分隔符 } else if (string.Equals(paras[0], "styles", StringComparison.OrdinalIgnoreCase)) { if (paras.Length == 2) { styles = paras[1].Split(','); //只能用逗号(“,”)作为列表中各个项之间的分隔符 } else { styles = new string[1]; styles[0] = ""; } } else if (string.Equals(paras[0], "format", StringComparison.OrdinalIgnoreCase)) { format = paras[1].Split('/')[1]; } else if (string.Equals(paras[0], "BBOX", StringComparison.OrdinalIgnoreCase)) { string[] datas = paras[1].Split(','); //只能用逗号(“,”)作为列表中各个项之间的分隔符 bbox = new BBOX(Double.Parse(datas[0]), Double.Parse(datas[1]), Double.Parse(datas[2]), Double.Parse(datas[3])); } else if (string.Equals(paras[0], "CRS", StringComparison.OrdinalIgnoreCase)) { CRS = paras[1]; } else if (string.Equals(paras[0], "Width", StringComparison.OrdinalIgnoreCase)) { width = paras[1]; } else if (string.Equals(paras[0], "Height", StringComparison.OrdinalIgnoreCase)) { height = paras[1]; } } catch (Exception) { throw new WMSExpection("操作请求包含无效参数值"); } return; }