Exemple #1
0
        private void InitRendererUI()
        {
            IRasterRendererUI pRasterRendererUI = null;

            if (_RasterRenderer is IRasterRGBRenderer)
            {
                return;
            }
            else if (_RasterRenderer is IRasterUniqueValueRenderer)
            {
                return;
            }
            else if (_RasterRenderer is IRasterStretchColorRampRenderer)
            {
                pRasterRendererUI = new frmStretchColorRampRenderer();
            }
            else if (_RasterRenderer is IRasterClassifyColorRampRenderer)
            {
                return;
            }
            else
            {
                return;
            }
            if (_Layer != null)
            {
                pRasterRendererUI.InitRasterRendererObject(_Layer, _RasterRenderer);
            }
            m_RendererObject.Add(pRasterRendererUI.GetType().FullName, pRasterRendererUI);

            treeCatelog.SelectedNode = treeCatelog.FindNodeByName(pRasterRendererUI.GetType().FullName);
        }
Exemple #2
0
        private void CreateRendererObject(string typeString)
        {
            if (m_RendererObject.ContainsKey(typeString))
            {
                return;
            }
            try
            {
                Type type = Type.GetType(typeString);
                if (type == null)
                {
                    return;
                }
                IRasterRendererUI rendererObject = Activator.CreateInstance(type) as IRasterRendererUI;

                ESRI.ArcGIS.Carto.IRasterRenderer pRasterRenderer = null;
                switch (rendererObject.RasterRendererType)
                {
                case enumRasterRendererType.StretchColorRampRenderer:
                    pRasterRenderer = ModuleCommon.CreateStretchColorRampRenderer();
                    break;

                case enumRasterRendererType.ClassifyColorRampRenderer:
                    pRasterRenderer = ModuleCommon.CreateClassifyColorRampRenderer();
                    break;

                case enumRasterRendererType.UniqueValueRenderer:
                    pRasterRenderer = ModuleCommon.CreateUniqueValueRasterRenderer();
                    break;

                case enumRasterRendererType.RGBRenderer:
                    pRasterRenderer = ModuleCommon.CreateRGBRenderer();
                    break;
                }

                if (_Layer == null)
                {
                    rendererObject.InitRasterRendererObject(m_FieldInfo, pRasterRenderer);
                }
                else
                {
                    rendererObject.InitRasterRendererObject(_Layer, pRasterRenderer);
                }
                m_RendererObject.Add(typeString, rendererObject);
            }
            catch (Exception ex)
            {
            }
        }
Exemple #3
0
        public static void SaveRasterRendererToByte(ref byte[] _RendererValue, ref string _RendererType, IRasterRendererUI pRasterRendererUI)
        {
            if (pRasterRendererUI == null)
            {
                _RendererValue = null;
                _RendererType  = enumRasterRendererType.StretchColorRampRenderer.ToString();
                return;
            }

            _RendererType = pRasterRendererUI.RasterRendererType.ToString();

            try
            {
                IPersistStream pPersistStream = pRasterRendererUI.RasterRenderer  as IPersistStream;
                IStream        pStream        = new XMLStreamClass();
                pPersistStream.Save(pStream, 0);
                IXMLStream pXMLStream = pStream as IXMLStream;
                _RendererValue = pXMLStream.SaveToBytes();
            }
            catch (Exception ex)
            {
                _RendererValue = null;
                _RendererType  = enumRasterRendererType.StretchColorRampRenderer.ToString();
            }
        }