UV数据与风速风向数据转换

By | 2019年9月10日
package com.qr.util;

import java.text.DecimalFormat;

/**
 * //TODO UV数据与风速风向数据转换
 */
public class UVAndSD {
    
    /**
     * UV数据计算速度
     */
    public static double vectorToSpeed(double uMs, double vMs) {
        double windAbs = Math.sqrt(Math.pow(uMs, 2) + Math.pow(vMs, 2));
        return windAbs;
    }

    /**
     * UV数据计算风向
     */
    public static double vectorToDegrees(double uMs, double vMs) {
        DecimalFormat df = new DecimalFormat("#.000");
        double windAbs = Math.sqrt(Math.pow(uMs, 2) + Math.pow(vMs, 2));
        double windDirTrigTo = Math.atan2(uMs / windAbs, vMs / windAbs);
        double windDirTrigToDegrees = windDirTrigTo * 180 / Math.PI;
        double windDirTrigFromDegrees = windDirTrigToDegrees + 180;
        return Double.parseDouble(df.format(windDirTrigFromDegrees));
    }
}

 

Category: 未分类

发表评论

电子邮件地址不会被公开。 必填项已用*标注