Vec2 类型
继承于 ValueType
表示 2D 向量和坐标
索引
属性(properties)
ONEVec2新 Vec2 对象。ZEROVec2返回 x = 0 和 y = 0 的 Vec2 对象。ZERO_RVec2返回一个 x = 0 和 y = 0 的 Vec2 只读对象。UPVec2返回 x = 0 和 y = 1 的 Vec2 对象。UP_RVec2返回 x = 0 和 y = 1 的 Vec2 只读对象。RIGHTVec2返回 x = 1 和 y = 0 的 Vec2 只读对象。RIGHT_RVec2返回 x = 1 和 y = 0 的 Vec2 对象。xNumberyNumber
方法
mag返回该向量的长度。magSqr返回该向量的长度平方。subSelf向量减法。sub向量减法,并返回新结果。mulSelf缩放当前向量。mul缩放向量,并返回新结果。divSelf向量除法。div向量除法,并返回新的结果。scaleSelf分量相乘。scale分量相乘,并返回新的结果。negSelf向量取反。neg返回取反后的新向量。clone获得指定向量的拷贝copy复制指定向量的值set设置向量值add逐元素向量加法subtract逐元素向量减法multiply逐元素向量乘法divide逐元素向量除法ceil逐元素向量向上取整floor逐元素向量向下取整min逐元素向量最小值max逐元素向量最大值round逐元素向量四舍五入取整multiplyScalar向量标量乘法scaleAndAdd逐元素向量乘加: A + B * scaledistance求两向量的欧氏距离squaredDistance求两向量的欧氏距离平方len求向量长度lengthSqr求向量长度平方negate逐元素向量取负inverse逐元素向量取倒数,接近 0 时返回 InfinityinverseSafe逐元素向量取倒数,接近 0 时返回 0normalize归一化向量dot向量点积(数量积)cross向量叉积(向量积),注意二维向量的叉积为与 Z 轴平行的三维向量lerp逐元素向量线性插值: A + t * (B - A)random生成一个在单位圆上均匀分布的随机向量transformMat3向量与三维矩阵乘法,默认向量第三位为 1。transformMat4向量与四维矩阵乘法,默认向量第三位为 0,第四位为 1。strictEquals向量等价判断equals排除浮点数误差的向量近似等价判断angle排除浮点数误差的向量近似等价判断toArray向量转数组fromArray数组转向量constructor构造函数,可查看 Cc/vec2:method 或者 Cc/p:methodclone克隆一个 Vec2 对象set设置向量值。equals当前的向量是否与指定的向量相等。fuzzyEquals近似判断两个点是否相等。toString转换为方便阅读的字符串。lerp线性插值。clampf返回指定限制区域后的向量。add向量加法。addSelf向量加法。subtract向量减法。multiplyScalar缩放当前向量。multiply分量相乘。divide向量除法。negate向量取反。dot当前向量与指定向量进行点乘。cross当前向量与指定向量进行叉乘。len返回该向量的长度。lengthSqr返回该向量的长度平方。normalizeSelf向量归一化,让这个向量的长度为 1。normalize返回归一化后的向量。angle夹角的弧度。signAngle带方向的夹角的弧度。rotate返回旋转给定弧度后的新向量。rotateSelf按指定弧度旋转向量。project返回当前向量在指定 vector 向量上的投影向量。transformMat4Transforms the vec2 with a mat4. 3rd vector component is implicitly '0', 4th vector component is implicitly '1'maxAxisReturns the maximum value in x, y.
Details
属性(properties)
ONE
新 Vec2 对象。
| meta | description |
|---|---|
| 类型 | Vec2 |
| 定义于 | cocos2d/core/value-types/vec2.ts:213 |
ZERO
返回 x = 0 和 y = 0 的 Vec2 对象。
| meta | description |
|---|---|
| 类型 | Vec2 |
| 定义于 | cocos2d/core/value-types/vec2.ts:223 |
ZERO_R
返回一个 x = 0 和 y = 0 的 Vec2 只读对象。
| meta | description |
|---|---|
| 类型 | Vec2 |
| 定义于 | cocos2d/core/value-types/vec2.ts:230 |
UP
返回 x = 0 和 y = 1 的 Vec2 对象。
| meta | description |
|---|---|
| 类型 | Vec2 |
| 定义于 | cocos2d/core/value-types/vec2.ts:239 |
UP_R
返回 x = 0 和 y = 1 的 Vec2 只读对象。
| meta | description |
|---|---|
| 类型 | Vec2 |
| 定义于 | cocos2d/core/value-types/vec2.ts:246 |
RIGHT
返回 x = 1 和 y = 0 的 Vec2 只读对象。
| meta | description |
|---|---|
| 类型 | Vec2 |
| 定义于 | cocos2d/core/value-types/vec2.ts:255 |
RIGHT_R
返回 x = 1 和 y = 0 的 Vec2 对象。
| meta | description |
|---|---|
| 类型 | Vec2 |
| 定义于 | cocos2d/core/value-types/vec2.ts:262 |
x
| meta | description |
|---|---|
| 类型 | Number |
| 定义于 | cocos2d/core/value-types/vec2.ts:734 |
y
| meta | description |
|---|---|
| 类型 | Number |
| 定义于 | cocos2d/core/value-types/vec2.ts:739 |
方法
mag
返回该向量的长度。
| meta | description |
|---|---|
| 返回 | number |
| 定义于 | cocos2d/core/value-types/vec2.ts:55 |
示例
var v = cc.v2(10, 10);
v.mag(); // return 14.142135623730951;
magSqr
返回该向量的长度平方。
| meta | description |
|---|---|
| 返回 | number |
| 定义于 | cocos2d/core/value-types/vec2.ts:65 |
示例
var v = cc.v2(10, 10);
v.magSqr(); // return 200;
subSelf
向量减法。如果你想保存结果到另一个向量,可使用 sub() 代替。
| meta | description |
|---|---|
| 返回 | Vec2 |
| 定义于 | cocos2d/core/value-types/vec2.ts:75 |
参数列表
vectorVec2
示例
var v = cc.v2(10, 10);
v.subSelf(cc.v2(5, 5));// return Vec2 {x: 5, y: 5};
sub
向量减法,并返回新结果。
| meta | description |
|---|---|
| 返回 | Vec2 |
| 定义于 | cocos2d/core/value-types/vec2.ts:87 |
参数列表
vectorVec2outVec2 optional, the receiving vector, you can pass the same vec2 to save result to itself, if not provided, a new vec2 will be created
示例
var v = cc.v2(10, 10);
v.sub(cc.v2(5, 5)); // return Vec2 {x: 5, y: 5};
var v1 = new Vec2;
v.sub(cc.v2(5, 5), v1); // return Vec2 {x: 5, y: 5};
mulSelf
缩放当前向量。如果你想结果保存到另一个向量,可使用 mul() 代替。
| meta | description |
|---|---|
| 返回 | Vec2 |
| 定义于 | cocos2d/core/value-types/vec2.ts:103 |
参数列表
numnumber
示例
var v = cc.v2(10, 10);
v.mulSelf(5);// return Vec2 {x: 50, y: 50};
mul
缩放向量,并返回新结果。
| meta | description |
|---|---|
| 返回 | Vec2 |
| 定义于 | cocos2d/core/value-types/vec2.ts:115 |
参数列表
numnumberoutVec2 optional, the receiving vector, you can pass the same vec2 to save result to itself, if not provided, a new vec2 will be created
示例
var v = cc.v2(10, 10);
v.mul(5); // return Vec2 {x: 50, y: 50};
var v1 = new Vec2;
v.mul(5, v1); // return Vec2 {x: 50, y: 50};
divSelf
向量除法。如果你想结果保存到另一个向量,可使用 div() 代替。
| meta | description |
|---|---|
| 返回 | Vec2 |
| 定义于 | cocos2d/core/value-types/vec2.ts:131 |
参数列表
numnumber
示例
var v = cc.v2(10, 10);
v.divSelf(5); // return Vec2 {x: 2, y: 2};
div
向量除法,并返回新的结果。
| meta | description |
|---|---|
| 返回 | Vec2 |
| 定义于 | cocos2d/core/value-types/vec2.ts:143 |
参数列表
numnumberoutVec2 optional, the receiving vector, you can pass the same vec2 to save result to itself, if not provided, a new vec2 will be created
示例
var v = cc.v2(10, 10);
v.div(5); // return Vec2 {x: 2, y: 2};
var v1 = new Vec2;
v.div(5, v1); // return Vec2 {x: 2, y: 2};
scaleSelf
分量相乘。
| meta | description |
|---|---|
| 返回 | Vec2 |
| 定义于 | cocos2d/core/value-types/vec2.ts:159 |
参数列表
vectorVec2
示例
var v = cc.v2(10, 10);
v.scaleSelf(cc.v2(5, 5));// return Vec2 {x: 50, y: 50};
scale
分量相乘,并返回新的结果。
| meta | description |
|---|---|
| 返回 | Vec2 |
| 定义于 | cocos2d/core/value-types/vec2.ts:171 |
参数列表
vectorVec2outVec2 optional, the receiving vector, you can pass the same vec2 to save result to itself, if not provided, a new vec2 will be created
示例
var v = cc.v2(10, 10);
v.scale(cc.v2(5, 5)); // return Vec2 {x: 50, y: 50};
var v1 = new Vec2;
v.scale(cc.v2(5, 5), v1); // return Vec2 {x: 50, y: 50};
negSelf
向量取反。如果你想结果保存到另一个向量,可使用 neg() 代替。
| meta | description |
|---|---|
| 返回 | Vec2 |
| 定义于 | cocos2d/core/value-types/vec2.ts:187 |
示例
var v = cc.v2(10, 10);
v.negSelf(); // return Vec2 {x: -10, y: -10};
neg
返回取反后的新向量。
| meta | description |
|---|---|
| 返回 | Vec2 |
| 定义于 | cocos2d/core/value-types/vec2.ts:198 |
参数列表
outVec2 optional, the receiving vector, you can pass the same vec2 to save result to itself, if not provided, a new vec2 will be created
示例
var v = cc.v2(10, 10);
var v1 = new Vec2;
v.neg(v1); // return Vec2 {x: -10, y: -10};
clone
获得指定向量的拷贝
| meta | description |
|---|---|
| 定义于 | cocos2d/core/value-types/vec2.ts:271 |
copy
复制指定向量的值
| meta | description |
|---|---|
| 定义于 | cocos2d/core/value-types/vec2.ts:282 |
set
设置向量值
| meta | description |
|---|---|
| 定义于 | cocos2d/core/value-types/vec2.ts:295 |
add
逐元素向量加法
| meta | description |
|---|---|
| 定义于 | cocos2d/core/value-types/vec2.ts:308 |
subtract
逐元素向量减法
| meta | description |
|---|---|
| 定义于 | cocos2d/core/value-types/vec2.ts:321 |
multiply
逐元素向量乘法
| meta | description |
|---|---|
| 定义于 | cocos2d/core/value-types/vec2.ts:334 |
divide
逐元素向量除法
| meta | description |
|---|---|
| 定义于 | cocos2d/core/value-types/vec2.ts:347 |
ceil
逐元素向量向上取整
| meta | description |
|---|---|
| 定义于 | cocos2d/core/value-types/vec2.ts:360 |
floor
逐元素向量向下取整
| meta | description |
|---|---|
| 定义于 | cocos2d/core/value-types/vec2.ts:373 |
min
逐元素向量最小值
| meta | description |
|---|---|
| 定义于 | cocos2d/core/value-types/vec2.ts:386 |
max
逐元素向量最大值
| meta | description |
|---|---|
| 定义于 | cocos2d/core/value-types/vec2.ts:400 |
round
逐元素向量四舍五入取整
| meta | description |
|---|---|
| 定义于 | cocos2d/core/value-types/vec2.ts:413 |
multiplyScalar
向量标量乘法
| meta | description |
|---|---|
| 定义于 | cocos2d/core/value-types/vec2.ts:426 |
scaleAndAdd
逐元素向量乘加: A + B * scale
| meta | description |
|---|---|
| 定义于 | cocos2d/core/value-types/vec2.ts:439 |
distance
求两向量的欧氏距离
| meta | description |
|---|---|
| 定义于 | cocos2d/core/value-types/vec2.ts:452 |
squaredDistance
求两向量的欧氏距离平方
| meta | description |
|---|---|
| 定义于 | cocos2d/core/value-types/vec2.ts:465 |
len
求向量长度
| meta | description |
|---|---|
| 定义于 | cocos2d/core/value-types/vec2.ts:478 |
lengthSqr
求向量长度平方
| meta | description |
|---|---|
| 定义于 | cocos2d/core/value-types/vec2.ts:491 |
negate
逐元素向量取负
| meta | description |
|---|---|
| 定义于 | cocos2d/core/value-types/vec2.ts:504 |
inverse
逐元素向量取倒数,接近 0 时返回 Infinity
| meta | description |
|---|---|
| 定义于 | cocos2d/core/value-types/vec2.ts:517 |
inverseSafe
逐元素向量取倒数,接近 0 时返回 0
| meta | description |
|---|---|
| 定义于 | cocos2d/core/value-types/vec2.ts:530 |
normalize
归一化向量
| meta | description |
|---|---|
| 定义于 | cocos2d/core/value-types/vec2.ts:556 |
dot
向量点积(数量积)
| meta | description |
|---|---|
| 定义于 | cocos2d/core/value-types/vec2.ts:575 |
cross
向量叉积(向量积),注意二维向量的叉积为与 Z 轴平行的三维向量
| meta | description |
|---|---|
| 定义于 | cocos2d/core/value-types/vec2.ts:586 |
lerp
逐元素向量线性插值: A + t * (B - A)
| meta | description |
|---|---|
| 定义于 | cocos2d/core/value-types/vec2.ts:599 |
random
生成一个在单位圆上均匀分布的随机向量
| meta | description |
|---|---|
| 定义于 | cocos2d/core/value-types/vec2.ts:614 |
transformMat3
向量与三维矩阵乘法,默认向量第三位为 1。
| meta | description |
|---|---|
| 定义于 | cocos2d/core/value-types/vec2.ts:629 |
transformMat4
向量与四维矩阵乘法,默认向量第三位为 0,第四位为 1。
| meta | description |
|---|---|
| 定义于 | cocos2d/core/value-types/vec2.ts:645 |
strictEquals
向量等价判断
| meta | description |
|---|---|
| 定义于 | cocos2d/core/value-types/vec2.ts:661 |
equals
排除浮点数误差的向量近似等价判断
| meta | description |
|---|---|
| 定义于 | cocos2d/core/value-types/vec2.ts:672 |
angle
排除浮点数误差的向量近似等价判断
| meta | description |
|---|---|
| 定义于 | cocos2d/core/value-types/vec2.ts:688 |
toArray
向量转数组
| meta | description |
|---|---|
| 定义于 | cocos2d/core/value-types/vec2.ts:708 |
fromArray
数组转向量
| meta | description |
|---|---|
| 定义于 | cocos2d/core/value-types/vec2.ts:721 |
constructor
构造函数,可查看 Cc/vec2:method 或者 Cc/p:method
| meta | description |
|---|---|
| 定义于 | cocos2d/core/value-types/vec2.ts:747 |
参数列表
clone
克隆一个 Vec2 对象
| meta | description |
|---|---|
| 返回 | Vec2 |
| 定义于 | cocos2d/core/value-types/vec2.ts:769 |
set
设置向量值。
| meta | description |
|---|---|
| 返回 | Vec2 |
| 定义于 | cocos2d/core/value-types/vec2.ts:779 |
参数列表
newValueVec2 !#en new value to set. !#zh 要设置的新值
equals
当前的向量是否与指定的向量相等。
| meta | description |
|---|---|
| 返回 | Boolean |
| 定义于 | cocos2d/core/value-types/vec2.ts:793 |
参数列表
otherVec2
fuzzyEquals
近似判断两个点是否相等。
判断 2 个向量是否在指定数值的范围之内,如果在则返回 true,反之则返回 false。
| meta | description |
|---|---|
| 返回 | Boolean |
| 定义于 | cocos2d/core/value-types/vec2.ts:804 |
参数列表
toString
转换为方便阅读的字符串。
| meta | description |
|---|---|
| 返回 | string |
| 定义于 | cocos2d/core/value-types/vec2.ts:822 |
lerp
线性插值。
| meta | description |
|---|---|
| 返回 | Vec2 |
| 定义于 | cocos2d/core/value-types/vec2.ts:835 |
参数列表
toVec2ratioNumber the interpolation coefficientoutVec2 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
返回指定限制区域后的向量。
向量大于 max_inclusive 则返回 max_inclusive。
向量小于 min_inclusive 则返回 min_inclusive。
否则返回自身。
| meta | description |
|---|---|
| 返回 | Vec2 |
| 定义于 | cocos2d/core/value-types/vec2.ts:853 |
参数列表
示例
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};
add
向量加法。
| meta | description |
|---|---|
| 返回 | Vec2 |
| 定义于 | cocos2d/core/value-types/vec2.ts:877 |
参数列表
示例
var v = cc.v2(10, 10);
v.add(cc.v2(5, 5));// return Vec2 {x: 15, y: 15};
addSelf
向量加法。如果你想保存结果到另一个向量,使用 add() 代替。
| meta | description |
|---|---|
| 返回 | Vec2 |
| 定义于 | cocos2d/core/value-types/vec2.ts:896 |
参数列表
vectorVec2
subtract
向量减法。
| meta | description |
|---|---|
| 返回 | Vec2 |
| 定义于 | cocos2d/core/value-types/vec2.ts:910 |
参数列表
vectorVec2
示例
var v = cc.v2(10, 10);
v.subSelf(cc.v2(5, 5));// return Vec2 {x: 5, y: 5};
multiplyScalar
缩放当前向量。
| meta | description |
|---|---|
| 返回 | Vec2 |
| 定义于 | cocos2d/core/value-types/vec2.ts:927 |
参数列表
numnumber
示例
var v = cc.v2(10, 10);
v.multiply(5);// return Vec2 {x: 50, y: 50};
multiply
分量相乘。
| meta | description |
|---|---|
| 返回 | Vec2 |
| 定义于 | cocos2d/core/value-types/vec2.ts:944 |
参数列表
vectorVec2
示例
var v = cc.v2(10, 10);
v.multiply(cc.v2(5, 5));// return Vec2 {x: 50, y: 50};
divide
向量除法。
| meta | description |
|---|---|
| 返回 | Vec2 |
| 定义于 | cocos2d/core/value-types/vec2.ts:961 |
参数列表
numnumber
示例
var v = cc.v2(10, 10);
v.divide(5); // return Vec2 {x: 2, y: 2};
negate
向量取反。
| meta | description |
|---|---|
| 返回 | Vec2 |
| 定义于 | cocos2d/core/value-types/vec2.ts:978 |
示例
var v = cc.v2(10, 10);
v.negate(); // return Vec2 {x: -10, y: -10};
dot
当前向量与指定向量进行点乘。
| meta | description |
|---|---|
| 返回 | number |
| 定义于 | cocos2d/core/value-types/vec2.ts:994 |
参数列表
vectorVec2
示例
var v = cc.v2(10, 10);
v.dot(cc.v2(5, 5)); // return 100;
cross
当前向量与指定向量进行叉乘。
| meta | description |
|---|---|
| 返回 | number |
| 定义于 | cocos2d/core/value-types/vec2.ts:1008 |
参数列表
vectorVec2
示例
var v = cc.v2(10, 10);
v.cross(cc.v2(5, 5)); // return 0;
len
返回该向量的长度。
| meta | description |
|---|---|
| 返回 | number |
| 定义于 | cocos2d/core/value-types/vec2.ts:1022 |
示例
var v = cc.v2(10, 10);
v.len(); // return 14.142135623730951;
lengthSqr
返回该向量的长度平方。
| meta | description |
|---|---|
| 返回 | number |
| 定义于 | cocos2d/core/value-types/vec2.ts:1035 |
示例
var v = cc.v2(10, 10);
v.lengthSqr(); // return 200;
normalizeSelf
向量归一化,让这个向量的长度为 1。
| meta | description |
|---|---|
| 返回 | Vec2 |
| 定义于 | cocos2d/core/value-types/vec2.ts:1048 |
示例
var v = cc.v2(10, 10);
v.normalizeSelf(); // return Vec2 {x: 0.7071067811865475, y: 0.7071067811865475};
normalize
返回归一化后的向量。
注意,当前向量不变,并返回一个新的归一化向量。如果你想来归一化当前向量,可使用 normalizeSelf 函数。
| meta | description |
|---|---|
| 返回 | Vec2 |
| 定义于 | cocos2d/core/value-types/vec2.ts:1074 |
参数列表
outVec2 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
夹角的弧度。
| meta | description |
|---|---|
| 返回 | number |
| 定义于 | cocos2d/core/value-types/vec2.ts:1097 |
参数列表
vectorVec2
signAngle
带方向的夹角的弧度。
| meta | description |
|---|---|
| 返回 | number |
| 定义于 | cocos2d/core/value-types/vec2.ts:1119 |
参数列表
vectorVec2
rotate
返回旋转给定弧度后的新向量。
| meta | description |
|---|---|
| 返回 | Vec2 |
| 定义于 | cocos2d/core/value-types/vec2.ts:1131 |
参数列表
radiansnumberoutVec2 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
按指定弧度旋转向量。
| meta | description |
|---|---|
| 返回 | Vec2 |
| 定义于 | cocos2d/core/value-types/vec2.ts:1146 |
参数列表
radiansnumber
project
返回当前向量在指定 vector 向量上的投影向量。
| meta | description |
|---|---|
| 返回 | Vec2 |
| 定义于 | cocos2d/core/value-types/vec2.ts:1163 |
参数列表
vectorVec2
示例
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 |
|---|---|
| 返回 | Vec2 |
| 定义于 | cocos2d/core/value-types/vec2.ts:1178 |
参数列表
mMat4 matrix to transform withoutVec2 the receiving vector, you can pass the same vec2 to save result to itself, if not provided, a new vec2 will be created
maxAxis
Returns the maximum value in x, y.
| meta | description |
|---|---|
| 返回 | number |
| 定义于 | cocos2d/core/value-types/vec2.ts:1191 |