Ejemplo n.º 1
0
        public frmLayerProperties(AxMapObjects2.AxMap mapControl, object layer)
        {
            InitializeComponent();

            this._mapControl = mapControl;

            if (layer == null)
                throw new Exception("layer is null,please set a valid layer.");

            if (layer is MapObjects2.ImageLayer)
                this._imageLayer = layer as MapObjects2.ImageLayer;
            else if (layer is MapObjects2.MapLayer)
                this._mapLayer = layer as MapObjects2.MapLayer;

            if (this._mapLayer != null)
            {
                int iColumnsCount = this._mapLayer.Records.TableDesc.FieldCount;
                string sFieldName = string.Empty;
                this._fieldsList.Clear();
                this._numFieldsList.Clear();

                for (short i = 0; i < iColumnsCount; i++)
                {
                    sFieldName = this._mapLayer.Records.TableDesc.get_FieldName(i);
                    MapObjects2.Field oField = this._mapLayer.Records.Fields.Item(sFieldName);
                    this._fieldsList.Add(oField.Name);

                    if (oField.Type == MapObjects2.FieldTypeConstants.moDouble || oField.Type == MapObjects2.FieldTypeConstants.moLong)
                        this._numFieldsList.Add(oField.Name);
                }
            }
        }
Ejemplo n.º 2
0
        public ImageLayerInfoStruct LoadLayerInfos(MapObjects2.ImageLayer layer, string fileName, double minScale, double maxScale)
        {
            ImageLayerInfoStruct oImageLayerStruct = new ImageLayerInfoStruct();

            oImageLayerStruct.FileName = fileName;
            oImageLayerStruct.MinLevel = minScale;
            oImageLayerStruct.MaxLevel = maxScale;
            oImageLayerStruct.Name     = layer.Name;

            return(oImageLayerStruct);
        }
Ejemplo n.º 3
0
        public frmLayerProperties(AxMapObjects2.AxMap mapControl, object layer)
        {
            InitializeComponent();

            this._mapControl = mapControl;

            if (layer == null)
            {
                throw new Exception("layer is null,please set a valid layer.");
            }

            if (layer is MapObjects2.ImageLayer)
            {
                this._imageLayer = layer as MapObjects2.ImageLayer;
            }
            else if (layer is MapObjects2.MapLayer)
            {
                this._mapLayer = layer as MapObjects2.MapLayer;
            }


            if (this._mapLayer != null)
            {
                int    iColumnsCount = this._mapLayer.Records.TableDesc.FieldCount;
                string sFieldName    = string.Empty;
                this._fieldsList.Clear();
                this._numFieldsList.Clear();

                for (short i = 0; i < iColumnsCount; i++)
                {
                    sFieldName = this._mapLayer.Records.TableDesc.get_FieldName(i);
                    MapObjects2.Field oField = this._mapLayer.Records.Fields.Item(sFieldName);
                    this._fieldsList.Add(oField.Name);

                    if (oField.Type == MapObjects2.FieldTypeConstants.moDouble || oField.Type == MapObjects2.FieldTypeConstants.moLong)
                    {
                        this._numFieldsList.Add(oField.Name);
                    }
                }
            }
        }
Ejemplo n.º 4
0
        public void LoadLayersToLegend(AxMapObjects2.AxMap mapObject)
        {
            if (mapObject == null)
            {
                return;
            }

            this._mapObject = mapObject;

            int iLayersCount = 0;

            iLayersCount = mapObject.Layers.Count;
            pnlLegend.Controls.Clear();

            int iCtrlsCounter = 0;

            for (int i = 0; i < iLayersCount; i++)
            {
                CheckBox oCkbLayer = new CheckBox();
                object   oLayer    = mapObject.Layers.Item(i);
                if (oLayer is MapObjects2.MapLayer)
                {
                    MapObjects2.MapLayer oMapLayer = oLayer as MapObjects2.MapLayer;
                    oCkbLayer.Text    = oMapLayer.Name;
                    oCkbLayer.Checked = oMapLayer.Visible;

                    if (oMapLayer.shapeType == MapObjects2.ShapeTypeConstants.moShapeTypePoint || oMapLayer.shapeType == MapObjects2.ShapeTypeConstants.moShapeTypeMultipoint)
                    {
                        oCkbLayer.Image = Properties.Resources.pointShape;
                    }
                    else if (oMapLayer.shapeType == MapObjects2.ShapeTypeConstants.moShapeTypeEllipse || oMapLayer.shapeType == MapObjects2.ShapeTypeConstants.moShapeTypeLine || oMapLayer.shapeType == MapObjects2.ShapeTypeConstants.moShapeTypeRectangle)
                    {
                        oCkbLayer.Image = Properties.Resources.lineShape;
                    }
                    else if (oMapLayer.shapeType == MapObjects2.ShapeTypeConstants.moShapeTypePolygon)
                    {
                        oCkbLayer.Image = Properties.Resources.polygonShape;
                    }
                }
                else if (oLayer is MapObjects2.ImageLayer)
                {
                    MapObjects2.ImageLayer oImageLayer = oLayer as MapObjects2.ImageLayer;

                    oCkbLayer.Image   = Properties.Resources.image;
                    oCkbLayer.Text    = oImageLayer.Name;
                    oCkbLayer.Checked = oImageLayer.Visible;
                }

                oCkbLayer.Visible           = true;
                oCkbLayer.AutoSize          = true;
                oCkbLayer.FlatStyle         = FlatStyle.Flat;
                oCkbLayer.Anchor            = (AnchorStyles)(AnchorStyles.Top | AnchorStyles.Left);
                oCkbLayer.ImageAlign        = ContentAlignment.MiddleLeft;
                oCkbLayer.TextAlign         = ContentAlignment.MiddleRight;
                oCkbLayer.TextImageRelation = TextImageRelation.ImageBeforeText;
                oCkbLayer.ContextMenuStrip  = mnuLayerProperty;

                oCkbLayer.CheckedChanged += new EventHandler(CkbLayer_CheckedChanged);
                oCkbLayer.MouseDown      += new MouseEventHandler(oCkbLayer_MouseDown);

                this.pnlLegend.Controls.Add(oCkbLayer);
                oCkbLayer.Location = new System.Drawing.Point(30, iCtrlsCounter * (oCkbLayer.Height + 12) + 20);
                iCtrlsCounter++;
            }

            this.pnlLegend.Refresh();
        }