Example #1
0
 public void SetScaleTypeForFits(string imagesetName, ScaleTypes scaleType)
 {
     if (WWTControl.Singleton != null)
     {
         WWTControl.Singleton.SetScaleTypeForFits(imagesetName, scaleType);
     }
 }
Example #2
0
        public override void InitializeFromXml(XmlNode node)
        {
            XmlNode imageSetNode = Util.SelectSingleNode(node, "ImageSet");

            imageSet = Imageset.FromXMLNode(imageSetNode);


            if (node.Attributes.GetNamedItem("Extension") != null)
            {
                extension = node.Attributes.GetNamedItem("Extension").Value;
            }

            if (node.Attributes.GetNamedItem("ScaleType") != null)
            {
                lastScale = (ScaleTypes)Enums.Parse("ScaleTypes", node.Attributes.GetNamedItem("ScaleType").Value);
            }

            if (node.Attributes.GetNamedItem("MinValue") != null)
            {
                min = double.Parse(node.Attributes.GetNamedItem("MinValue").Value);
            }

            if (node.Attributes.GetNamedItem("MaxValue") != null)
            {
                max = double.Parse(node.Attributes.GetNamedItem("MaxValue").Value);
            }

            if (node.Attributes.GetNamedItem("OverrideDefault") != null)
            {
                overrideDefaultLayer = bool.Parse(node.Attributes.GetNamedItem("OverrideDefault").Value);
            }
        }
Example #3
0
        public static void UpdateScale(ImageSetLayer isl, ScaleTypes scale, double low, double hi)
        {
            FitsImage    image           = isl.ImageSet.WcsImage as FitsImage;
            SkyImageTile Tile            = (SkyImageTile)TileCache.GetTile(0, 0, 0, isl.ImageSet, null);
            int          z               = image.lastBitmapZ;
            string       colorMapperName = image.lastBitmapColorMapperName;

            Tile.texture2d = image.GetScaledBitmap(low, hi, scale, z, colorMapperName).GetTexture();
        }
Example #4
0
    public void ScaleUsingCurve(float time)
    {
        RectTransform rt = gameObject.GetComponent <RectTransform>();

        startScale = rt.localScale;
        travelTime = time;
        timePassed = 0.0f;
        moving     = true;
        scaleType  = ScaleTypes.useCurve;
    }
Example #5
0
    // scales towards the given scale
    public void ScaleToAbsolute(Vector3 scale, float time, bool linear = false)
    {
        RectTransform rt = gameObject.GetComponent <RectTransform>();

        startScale       = rt.localScale;
        destinationScale = scale;
        travelTime       = time;
        timePassed       = 0.0f;
        moving           = true;
        scaleType        = linear ? ScaleTypes.linear : ScaleTypes.cubic;
    }
        public void SetImageScaleRaw(ScaleTypes scaleType, double min, double max)
        {
            ImageSet.FitsProperties.LowerCut  = min;
            ImageSet.FitsProperties.UpperCut  = max;
            ImageSet.FitsProperties.ScaleType = scaleType;

            if (imageSet.WcsImage is FitsImageJs)
            {
                Histogram.UpdateScale(this, scaleType, min, max);
            }
        }
Example #7
0
        public void SetImageScaleRaw(ScaleTypes scaleType, double min, double max)
        {
            this.min       = min;
            this.max       = max;
            this.lastScale = scaleType;

            if (imageSet.WcsImage is FitsImage)
            {
                Histogram.UpdateScale(this, scaleType, min, max);
            }
        }
Example #8
0
 public static void UpdateScale(ImageSetLayer isl, ScaleTypes scale, double low, double hi)
 {
     isl.ImageSet.FitsProperties.ScaleType = scale;
     isl.ImageSet.FitsProperties.LowerCut  = low;
     isl.ImageSet.FitsProperties.UpperCut  = hi;
     if (!RenderContext.UseGlVersion2)
     {
         FitsImageJs  image = isl.ImageSet.WcsImage as FitsImageJs;
         SkyImageTile Tile  = (SkyImageTile)TileCache.GetTile(0, 0, 0, isl.ImageSet, null);
         Tile.texture2d = image.GetBitmap().GetTexture();
     }
 }
Example #9
0
    // multiplies current scale by given factor, and then interpolates from that back to the currect scale
    public void ScaleBackFrom(float scaleFactor, float time, bool linear = false)
    {
        RectTransform rt = gameObject.GetComponent <RectTransform>();

        destinationScale = rt.localScale;
        startScale       = destinationScale * scaleFactor;
        rt.localScale    = startScale;
        travelTime       = time;
        timePassed       = 0.0f;
        moving           = true;
        scaleType        = linear ? ScaleTypes.linear : ScaleTypes.cubic;
    }
Example #10
0
        public void SetImageScalePhysical(ScaleTypes scaleType, double min, double max)
        {
            double newMin = min;
            double newMax = max;

            if (imageSet.WcsImage is FitsImage)
            {
                FitsImage img = imageSet.WcsImage as FitsImage;
                newMin = (newMin - img.BZero) / img.BScale;
                newMax = (newMax - img.BZero) / img.BScale;
            }
            SetImageScaleRaw(scaleType, newMin, newMax);
        }
        public void SetImageScalePhysical(ScaleTypes scaleType, double min, double max)
        {
            double newMin = min;
            double newMax = max;

            if (IsFitsImageset())
            {
                newMin = (newMin - imageSet.FitsProperties.BZero) / imageSet.FitsProperties.BScale;
                newMax = (newMax - imageSet.FitsProperties.BZero) / imageSet.FitsProperties.BScale;
            }

            SetImageScaleRaw(scaleType, newMin, newMax);
        }
Example #12
0
        // chunk-compute-end

        public Scale(string key, ScaleTypes type)
        {
            scale = new int [8];
            if (type == ScaleTypes.Major)
            {
                ComputeScale(key, MajorIntervals, scale);
            }
            else if (type == ScaleTypes.Minor)
            {
                ComputeScale(key, MinorIntervals, scale);
            }
            else
            {
                ComputeScale(key, MajorIntervals, scale);
            }
        }
        public override void InitializeFromXml(System.Xml.XmlNode node)
        {
            XmlNode imageSetNode = node["ImageSet"];

            ImageSetHelper ish = ImageSetHelper.FromXMLNode(imageSetNode);

            if (!String.IsNullOrEmpty(ish.Url) && Earth3d.ReplacementImageSets.ContainsKey(ish.Url))
            {
                imageSet = Earth3d.ReplacementImageSets[ish.Url];
            }
            else
            {
                imageSet = ish;
            }

            if (node.Attributes["Extension"] != null)
            {
                extension = node.Attributes["Extension"].Value;
            }

            if (node.Attributes["ScaleType"] != null)
            {
                lastScale = (ScaleTypes)Enum.Parse(typeof(ScaleTypes), node.Attributes["ScaleType"].Value);
            }

            if (node.Attributes["MinValue"] != null)
            {
                min = double.Parse(node.Attributes["MinValue"].Value);
            }

            if (node.Attributes["MaxValue"] != null)
            {
                max = double.Parse(node.Attributes["MaxValue"].Value);
            }

            if (node.Attributes["OverrideDefault"] != null)
            {
                overrideDefaultLayer = bool.Parse(node.Attributes["OverrideDefault"].Value);
            }
        }
        public Bitmap GetBitmap(double min, double max, ScaleTypes scaleType)
        {
            ScaleMap scale;

            lastScale     = scaleType;
            lastBitmapMin = min;
            lastBitmapMax = max;

            switch (scaleType)
            {
            default:
            case ScaleTypes.Linear:
                scale = new ScaleLinear(min, max);
                break;

            case ScaleTypes.Log:
                scale = new ScaleLog(min, max);
                break;

            case ScaleTypes.Power:
                scale = new ScalePow(min, max);
                break;

            case ScaleTypes.SquareRoot:
                scale = new ScaleSqrt(min, max);
                break;

            case ScaleTypes.HistogramEqualization:
                scale = new HistogramEqualization(this, min, max);
                break;
            }

            try
            {
                switch (DataType)
                {
                case DataTypes.Byte:
                    return(GetBitmapByte(min, max, scale));

                case DataTypes.Int16:
                    return(GetBitmapShort(min, max, scale));

                case DataTypes.Int32:
                    return(GetBitmapInt(min, max, scale));

                case DataTypes.Float:
                    return(GetBitmapFloat(min, max, scale));

                case DataTypes.Double:
                    return(GetBitmapDouble(min, max, scale));

                case DataTypes.None:
                default:
                    return(new Bitmap(100, 100));
                }
            }
            catch
            {
                return(new Bitmap(10, 10));
            }
        }
 // chunk-compute-end
 public Scale(string key, ScaleTypes type)
 {
     scale = new int [8];
      if (type ==  ScaleTypes.Major)
     ComputeScale(key, MajorIntervals, scale);
      else if (type == ScaleTypes.Minor)
     ComputeScale(key, MinorIntervals, scale);
      else
     ComputeScale(key, MajorIntervals, scale);
 }
Example #16
0
 public void SetImageScale(ScaleTypes scaleType, double min, double max)
 {
     Script.Literal("console.warn('SetImageScale is considered deprecated. Use setImageScaleRaw or setImageScalePhysical instead.')");
     SetImageScaleRaw(scaleType, min, max);
 }
Example #17
0
        public Bitmap GetScaledBitmap(double min, double max, ScaleTypes scaleType, int z, string colorMapperName)
        {
            z = Math.Min(z, sizeZ);
            ScaleMap scale;

            lastScale                 = scaleType;
            lastBitmapMin             = min;
            lastBitmapMax             = max;
            lastBitmapZ               = z;
            lastBitmapColorMapperName = colorMapperName;

            ColorMapContainer colorMapper = ColorMapContainer.FromNamedColormap(colorMapperName);

            switch (scaleType)
            {
            default:
            case ScaleTypes.Linear:
                scale = new ScaleLinear(min, max);
                break;

            case ScaleTypes.Log:
                scale = new ScaleLog(min, max);
                break;

            case ScaleTypes.Power:
                scale = new ScalePow(min, max);
                break;

            case ScaleTypes.SquareRoot:
                scale = new ScaleSqrt(min, max);
                break;

            case ScaleTypes.HistogramEqualization:
                scale = new HistogramEqualization(this, min, max);
                break;
            }

            try
            {
                switch (DataType)
                {
                case DataTypes.ByteT:
                    return(GetBitmapByte(min, max, scale, lastBitmapZ, colorMapper));

                case DataTypes.Int16T:
                    return(GetBitmapShort(min, max, scale, lastBitmapZ, colorMapper));

                case DataTypes.Int32T:
                    return(GetBitmapInt(min, max, scale, lastBitmapZ, colorMapper));

                case DataTypes.FloatT:
                    return(GetBitmapFloat(min, max, scale, lastBitmapZ, colorMapper));

                case DataTypes.DoubleT:
                    return(GetBitmapDouble(min, max, scale, lastBitmapZ, colorMapper));

                case DataTypes.None:
                default:
                    return(Bitmap.Create(100, 100));
                }
            }
            catch
            {
                return(Bitmap.Create(10, 10));
            }
        }
        public Bitmap GetBitmap(double min, double max, ScaleTypes scaleType)
        {
            ScaleMap scale;
            lastScale = scaleType;
            lastBitmapMin = min;
            lastBitmapMax = max;

            switch (scaleType)
            {
                case ScaleTypes.Linear:
                    scale = new ScaleLinear(min, max);
                    break;
                case ScaleTypes.Log:
                    scale = new ScaleLog(min, max);
                    break;
                case ScaleTypes.Power:
                    scale = new ScalePow(min, max);
                    break;
                case ScaleTypes.SquareRoot:
                    scale = new ScaleSqrt(min, max);
                    break;
                case ScaleTypes.HistogramEqualization:
                    scale = new HistogramEqualization(this, min, max);
                    break;
                default:
                    // use linear otherwise
                    scale = new ScaleLinear(min, max);
                    break;
            }

            try
            {
                switch (DataType)
                {
                    case DataTypes.Byte:
                        return GetBitmapByte(min, max, scale);
                    case DataTypes.Int16:
                        return GetBitmapShort(min, max, scale);
                    case DataTypes.Int32:
                        return GetBitmapInt(min, max, scale);
                    case DataTypes.Float:
                        return GetBitmapFloat(min, max, scale);
                    case DataTypes.Double:
                        return GetBitmapDouble(min, max, scale);
                    default:
                        // case DataTypes.None:
                        return new Bitmap(100, 100);
                }
            }
            catch
            {
                return new Bitmap(10,10);
            }
        }
Example #19
0
 internal static extern void DoScaleEventHandler_SetScaleType(IntPtr ptr, ScaleTypes scaleType);
        public override void InitializeFromXml(System.Xml.XmlNode node)
        {
            XmlNode imageSetNode = node["ImageSet"];

            ImageSetHelper ish = ImageSetHelper.FromXMLNode(imageSetNode);

            if (!String.IsNullOrEmpty(ish.Url) && Earth3d.ReplacementImageSets.ContainsKey(ish.Url))
            {
                imageSet = Earth3d.ReplacementImageSets[ish.Url];
            }
            else
            {
                imageSet = ish;
            }

            if (node.Attributes["Extension"] != null)
            {
                extension = node.Attributes["Extension"].Value;
            }

            if (node.Attributes["ScaleType"] != null)
            {
                lastScale = (ScaleTypes) Enum.Parse(typeof(ScaleTypes), node.Attributes["ScaleType"].Value);
            }

            if (node.Attributes["MinValue"] != null)
            {
                min = double.Parse(node.Attributes["MinValue"].Value);
            }

            if (node.Attributes["MaxValue"] != null)
            {
                max = double.Parse(node.Attributes["MaxValue"].Value);
            }

            if (node.Attributes["OverrideDefault"] != null)
            {
                overrideDefaultLayer = bool.Parse(node.Attributes["OverrideDefault"].Value );
            }
        }