⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 scale.java

📁 这是一个十分有用的java图形工具包
💻 JAVA
字号:
package net.turbochen.graph;

/**
 * 比例尺,用来实现屏幕坐标与实际值之间的转换.
 * @author Turbo Chen
 */
public abstract class Scale
{

    protected double min;
    
    protected double max;
    
    protected int screenMin;
    protected int screenMax;



    /**
     * 将实际值转换成屏幕坐标.
     * @param value     实际值.
     * @return int      屏幕坐标.
     */
    public abstract int getScreenCoordinate(double value);
    
    /**
     * 将屏幕坐标转换成实际值.
     * @param value     屏幕坐标.
     * @return double   实际值.
     */
    public double getActualValue(int value)
    {
        double vrange = max - min;
        if(min < 0.0 && max < 0.0)
            vrange = (min - max) * -1.0;
        double i = screenMax - screenMin;
        i = ((double)(value - screenMin) * vrange) / i;
        i += min;
        return i;
    }

    /**
     * 设置比例尺的最大值..
     * @param max 
     */
    public void setMax(double max)
    {
        this.max = max;
    }

    /**
     * 设置比例尺的最小值..
     * @param min 
     */
    public void setMin(double min)
    {
        this.min = min;
    }

    /**
     * 取得比例尺的最大值.
     * @return double
     */
    public double getMax()
    {
        return max;
    }

    /**
     * 取得比例尺的最小值.
     * @return double
     */
    public double getMin()
    {
        return min;
    }

    /**
     * 取得屏幕上的最大值.
     * @return double
     */
    public int getScreenMax()
    {
        return screenMax;
    }

    /**
     * 取得屏幕上的最小值.
     * @return double
     */
    public int getScreenMin()
    {
        return screenMin;
    }

    /**
     * 设置屏幕上的最大值.
     * @param screenMax
     */
    public void setScreenMax(int screenMax)
    {
        this.screenMax = screenMax;
    }

    /**
     * 设置屏幕上的最小值.
     * @param screenMin
     */
    public void setScreenMin(int screenMin)
    {
        this.screenMin = screenMin;
    }

}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -