我的问题可能不清楚标题,但它很简单:
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%的"值"。我怎样才能做到这一点?
答案 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));