2016-12-11 9 views
-2

をチェック'this'ベクトルと同じ方向を持つ新しく構築されたVectorオブジェクトを返さなければなりませんが、その大きさが指定されたパラメータ値を超えると、それは縮小されますベクトルの方向は影響を受けず、大きさのみが変更される可能性があります。ベクトルの大きさが最大値を超えていない場合は変更しないでください。2Dベクトルは、私は次の関数としてのベクトルオブジェクトを作成しています大きさ

のジャスミンテスト:私は大きさが制限を超えていないが、トラブルを超える限界試験を取得したのです

describe("Limit To", function() { 
    var limitedVector, magnitude; 

    it("Magnitude not exceeding limit", function() { 
     limitedVector = vector.limitTo(60); 
     magnitude = limitedVector.magnitude(); 
     expect(magnitude).toEqual(50); 
    }); 

    it("Magnitude exceeding limit", function() { 
     limitedVector = vector.limitTo(30); 
     magnitude = limitedVector.magnitude(); 
     expect(magnitude).toEqual(30); 
    }); 
}); 

+0

「ベクトル」が何であるかわからないので、これらのテストを投稿するのは基本的に役に立たない。 – Oriol

+0

「問題があります」??? –

答えて

0

あなたのメソッドは含まれていませんでしたが、メソッドプロパティに数値を割り当てるのは間違っています。 this.normalise()は、インプレースであれば、おそらくあなたは、最初にあなたのベクトルをコピーし、

Vector.prototype.limitTo = function (pScalar) { 
    return this.normalise().multiply(Math.min(his.magnitude(), pScalar)); 
}; 

をしたいです。

関連する問題