Example #1
0
        public BandValueColorPair[] GetBandValueTransColorPair(string datasetName)
        {
            XmlNode node = GetBandValueNode(datasetName);

            if (node == null || node.ChildNodes == null || node.ChildNodes.Count == 0)
            {
                return(null);
            }
            string name = NodeHandler.NodeAtt2String(node, "name");
            List <BandValueIndexPair>  pairs = new List <BandValueIndexPair>();
            L2BandValueIndexPairParser p     = new L2BandValueIndexPairParser();

            foreach (XmlNode chNode in node.ChildNodes)
            {
                string v           = NodeHandler.NodeAtt2String(chNode, "values");
                string idx         = NodeHandler.NodeAtt2String(chNode, "indexes");
                Int16  tV          = (Int16)NodeHandler.NodeAtt2Int(chNode, "transValue");
                Color  transRGB    = NodeHandler.NodeAtt2Color(chNode, "transRGB");
                string description = NodeHandler.NodeAtt2String(chNode, "description");
                bool   isDisplay   = false;
                Boolean.TryParse(NodeHandler.NodeAtt2String(chNode, "Display"), out isDisplay);
                BandValueIndexPair[] ps = p.Parse(v, idx, tV, isDisplay, transRGB, description);
                if (ps != null && ps.Length > 0)
                {
                    pairs.AddRange(ps);
                }
            }

            return(GetBandValueTransColorPair(pairs.ToArray(), name));
        }
Example #2
0
        public BandValueColorPair[] GetBandValueColorPair(string datasetName)
        {
            XmlNode node = GetBandValueNode(datasetName);

            if (node == null || node.ChildNodes == null || node.ChildNodes.Count == 0)
            {
                return(null);
            }
            string name = NodeHandler.NodeAtt2String(node, "name");
            List <BandValueIndexPair>  pairs = new List <BandValueIndexPair>();
            L2BandValueIndexPairParser p     = new L2BandValueIndexPairParser();

            foreach (XmlNode chNode in node.ChildNodes)
            {
                string v   = NodeHandler.NodeAtt2String(chNode, "values");
                string idx = NodeHandler.NodeAtt2String(chNode, "indexes");
                BandValueIndexPair[] ps = p.Parse(v, idx);
                if (ps != null && ps.Length > 0)
                {
                    pairs.AddRange(ps);
                }
            }
            return(GetBandValueColorPair(pairs.ToArray(), name));
        }