Exemplo n.º 1
0
        ///<summary>Flash geometry on the display. The geometry type could be polygon, polyline, point, or multipoint.</summary>
        ///
        ///<param name="geometry"> An IGeometry interface</param>
        ///<param name="color">An IRgbColor interface</param>
        ///<param name="display">An IDisplay interface</param>
        ///<param name="delay">A System.Int32 that is the time im milliseconds to wait.</param>
        ///
        ///<remarks></remarks>
        public void FlashGeometry(ESRI.ArcGIS.Geometry.IGeometry geometry, ESRI.ArcGIS.Display.IRgbColor color, ESRI.ArcGIS.Display.IDisplay display, System.Int32 delay)
        {
            if (geometry == null || color == null || display == null)
            {
                return;
            }

            display.StartDrawing(display.hDC, (System.Int16)ESRI.ArcGIS.Display.esriScreenCache.esriNoScreenCache); // Explicit Cast


            switch (geometry.GeometryType)
            {
            case ESRI.ArcGIS.Geometry.esriGeometryType.esriGeometryPoint:
            {
                //Set the flash geometry's symbol.
                ESRI.ArcGIS.Display.ISimpleMarkerSymbol simpleMarkerSymbol = new ESRI.ArcGIS.Display.SimpleMarkerSymbol();
                simpleMarkerSymbol.Style = ESRI.ArcGIS.Display.esriSimpleMarkerStyle.esriSMSCircle;
                simpleMarkerSymbol.Size  = 12;
                simpleMarkerSymbol.Color = color;
                ESRI.ArcGIS.Display.ISymbol symbol = simpleMarkerSymbol as ESRI.ArcGIS.Display.ISymbol;         // Dynamic Cast
                symbol.ROP2 = ESRI.ArcGIS.Display.esriRasterOpCode.esriROPNotXOrPen;

                //Flash the input point geometry.
                display.SetSymbol(symbol);
                display.DrawPoint(geometry);
                System.Threading.Thread.Sleep(delay);
                display.DrawPoint(geometry);
                break;
            }
            }
            display.FinishDrawing();
        }
Exemplo n.º 2
0
 public override void ReGenerateSymbol(ESRI.ArcGIS.Display.ISymbol pSymbol)
 {
     if (pSymbol != null && pSymbol is ESRI.ArcGIS.Display.ILineSymbol)
     {
         ESRI.ArcGIS.Display.ILineSymbol pLineSymbol = pSymbol as ESRI.ArcGIS.Display.ILineSymbol;
         pLineSymbol.Width = m_Width;
         //pLineSymbol.Offset = m_Offset;
         pLineSymbol.Color = ModuleCommon.GetESRIColor(m_LineColor);
     }
 }
Exemplo n.º 3
0
 public override void ReGenerateSymbol(ESRI.ArcGIS.Display.ISymbol pSymbol)
 {
     if (pSymbol != null && pSymbol is ESRI.ArcGIS.Display.IFillSymbol)
     {
         ESRI.ArcGIS.Display.IFillSymbol pFillSymbol = pSymbol as ESRI.ArcGIS.Display.IFillSymbol;
         ESRI.ArcGIS.Display.ILineSymbol pLineSymbol = pFillSymbol.Outline;
         pLineSymbol.Width   = m_OutlineWidth;
         pLineSymbol.Color   = ModuleCommon.GetESRIColor(m_OutlineColor);
         pFillSymbol.Outline = pLineSymbol;
         pFillSymbol.Color   = ModuleCommon.GetESRIColor(m_FillColor);
     }
 }
Exemplo n.º 4
0
 public override void ReGenerateSymbol(ESRI.ArcGIS.Display.ISymbol pSymbol)
 {
     if (pSymbol != null && pSymbol is ESRI.ArcGIS.Display.IMarkerSymbol)
     {
         ESRI.ArcGIS.Display.IMarkerSymbol pMarkerSymbol = pSymbol as ESRI.ArcGIS.Display.IMarkerSymbol;
         pMarkerSymbol.Size    = m_Size;
         pMarkerSymbol.XOffset = m_XOffset;
         pMarkerSymbol.YOffset = m_YOffset;
         pMarkerSymbol.Angle   = m_Angle;
         pMarkerSymbol.Color   = ModuleCommon.GetESRIColor(m_PointColor);
     }
 }
Exemplo n.º 5
0
 public override void InitClassSymbol(ESRI.ArcGIS.Display.ISymbol pSymbol)
 {
     if (pSymbol is ESRI.ArcGIS.Display.IFillSymbol)
     {
         ESRI.ArcGIS.Display.IFillSymbol pFillSymbol = pSymbol as ESRI.ArcGIS.Display.IFillSymbol;
         m_OutlineWidth = pFillSymbol.Outline.Width;
         m_FillColor    = ModuleCommon.GetWindowsColor(pFillSymbol.Color);
         m_OutlineColor = ModuleCommon.GetWindowsColor(pFillSymbol.Outline.Color);
     }
     else
     {
         m_OutlineWidth = 1;
         m_FillColor    = System.Drawing.Color.Gray;
         m_OutlineColor = System.Drawing.Color.Black;
     }
 }
Exemplo n.º 6
0
 public override void InitClassSymbol(ESRI.ArcGIS.Display.ISymbol pSymbol)
 {
     if (pSymbol is ESRI.ArcGIS.Display.ILineSymbol)
     {
         ESRI.ArcGIS.Display.ILineSymbol pLineSymbol = pSymbol as ESRI.ArcGIS.Display.ILineSymbol;
         m_Width     = pLineSymbol.Width;
         m_Offset    = 0;
         m_LineColor = ModuleCommon.GetWindowsColor(pLineSymbol.Color);
     }
     else
     {
         m_Width     = 1;
         m_Offset    = 0;
         m_LineColor = System.Drawing.Color.Black;
     }
 }
Exemplo n.º 7
0
        public frmSymbolEdit(IEditItem _EditItem, ESRI.ArcGIS.Display.ISymbol _EditValue, string editType)
        {
            InitializeComponent();
            m_SymbolObject = Class.SymbolObject.CreateClassSymbol(_EditValue);
            m_EditType     = editType;
            string sInstall = ModuleCommon.ReadRegistry("SOFTWARE\\ESRI\\CoreRuntime");

            if (sInstall == "") //added by chulili 2012-11-13 ƽ̨ÓÉArcGIS9.3»»³ÉArcGIS10£¬ÏàÓ¦µÄ×¢²á±í·¾¶ÒªÐÞ¸Ä
            {
                sInstall = ModuleCommon.ReadRegistry("SOFTWARE\\ESRI\\Engine10.0\\CoreRuntime");
            }
            if (sInstall == "")
            {
                sInstall = ModuleCommon.ReadRegistry("SOFTWARE\\ESRI\\Desktop10.0\\CoreRuntime");
            }   //added by chulili 2012-11-13  end
            System.IO.DirectoryInfo pDic  = new System.IO.DirectoryInfo(sInstall + "\\Styles\\");
            System.IO.FileInfo[]    files = pDic.GetFiles("*.ServerStyle");
            cmbStyleFiles.Items.Clear();
            for (int i = 0; i < files.Length; i++)
            {
                cmbStyleFiles.Items.Add(sInstall + "\\Styles\\" + files[i].ToString());
            }
            int index = cmbStyleFiles.Items.IndexOf(sInstall + "\\Styles\\ESRI.ServerStyle");

            if (index != -1)
            {
                cmbStyleFiles.SelectedIndex = index;
            }
            else if (cmbStyleFiles.Items.Count > 0)
            {
                cmbStyleFiles.SelectedIndex = 0;
            }


            m_EditItem       = _EditItem;
            labelPreview.Tag = _EditValue;
            if (labelPreview.Image != null)
            {
                labelPreview.Image.Dispose();
                labelPreview.Image = null;
            }
            labelPreview.Image = ModuleCommon.Symbol2Picture(_EditValue, ModuleCommon.ImageWidth, ModuleCommon.ImageHeight);

            advGridSymbol.SelectedObject = m_SymbolObject;
        }
Exemplo n.º 8
0
 public override void InitClassSymbol(ESRI.ArcGIS.Display.ISymbol pSymbol)
 {
     if (pSymbol is ESRI.ArcGIS.Display.IMarkerSymbol)
     {
         ESRI.ArcGIS.Display.IMarkerSymbol pMarkerSymbol = pSymbol as ESRI.ArcGIS.Display.IMarkerSymbol;
         m_Size       = pMarkerSymbol.Size;
         m_XOffset    = pMarkerSymbol.XOffset;
         m_YOffset    = pMarkerSymbol.YOffset;
         m_Angle      = pMarkerSymbol.Angle;
         m_PointColor = ModuleCommon.GetWindowsColor(pMarkerSymbol.Color);
     }
     else
     {
         m_Size       = 2;
         m_XOffset    = 0;
         m_YOffset    = 0;
         m_Angle      = 0;
         m_PointColor = System.Drawing.Color.Black;
     }
 }
Exemplo n.º 9
0
        public static SymbolObject CreateClassSymbol(ESRI.ArcGIS.Display.ISymbol pSymbol)
        {
            SymbolObject pSymbolObject = null;

            if (pSymbol is ESRI.ArcGIS.Display.IMarkerSymbol)
            {
                pSymbolObject = new PointSymbolObject();
                pSymbolObject.InitClassSymbol(pSymbol);
            }
            else if (pSymbol is ESRI.ArcGIS.Display.ILineSymbol)
            {
                pSymbolObject = new LineSymbolObject();
                pSymbolObject.InitClassSymbol(pSymbol);
            }
            else if (pSymbol is ESRI.ArcGIS.Display.IFillSymbol)
            {
                pSymbolObject = new FillSymbolObject();
                pSymbolObject.InitClassSymbol(pSymbol);
            }

            return(pSymbolObject);
        }
Exemplo n.º 10
0
 public abstract void ReGenerateSymbol(ESRI.ArcGIS.Display.ISymbol pSymbol);
Exemplo n.º 11
0
 public abstract void InitClassSymbol(ESRI.ArcGIS.Display.ISymbol pSymbol);