///<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(); }
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); } }
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); } }
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); } }
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; } }
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; } }
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; }
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; } }
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); }
public abstract void ReGenerateSymbol(ESRI.ArcGIS.Display.ISymbol pSymbol);
public abstract void InitClassSymbol(ESRI.ArcGIS.Display.ISymbol pSymbol);