Пример #1
0
        public PersistObject ToPersistObject()
        {
            PersistObject obj        = new PersistObject("Map");
            PersistObject authorObj  = (_author as IPersistable).ToPersistObject();
            PersistObject versionObj = (_version as IPersistable).ToPersistObject();
            PersistObject argObj     = (_arguments as IPersistable).ToPersistObject();

            obj.AddSubNode(argObj);
            //
            PersistObject cobjs = new PersistObject("ConflictDefinitionSymbol");

            obj.AddSubNode(cobjs);
            cobjs.AddSubNode((_conflictDefForSymbol).ToPersistObject());
            //
            cobjs = new PersistObject("ConflictDefinitionLabel");
            obj.AddSubNode(cobjs);
            cobjs.AddSubNode((_conflictDefForLabel).ToPersistObject());
            //
            obj.AddSubNode(authorObj);
            obj.AddSubNode(versionObj);
            obj.AddAttribute("name", _name);
            //layers
            PersistObject lyrObj = new PersistObject("Layers");

            obj.AddSubNode(lyrObj);
            if (_layerContainer != null && _layerContainer.Layers != null)
            {
                foreach (ILayer lyr in _layerContainer.Layers)
                {
                    lyrObj.AddSubNode((lyr as IPersistable).ToPersistObject());
                }
            }
            return(obj);
        }
Пример #2
0
        public static object GetObject(string url, bool useZip)
        {
            Uri            uri = new Uri(url);
            HttpWebRequest req = HttpWebRequest.CreateDefault(uri) as HttpWebRequest;

            using (HttpWebResponse resp = req.GetResponse() as HttpWebResponse)
            {
                bool isError = resp.StatusDescription != null && resp.StatusDescription == "ERROR";
                using (BinaryReader stReader = new BinaryReader(resp.GetResponseStream()))
                {
                    using (MemoryStream mstream = new MemoryStream())
                    {
                        {
                            byte[] buffer = new byte[256];
                            int    count  = stReader.Read(buffer, 0, 256);
                            while (count > 0)
                            {
                                mstream.Write(buffer, 0, count);
                                count = stReader.Read(buffer, 0, 256);
                            }
                        }
                        mstream.Position = 0;
                        if (useZip && !isError)
                        {
                            return(PersistObject.StreamToObjectWithZIP(mstream));
                        }
                        else
                        {
                            return(PersistObject.StreamToObject(mstream));
                        }
                    }
                }
            }
        }
Пример #3
0
        public static IContainerSymbol FromXElement(XElement ele)
        {
            if (ele == null)
            {
                return(null);
            }
            string[]    sizeString = ele.Attribute("size").Value.Split(',');
            SizeF       size       = new SizeF(float.Parse(sizeString[0]), float.Parse(sizeString[1]));
            bool        isFixed    = bool.Parse(ele.Attribute("fixedsize").Value);
            ILineSymbol symline    = null;
            IFillSymbol symfill    = null;

            if (ele.Element("OutlineSymbol") != null)
            {
                symline = PersistObject.ReflectObjFromXElement(ele.Element("OutlineSymbol").Element("Symbol")) as ILineSymbol;
            }
            if (ele.Element("FillSymbol") != null)
            {
                symfill = PersistObject.ReflectObjFromXElement(ele.Element("FillSymbol").Element("Symbol")) as IFillSymbol;
            }
            RoundRectContainerSym sym = new RoundRectContainerSym(size, symline, symfill);

            sym.IsFixedSize = isFixed;
            return(sym);
        }
Пример #4
0
        public PersistObject ToPersistObject()
        {
            PersistObject obj = new PersistObject("LabelDef");

            obj.AddAttribute("source", _labelSource.ToString());
            obj.AddAttribute("enabled", _enableLabeling.ToString());
            obj.AddAttribute("field", _fieldname != null ? _fieldname : string.Empty);
            obj.AddAttribute("fields", _fields != null ? string.Join(",", _fields) : string.Empty);
            obj.AddAttribute("ruler", _masLabelRuler.ToString());
            obj.AddAttribute("invalidvalue", _invalidValue != null ? _invalidValue.ToString() : string.Empty);
            obj.AddAttribute("autotonewline", _autoToNewline.ToString());
            obj.AddAttribute("charcountperline", _charcountPerLine.ToString());
            //Font
            PersistObject fontObj = new PersistObject("Font");

            fontObj.AddAttribute("font", FontHelper.FontToString(_labelFont));
            fontObj.AddAttribute("color", ColorHelper.ColorToString(_foreColor));
            fontObj.AddAttribute("maskcolor", ColorHelper.ColorToString(_maskColor));
            obj.AddSubNode(fontObj);
            //_scaleRange
            if (_displayScaleRange == null)
            {
                _displayScaleRange = new ScaleRange(-1, 1);
            }
            PersistObject rangeObj = (_displayScaleRange as IPersistable).ToPersistObject();

            obj.AddSubNode(rangeObj);
            //_containerSymbol
            if (_containerSymbol != null)
            {
                PersistObject csymobj = _containerSymbol.ToPersistObject();
                obj.AddSubNode(csymobj);
            }
            return(obj);
        }
Пример #5
0
        public override PersistObject ToPersistObject()
        {
            PersistObject obj = new PersistObject("Renderer");

            obj.AddAttribute("type", Path.GetFileName(this.GetType().Assembly.Location) + "," + this.GetType().ToString());
            obj.AddAttribute("field", _field != null ? _field : string.Empty);
            //default symbol
            if (_defaultSymbol != null)
            {
                PersistObject defaultObj = new PersistObject("DefaultSymbol");
                obj.AddSubNode(defaultObj);
                defaultObj.AddSubNode((_defaultSymbol as IPersistable).ToPersistObject());
            }
            //symbols
            if (_symbols != null)
            {
                PersistObject symsObj = new PersistObject("UniqueSymbols");
                obj.AddSubNode(symsObj);
                symsObj.AddAttribute("UniqueValues", string.Join(",", _symbols.Keys.ToArray()));
                foreach (ISymbol sym in _symbols.Values)
                {
                    symsObj.AddSubNode((sym as IPersistable).ToPersistObject());
                }
            }
            return(obj);
        }
Пример #6
0
        private XmlNode GetXmlNode(XmlDocument doc, PersistObject obj)
        {
            if (obj == null)
            {
                return(null);
            }
            XmlNode node = doc.CreateNode(XmlNodeType.Element, obj.Name, null);

            if (obj.Attributes != null)
            {
                foreach (KeyValuePair <string, string> att in obj.Attributes)
                {
                    if (string.IsNullOrEmpty(att.Key))
                    {
                        continue;
                    }
                    XmlAttribute attNode = doc.CreateAttribute(att.Key);
                    if (att.Value == null)
                    {
                        attNode.Value = string.Empty;
                    }
                    else
                    {
                        attNode.Value = att.Value;
                    }
                    node.Attributes.Append(attNode);
                }
            }
            return(node);
        }
Пример #7
0
        public PersistObject ToPersistObject()
        {
            PersistObject obj = new PersistObject("AnnotationDef");

            obj.AddAttribute("filename", _filename != null ? _filename : string.Empty);
            obj.AddAttribute("fields", _fields != null ? string.Join(",", _fields) : string.Empty);
            return(obj);
        }
Пример #8
0
        public PersistObject ToPersistObject()
        {
            PersistObject obj = new PersistObject("ConflictDefinition");

            obj.AddAttribute("gridsize", _gridSize.Width.ToString() + "," + _gridSize.Height.ToString());
            obj.AddAttribute("enabled", _enabled.ToString());
            return(obj);
        }
Пример #9
0
        public PersistObject ToPersistObject()
        {
            PersistObject obj = new PersistObject("DataSource");

            obj.AddAttribute("type", Path.GetFileName(this.GetType().Assembly.Location) + "," + this.GetType().ToString());
            obj.AddAttribute("name", Name != null ? Name : string.Empty);
            obj.AddAttribute("url", _url != null ? Map.GetRelativeFilename(_url) : string.Empty);
            return(obj);
        }
Пример #10
0
        public PersistObject ToPersistObject()
        {
            PersistObject obj = new PersistObject("ArgsOfLeveling");

            obj.AddAttribute("enabled", _enabled.ToString());
            obj.AddAttribute("gridsize", _gridSize.ToString());
            obj.AddAttribute("beginlevel", _beginLevel.ToString());
            return(obj);
        }
Пример #11
0
        public PersistObject ToPersistObject()
        {
            PersistObject obj = new PersistObject("Author");

            obj.AddAttribute("author", _author);
            obj.AddAttribute("beginmaketime", _beginMakeTime.ToString("yyyy-MM-dd HH:mm:ss"));
            obj.AddAttribute("endmaketime", _endMakeTime.ToString("yyyy-MM-dd HH:mm:ss"));
            return(obj);
        }
Пример #12
0
        public PersistObject ToPersistObject()
        {
            PersistObject obj = new PersistObject("MemoryLimiter");

            obj.AddAttribute("type", _limitType.ToString());
            obj.AddAttribute("maxcount", _count.ToString());
            obj.AddAttribute("maxmemory", _maxMemorySize.ToString());
            return(obj);
        }
Пример #13
0
        public PersistObject ToPersistObject()
        {
            PersistObject obj = new PersistObject("GridDef");

            obj.AddAttribute("spanx", _spanX.ToString());
            obj.AddAttribute("spany", _spanY.ToString());
            obj.AddAttribute("gridsonetimes", _maxGridsOneTimes.ToString());
            return(obj);
        }
Пример #14
0
        public PersistObject ToPersistObject()
        {
            PersistObject obj = new PersistObject("DisplayScaleRange");

            obj.AddAttribute("enabled", _enabled.ToString());
            obj.AddAttribute("minscale", _displayScaleOfMin.ToString());
            obj.AddAttribute("maxscale", _displayScaleOfMax.ToString());
            return(obj);
        }
Пример #15
0
        public PersistObject ToPersistObject()
        {
            PersistObject obj = new PersistObject("FetClassIdentify");

            obj.AddAttribute("id", _id != null ? _id : string.Empty);
            obj.AddAttribute("name", _name != null ? _name : string.Empty);
            obj.AddAttribute("description", _description != null ? _description : string.Empty);
            return(obj);
        }
Пример #16
0
        public PersistObject ToPersistObject()
        {
            PersistObject obj = new PersistObject("InstanceIdentify");

            obj.AddAttribute("id", _id.ToString());
            obj.AddAttribute("name", _name != null ? _name : string.Empty);
            obj.AddAttribute("description", _descriptioin != null ? _descriptioin : string.Empty);
            return(obj);
        }
Пример #17
0
        public override PersistObject ToPersistObject()
        {
            PersistObject obj = new PersistObject("Symbol");

            obj.AddAttribute("type", Path.GetFileName(this.GetType().Assembly.Location) + "," + this.GetType().ToString());
            string fileurl = _imageUrl != null?_imageUrl.Replace(Constants.GetMapResourceDir(), string.Empty) : string.Empty;

            obj.AddAttribute("imageurl", fileurl);
            return(obj);
        }
Пример #18
0
        public override PersistObject ToPersistObject()
        {
            PersistObject obj = new PersistObject("Symbol");

            obj.AddAttribute("type", Path.GetFileName(this.GetType().Assembly.Location) + "," + this.GetType().ToString());
            obj.AddAttribute("style", _style.ToString());
            obj.AddAttribute("size", _size.Width.ToString() + "," + _size.Height.ToString());
            obj.AddAttribute("color", ColorHelper.ColorToString(_color));
            return(obj);
        }
Пример #19
0
        public PersistObject ToPersistObject()
        {
            PersistObject obj = new PersistObject("RasterClass");

            if (_dataSource != null)
            {
                obj.AddSubNode((_dataSource as IPersistable).ToPersistObject());
            }
            return(obj);
        }
Пример #20
0
        public static IFeatureRenderer FromXElement(XElement ele)
        {
            if (ele == null)
            {
                return(null);
            }
            ISymbol symbol = PersistObject.ReflectObjFromXElement(ele.Element("Symbol")) as ISymbol;

            return(new SimpleTwoStepFeatureRenderer(symbol));
        }
Пример #21
0
        private PersistObject EnvelopeToPersisitObject(Envelope evp, string name)
        {
            PersistObject obj = new PersistObject(name);

            obj.AddAttribute("MinX", evp.MinX.ToString());
            obj.AddAttribute("MinY", evp.MinY.ToString());
            obj.AddAttribute("MaxX", evp.MaxX.ToString());
            obj.AddAttribute("MaxY", evp.MaxY.ToString());
            return(obj);
        }
Пример #22
0
        public static IRasterClass FromXElement(XElement ele)
        {
            if (ele == null)
            {
                return(null);
            }
            object      ds         = PersistObject.ReflectObjFromXElement(ele.Element("DataSource"));
            IDataSource dataSource = (IDataSource)ds;

            return(new RasterClass(dataSource as IRasterDataSource));
        }
Пример #23
0
        public PersistObject ToPersistObject()
        {
            PersistObject obj = new PersistObject("Version");

            obj.AddAttribute("year", _authorYear.ToString());
            obj.AddAttribute("scaleofmapping", _scaleOfMapping.ToString());
            obj.AddAttribute("publisher", _publisher);
            obj.AddAttribute("source", _source);
            obj.AddAttribute("description", _description);
            return(obj);
        }
Пример #24
0
        public override PersistObject ToPersistObject()
        {
            PersistObject obj = new PersistObject("Symbol");

            obj.AddAttribute("type", Path.GetFileName(this.GetType().Assembly.Location) + "," + this.GetType().ToString());
            obj.AddAttribute("outlinecolor", ColorHelper.ColorToString(_outlineColor));
            obj.AddAttribute("fillcolor", ColorHelper.ColorToString(_fillColor));
            obj.AddAttribute("width", _width.ToString());
            obj.AddAttribute("outlinewidth", _outlineWidth.ToString());
            obj.AddAttribute("smoothingmode", _smoothingMode.ToString());
            return(obj);
        }
Пример #25
0
        public override PersistObject ToPersistObject()
        {
            PersistObject obj = new PersistObject("Symbol");

            obj.AddAttribute("type", Path.GetFileName(this.GetType().Assembly.Location) + "," + this.GetType().ToString());
            obj.AddAttribute("color", ColorHelper.ColorToString(_color));
            obj.AddAttribute("width", _width.ToString());
            obj.AddAttribute("startcap", _startLineCap.ToString());
            obj.AddAttribute("endcap", _endLineCap.ToString());
            obj.AddAttribute("linejoin", _lineJoin.ToString());
            return(obj);
        }
Пример #26
0
        public static RailwayBrush FromXElement(XElement ele)
        {
            if (ele == null)
            {
                return(null);
            }
            float             width = float.Parse(ele.Attribute("width").Value);
            ISimpleLineSymbol sym1  = PersistObject.ReflectObjFromXElement(ele.Element("FillSymbol1").Element("Symbol")) as ISimpleLineSymbol;
            ISimpleLineSymbol sym2  = PersistObject.ReflectObjFromXElement(ele.Element("FillSymbol2").Element("Symbol")) as ISimpleLineSymbol;
            ISimpleLineSymbol sym3  = PersistObject.ReflectObjFromXElement(ele.Element("OutlineSymbol").Element("Symbol")) as ISimpleLineSymbol;

            return(new RailwayBrush(width, sym1, sym2, sym3));
        }
Пример #27
0
        public override PersistObject ToPersistObject()
        {
            PersistObject obj = new PersistObject("DataSource");

            obj.AddAttribute("type", Path.GetFileName(this.GetType().Assembly.Location) + "," + this.GetType().ToString());
            obj.AddAttribute("name", _name != null ? _name : string.Empty);
            obj.AddAttribute("connectionstring", _connectionString != null ? _connectionString : string.Empty);
            if (_argOfLeveling != null)
            {
                obj.AddSubNode(_argOfLeveling.ToPersistObject());
            }
            return(obj);
        }
Пример #28
0
        public override PersistObject ToPersistObject()
        {
            PersistObject obj = new PersistObject("Symbol");

            obj.AddAttribute("type", Path.GetFileName(this.GetType().Assembly.Location) + "," + this.GetType().ToString());
            obj.AddAttribute("fillcolor", ColorHelper.ColorToString(_color));
            if (_outlineSymbol != null)
            {
                PersistObject outobj = new PersistObject("OutlineSymbol");
                obj.AddSubNode(outobj);
                outobj.AddSubNode((_outlineSymbol as IPersistable).ToPersistObject());
            }
            return(obj);
        }
Пример #29
0
        public override PersistObject ToPersistObject()
        {
            PersistObject obj = new PersistObject("Renderer");

            obj.AddAttribute("type", Path.GetFileName(this.GetType().Assembly.Location) + "," + this.GetType().ToString());
            //symbol
            if (_currentSymbol != null)
            {
                PersistObject symObj = (_currentSymbol as IPersistable).ToPersistObject();
                obj.AddSubNode(symObj);
            }
            //
            return(obj);
        }
Пример #30
0
        public override PersistObject ToPersistObject()
        {
            PersistObject obj = new PersistObject("Symbol");

            obj.AddAttribute("type", Path.GetFileName(this.GetType().Assembly.Location) + "," + this.GetType().ToString());
            obj.AddAttribute("size", _fontSize.ToString());
            if (_charItem != null)
            {
                obj.AddAttribute("font", FontHelper.FontToString(_charItem.Font));
                obj.AddAttribute("code", _charItem.Code.ToString());
            }
            obj.AddAttribute("color", ColorHelper.ColorToString(_color));
            return(obj);
        }