获得具有角度的2个三角形的比例

时间:2017-03-11 09:51:13

标签: c# geometry

我的问题可能不清楚标题,但它很简单:

    def occurrencesOfLang(lang: String, rdd: RDD[WikipediaArticle]): Int =
    {
        val tmp: Array[(String, Int)] = rdd.filter(line => line.text.contentEquals(lang)).map(line => (lang, 1)).aggregateByKey(0)(_ + _, _ + _).collect()
        return tmp(0)._2    
    }

我需要增加(减少)vX和vY的双倍"值"无论什么" angleInDegrees"以这种方式,如果角度是90度,vX将增加100%的"值"并且vY为0%,如果角度为45度,则两个数字将增加50%的"值"。我怎样才能做到这一点?

enter image description here

2 个答案:

答案 0 :(得分:0)

字面答案:

if (angleInDegrees == 90)
   vX *= 2.0;

if (angleInDegrees == 45)
{
   vX *= 1.5;
   vY *= 1.5;
} 

P.S。 Atan2的参数顺序为(y, x)

答案 1 :(得分:0)

这是你正在寻找的吗?

angleInDegrees = Math.Atan2(vY, vX) * 180 / Math.PI;
vX += value * angleInDegrees / 90.0f;
vY += value * (1 - (angleInDegrees / 90.0f));