Vec2
Class
Extends ValueType
Module: cc
Representation of 2D vectors and points.
Index
Properties
x
Number
y
Number
ONE
Vec2
return a Vec2 object with x = 1 and y = 1.ZERO
Vec2
return a Vec2 object with x = 0 and y = 0.UP
Vec2
return a Vec2 object with x = 0 and y = 1.RIGHT
Vec2
return a Vec2 object with x = 1 and y = 0.
Methods
constructor
Constructorclone
clone a Vec2 objectset
Sets vector with another's valueequals
Check whether two vector equalfuzzyEquals
Check whether two vector equal with some degree of variance.toString
Transform to string with vector informationslerp
Calculate linear interpolation result between this vector and another one with given ratioclampf
Clamp the vector between from float and to float.addSelf
Adds this vector.add
Adds two vectors, and returns the new result.subSelf
Subtracts one vector from this.sub
Subtracts one vector from this, and returns the new result.mulSelf
Multiplies this by a number.mul
Multiplies by a number, and returns the new result.scaleSelf
Multiplies two vectors.scale
Multiplies two vectors, and returns the new result.divSelf
Divides by a number.div
Divides by a number, and returns the new result.negSelf
Negates the components.neg
Negates the components, and returns the new result.dot
Dot productcross
Cross productmag
Returns the length of this vector.magSqr
Returns the squared length of this vector.normalizeSelf
Make the length of this vector to 1.normalize
Note that the current vector is unchanged and a new normalized vector is returned.angle
Get angle in radian between this and vector.signAngle
Get angle in radian between this and vector with direction.rotate
rotaterotateSelf
rotate selfproject
Calculates the projection of the current vector over the given vector.transformMat4
Transforms the vec2 with a mat4.
Details
Properties
x
meta | description |
---|---|
Type | Number |
Defined in | cocos2d/core/value-types/vec2.js:65 |
y
meta | description |
---|---|
Type | Number |
Defined in | cocos2d/core/value-types/vec2.js:68 |
ONE
return a Vec2 object with x = 1 and y = 1.
meta | description |
---|---|
Type | Vec2 |
Defined in | cocos2d/core/value-types/vec2.js:608 |
ZERO
return a Vec2 object with x = 0 and y = 0.
meta | description |
---|---|
Type | Vec2 |
Defined in | cocos2d/core/value-types/vec2.js:619 |
UP
return a Vec2 object with x = 0 and y = 1.
meta | description |
---|---|
Type | Vec2 |
Defined in | cocos2d/core/value-types/vec2.js:630 |
RIGHT
return a Vec2 object with x = 1 and y = 0.
meta | description |
---|---|
Type | Vec2 |
Defined in | cocos2d/core/value-types/vec2.js:641 |
Methods
constructor
Constructor see Cc/vec2:method or cc.p
meta | description |
---|---|
Defined in | cocos2d/core/value-types/vec2.js:44 |
Parameters
clone
clone a Vec2 object
meta | description |
---|---|
Returns | Vec2 |
Defined in | cocos2d/core/value-types/vec2.js:75 |
set
Sets vector with another's value
meta | description |
---|---|
Returns | Vec2 |
Defined in | cocos2d/core/value-types/vec2.js:85 |
Parameters
newValue
Vec2 !#en new value to set. !#zh 要设置的新值
equals
Check whether two vector equal
meta | description |
---|---|
Returns | Boolean |
Defined in | cocos2d/core/value-types/vec2.js:99 |
Parameters
other
Vec2
fuzzyEquals
Check whether two vector equal with some degree of variance.
meta | description |
---|---|
Returns | Boolean |
Defined in | cocos2d/core/value-types/vec2.js:110 |
Parameters
toString
Transform to string with vector informations
meta | description |
---|---|
Returns | string |
Defined in | cocos2d/core/value-types/vec2.js:128 |
lerp
Calculate linear interpolation result between this vector and another one with given ratio
meta | description |
---|---|
Returns | Vec2 |
Defined in | cocos2d/core/value-types/vec2.js:141 |
Parameters
to
Vec2ratio
number the interpolation coefficientout
Vec2 optional, the receiving vector, you can pass the same vec2 to save result to itself, if not provided, a new vec2 will be created
clampf
Clamp the vector between from float and to float.
meta | description |
---|---|
Returns | Vec2 |
Defined in | cocos2d/core/value-types/vec2.js:159 |
Parameters
Examples
var min_inclusive = cc.v2(0, 0);
var max_inclusive = cc.v2(20, 20);
var v1 = cc.v2(20, 20).clampf(min_inclusive, max_inclusive); // Vec2 {x: 20, y: 20};
var v2 = cc.v2(0, 0).clampf(min_inclusive, max_inclusive); // Vec2 {x: 0, y: 0};
var v3 = cc.v2(10, 10).clampf(min_inclusive, max_inclusive); // Vec2 {x: 10, y: 10};
addSelf
Adds this vector. If you want to save result to another vector, use add() instead.
meta | description |
---|---|
Returns | Vec2 |
Defined in | cocos2d/core/value-types/vec2.js:183 |
Parameters
vector
Vec2
Examples
var v = cc.v2(10, 10);
v.addSelf(cc.v2(5, 5));// return Vec2 {x: 15, y: 15};
add
Adds two vectors, and returns the new result.
meta | description |
---|---|
Returns | Vec2 |
Defined in | cocos2d/core/value-types/vec2.js:200 |
Parameters
vector
Vec2out
Vec2 optional, the receiving vector, you can pass the same vec2 to save result to itself, if not provided, a new vec2 will be created
Examples
var v = cc.v2(10, 10);
v.add(cc.v2(5, 5)); // return Vec2 {x: 15, y: 15};
var v1;
v.add(cc.v2(5, 5), v1); // return Vec2 {x: 15, y: 15};
subSelf
Subtracts one vector from this. If you want to save result to another vector, use sub() instead.
meta | description |
---|---|
Returns | Vec2 |
Defined in | cocos2d/core/value-types/vec2.js:220 |
Parameters
vector
Vec2
Examples
var v = cc.v2(10, 10);
v.subSelf(cc.v2(5, 5));// return Vec2 {x: 5, y: 5};
sub
Subtracts one vector from this, and returns the new result.
meta | description |
---|---|
Returns | Vec2 |
Defined in | cocos2d/core/value-types/vec2.js:237 |
Parameters
vector
Vec2out
Vec2 optional, the receiving vector, you can pass the same vec2 to save result to itself, if not provided, a new vec2 will be created
Examples
var v = cc.v2(10, 10);
v.sub(cc.v2(5, 5)); // return Vec2 {x: 5, y: 5};
var v1;
v.sub(cc.v2(5, 5), v1); // return Vec2 {x: 5, y: 5};
mulSelf
Multiplies this by a number. If you want to save result to another vector, use mul() instead.
meta | description |
---|---|
Returns | Vec2 |
Defined in | cocos2d/core/value-types/vec2.js:257 |
Parameters
num
number
Examples
var v = cc.v2(10, 10);
v.mulSelf(5);// return Vec2 {x: 50, y: 50};
mul
Multiplies by a number, and returns the new result.
meta | description |
---|---|
Returns | Vec2 |
Defined in | cocos2d/core/value-types/vec2.js:274 |
Parameters
num
numberout
Vec2 optional, the receiving vector, you can pass the same vec2 to save result to itself, if not provided, a new vec2 will be created
Examples
var v = cc.v2(10, 10);
v.mul(5); // return Vec2 {x: 50, y: 50};
var v1;
v.mul(5, v1); // return Vec2 {x: 50, y: 50};
scaleSelf
Multiplies two vectors.
meta | description |
---|---|
Returns | Vec2 |
Defined in | cocos2d/core/value-types/vec2.js:294 |
Parameters
vector
Vec2
Examples
var v = cc.v2(10, 10);
v.scaleSelf(cc.v2(5, 5));// return Vec2 {x: 50, y: 50};
scale
Multiplies two vectors, and returns the new result.
meta | description |
---|---|
Returns | Vec2 |
Defined in | cocos2d/core/value-types/vec2.js:311 |
Parameters
vector
Vec2out
Vec2 optional, the receiving vector, you can pass the same vec2 to save result to itself, if not provided, a new vec2 will be created
Examples
var v = cc.v2(10, 10);
v.scale(cc.v2(5, 5)); // return Vec2 {x: 50, y: 50};
var v1;
v.scale(cc.v2(5, 5), v1); // return Vec2 {x: 50, y: 50};
divSelf
Divides by a number. If you want to save result to another vector, use div() instead.
meta | description |
---|---|
Returns | Vec2 |
Defined in | cocos2d/core/value-types/vec2.js:331 |
Parameters
divisor
number
Examples
var v = cc.v2(10, 10);
v.divSelf(5); // return Vec2 {x: 2, y: 2};
div
Divides by a number, and returns the new result.
meta | description |
---|---|
Returns | Vec2 |
Defined in | cocos2d/core/value-types/vec2.js:348 |
Parameters
divisor
Vec2out
Vec2 optional, the receiving vector, you can pass the same vec2 to save result to itself, if not provided, a new vec2 will be created
Examples
var v = cc.v2(10, 10);
v.div(5); // return Vec2 {x: 2, y: 2};
var v1;
v.div(5, v1); // return Vec2 {x: 2, y: 2};
negSelf
Negates the components. If you want to save result to another vector, use neg() instead.
meta | description |
---|---|
Returns | Vec2 |
Defined in | cocos2d/core/value-types/vec2.js:368 |
Examples
var v = cc.v2(10, 10);
v.negSelf(); // return Vec2 {x: -10, y: -10};
neg
Negates the components, and returns the new result.
meta | description |
---|---|
Returns | Vec2 |
Defined in | cocos2d/core/value-types/vec2.js:384 |
Parameters
out
Vec2 optional, the receiving vector, you can pass the same vec2 to save result to itself, if not provided, a new vec2 will be created
Examples
var v = cc.v2(10, 10);
var v1;
v.neg(v1); // return Vec2 {x: -10, y: -10};
dot
Dot product
meta | description |
---|---|
Returns | number |
Defined in | cocos2d/core/value-types/vec2.js:402 |
Parameters
vector
Vec2
Examples
var v = cc.v2(10, 10);
v.dot(cc.v2(5, 5)); // return 100;
cross
Cross product
meta | description |
---|---|
Returns | number |
Defined in | cocos2d/core/value-types/vec2.js:416 |
Parameters
vector
Vec2
Examples
var v = cc.v2(10, 10);
v.cross(cc.v2(5, 5)); // return 0;
mag
Returns the length of this vector.
meta | description |
---|---|
Returns | number |
Defined in | cocos2d/core/value-types/vec2.js:430 |
Examples
var v = cc.v2(10, 10);
v.mag(); // return 14.142135623730951;
magSqr
Returns the squared length of this vector.
meta | description |
---|---|
Returns | number |
Defined in | cocos2d/core/value-types/vec2.js:443 |
Examples
var v = cc.v2(10, 10);
v.magSqr(); // return 200;
normalizeSelf
Make the length of this vector to 1.
meta | description |
---|---|
Returns | Vec2 |
Defined in | cocos2d/core/value-types/vec2.js:456 |
Examples
var v = cc.v2(10, 10);
v.normalizeSelf(); // return Vec2 {x: 0.7071067811865475, y: 0.7071067811865475};
normalize
Returns this vector with a magnitude of 1.
Note that the current vector is unchanged and a new normalized vector is returned. If you want to normalize the current vector, use normalizeSelf function.
meta | description |
---|---|
Returns | Vec2 |
Defined in | cocos2d/core/value-types/vec2.js:482 |
Parameters
out
Vec2 optional, the receiving vector, you can pass the same vec2 to save result to itself, if not provided, a new vec2 will be created
angle
Get angle in radian between this and vector.
meta | description |
---|---|
Returns | number |
Defined in | cocos2d/core/value-types/vec2.js:505 |
Parameters
vector
Vec2
signAngle
Get angle in radian between this and vector with direction.
meta | description |
---|---|
Returns | number |
Defined in | cocos2d/core/value-types/vec2.js:527 |
Parameters
vector
Vec2
rotate
rotate
meta | description |
---|---|
Returns | Vec2 |
Defined in | cocos2d/core/value-types/vec2.js:539 |
Parameters
radians
numberout
Vec2 optional, the receiving vector, you can pass the same vec2 to save result to itself, if not provided, a new vec2 will be created
rotateSelf
rotate self
meta | description |
---|---|
Returns | Vec2 |
Defined in | cocos2d/core/value-types/vec2.js:554 |
Parameters
radians
number
project
Calculates the projection of the current vector over the given vector.
meta | description |
---|---|
Returns | Vec2 |
Defined in | cocos2d/core/value-types/vec2.js:571 |
Parameters
vector
Vec2
Examples
var v1 = cc.v2(20, 20);
var v2 = cc.v2(5, 5);
v1.project(v2); // Vec2 {x: 20, y: 20};
transformMat4
Transforms the vec2 with a mat4. 3rd vector component is implicitly '0', 4th vector component is implicitly '1'
meta | description |
---|---|
Returns | Vec2 |
Defined in | cocos2d/core/value-types/vec2.js:586 |
Parameters
m
Mat4 matrix to transform withm00
Number Component in column 0, row 0 position (index 0)m01
Number Component in column 0, row 1 position (index 1)m02
Number Component in column 0, row 2 position (index 2)m03
Number Component in column 0, row 3 position (index 3)m10
Number Component in column 1, row 0 position (index 4)m11
Number Component in column 1, row 1 position (index 5)m12
Number Component in column 1, row 2 position (index 6)m13
Number Component in column 1, row 3 position (index 7)m20
Number Component in column 2, row 0 position (index 8)m21
Number Component in column 2, row 1 position (index 9)m22
Number Component in column 2, row 2 position (index 10)m23
Number Component in column 2, row 3 position (index 11)m30
Number Component in column 3, row 0 position (index 12)m31
Number Component in column 3, row 1 position (index 13)m32
Number Component in column 3, row 2 position (index 14)m33
Number Component in column 3, row 3 position (index 15)
out
Vec2 the receiving vector, you can pass the same vec2 to save result to itself, if not provided, a new vec2 will be created