@@ -461,43 +461,12 @@ declare module es {
461
461
*/
462
462
static divide ( value1 : Vector2 , value2 : Vector2 ) : Vector2 ;
463
463
static divideScaler ( value1 : Vector2 , value2 : number ) : Vector2 ;
464
- /**
465
- *
466
- * @param value1
467
- * @param value2
468
- */
469
- static multiply ( value1 : Vector2 , value2 : Vector2 ) : Vector2 ;
470
- /**
471
- *
472
- * @param value1
473
- * @param value2
474
- * @returns
475
- */
476
- static multiplyScaler ( value1 : Vector2 , value2 : number ) : Vector2 ;
477
- /**
478
- *
479
- * @param value1
480
- * @param value2
481
- */
482
- static subtract ( value1 : Vector2 , value2 : Vector2 ) : Vector2 ;
483
- /**
484
- * 创建一个新的Vector2
485
- * 它包含来自另一个向量的标准化值。
486
- * @param value
487
- */
488
- static normalize ( value : Vector2 ) : Vector2 ;
489
- /**
490
- * 返回两个向量的点积
491
- * @param value1
492
- * @param value2
493
- */
494
- static dot ( value1 : Vector2 , value2 : Vector2 ) : number ;
495
464
/**
496
465
* 返回两个向量之间距离的平方
497
466
* @param value1
498
467
* @param value2
499
468
*/
500
- static distanceSquared ( value1 : Vector2 , value2 : Vector2 ) : number ;
469
+ static sqrDistance ( value1 : Vector2 , value2 : Vector2 ) : number ;
501
470
/**
502
471
* 将指定的值限制在一个范围内
503
472
* @param value1
@@ -539,7 +508,7 @@ declare module es {
539
508
* @param value2
540
509
* @returns 两个向量之间的距离
541
510
*/
542
- static distance ( value1 : Vector2 , value2 : Vector2 ) : number ;
511
+ static distance ( vec1 : Vector2 , vec2 : Vector2 ) : number ;
543
512
/**
544
513
* 返回两个向量之间的角度,单位是度数
545
514
* @param from
@@ -568,6 +537,7 @@ declare module es {
568
537
*/
569
538
static smoothStep ( value1 : Vector2 , value2 : Vector2 , amount : number ) : Vector2 ;
570
539
setTo ( x : number , y : number ) : void ;
540
+ negate ( ) : Vector2 ;
571
541
/**
572
542
*
573
543
* @param value
@@ -598,18 +568,20 @@ declare module es {
598
568
*/
599
569
sub ( value : Vector2 ) : Vector2 ;
600
570
subEqual ( v : Vector2 ) : Vector2 ;
571
+ dot ( v : Vector2 ) : number ;
601
572
/**
602
573
*
603
574
* @param size
604
575
* @returns
605
576
*/
606
577
scale ( size : number ) : Vector2 ;
578
+ scaleEqual ( size : number ) : Vector2 ;
579
+ transform ( matrix : Matrix2D ) : Vector2 ;
580
+ normalize ( ) : Vector2 ;
607
581
/**
608
582
* 将这个Vector2变成一个方向相同的单位向量
609
583
*/
610
- normalize ( ) : this;
611
- /** 返回它的长度 */
612
- length ( ) : number ;
584
+ normalizeEqual ( ) : Vector2 ;
613
585
magnitude ( ) : number ;
614
586
distance ( v ?: Vector2 ) : number ;
615
587
/**
@@ -632,7 +604,7 @@ declare module es {
632
604
* @param other 要比较的对象
633
605
* @returns 如果实例相同true 否则false
634
606
*/
635
- equals ( other : Vector2 | object ) : boolean ;
607
+ equals ( other : Vector2 , tolerance ?: number ) : boolean ;
636
608
isValid ( ) : boolean ;
637
609
/**
638
610
* 创建一个新的Vector2,其中包含来自两个向量的最小值
@@ -1337,6 +1309,8 @@ declare module es {
1337
1309
}
1338
1310
declare module es {
1339
1311
abstract class Collider extends Component {
1312
+ static readonly lateSortOrder : number ;
1313
+ castSortOrder : number ;
1340
1314
/**
1341
1315
* 对撞机的基本形状
1342
1316
*/
@@ -2652,7 +2626,10 @@ declare module es {
2652
2626
* 在这个过程中,t被修改为在曲线段的范围内。
2653
2627
* @param t
2654
2628
*/
2655
- pointIndexAtTime ( t : Ref < number > ) : number ;
2629
+ pointIndexAtTime ( t : number ) : {
2630
+ time : number ;
2631
+ range : number ;
2632
+ } ;
2656
2633
/**
2657
2634
* 设置一个控制点,考虑到这是否是一个共享点,如果是,则适当调整
2658
2635
* @param index
@@ -3078,6 +3055,7 @@ declare module es {
3078
3055
* @returns
3079
3056
*/
3080
3057
static mapMinMax ( value : number , leftMin : number , leftMax : number , rightMin : number , rightMax : any ) : number ;
3058
+ static fromAngle ( angle : number ) : Vector2 ;
3081
3059
}
3082
3060
}
3083
3061
declare module es {
@@ -3139,6 +3117,8 @@ declare module es {
3139
3117
* 返回标识矩阵
3140
3118
*/
3141
3119
static readonly identity : Matrix2D ;
3120
+ setIdentity ( ) : Matrix2D ;
3121
+ setValues ( m11 : number , m12 : number , m21 : number , m22 : number , m31 : number , m32 : number ) : Matrix2D ;
3142
3122
/**
3143
3123
* 储存在该矩阵中的位置
3144
3124
*/
@@ -3155,35 +3135,25 @@ declare module es {
3155
3135
* 储存在这个矩阵中的缩放
3156
3136
*/
3157
3137
scale : Vector2 ;
3158
- /**
3159
- * 构建一个矩阵
3160
- * @param m11
3161
- * @param m12
3162
- * @param m21
3163
- * @param m22
3164
- * @param m31
3165
- * @param m32
3166
- */
3167
- constructor ( m11 : number , m12 : number , m21 : number , m22 : number , m31 : number , m32 : number ) ;
3168
3138
/**
3169
3139
* 创建一个新的围绕Z轴的旋转矩阵2D
3170
3140
* @param radians
3171
3141
*/
3172
- static createRotation ( radians : number ) : Matrix2D ;
3142
+ static createRotation ( radians : number , result : Matrix2D ) : void ;
3173
3143
static createRotationOut ( radians : number , result : Matrix2D ) : void ;
3174
3144
/**
3175
3145
* 创建一个新的缩放矩阵2D
3176
3146
* @param xScale
3177
3147
* @param yScale
3178
3148
*/
3179
- static createScale ( xScale : number , yScale : number ) : Matrix2D ;
3149
+ static createScale ( xScale : number , yScale : number , result : Matrix2D ) : void ;
3180
3150
static createScaleOut ( xScale : number , yScale : number , result : Matrix2D ) : void ;
3181
3151
/**
3182
3152
* 创建一个新的平移矩阵2D
3183
3153
* @param xPosition
3184
3154
* @param yPosition
3185
3155
*/
3186
- static createTranslation ( xPosition : number , yPosition : number ) : Matrix2D ;
3156
+ static createTranslation ( xPosition : number , yPosition : number , result : Matrix2D ) : Matrix2D ;
3187
3157
static createTranslationOut ( position : Vector2 , result : Matrix2D ) : void ;
3188
3158
static invert ( matrix : Matrix2D ) : Matrix2D ;
3189
3159
/**
@@ -3194,7 +3164,7 @@ declare module es {
3194
3164
substract ( matrix : Matrix2D ) : Matrix2D ;
3195
3165
divide ( matrix : Matrix2D ) : Matrix2D ;
3196
3166
multiply ( matrix : Matrix2D ) : Matrix2D ;
3197
- static multiply ( matrix1 : Matrix2D , matrix2 : Matrix2D , result : Matrix2D ) : Matrix2D ;
3167
+ static multiply ( matrix1 : Matrix2D , matrix2 : Matrix2D , result : Matrix2D ) : void ;
3198
3168
determinant ( ) : number ;
3199
3169
/**
3200
3170
* 创建一个新的Matrix2D,包含指定矩阵中的线性插值。
@@ -3353,7 +3323,10 @@ declare module es {
3353
3323
* @param value 另一个用于测试的矩形
3354
3324
*/
3355
3325
intersects ( value : Rectangle ) : boolean ;
3356
- rayIntersects ( ray : Ray2D , distance : Ref < number > ) : boolean ;
3326
+ rayIntersects ( ray : Ray2D ) : {
3327
+ intersected : boolean ;
3328
+ distance : number ;
3329
+ } ;
3357
3330
/**
3358
3331
* 获取所提供的矩形是否在此矩形的边界内
3359
3332
* @param value
@@ -3558,9 +3531,8 @@ declare module es {
3558
3531
*/
3559
3532
centroid : Vector2 ;
3560
3533
constructor ( collider ?: Collider , fraction ?: number , distance ?: number , point ?: Vector2 , normal ?: Vector2 ) ;
3561
- setValues ( collider : Collider , fraction : number , distance : number , point : Vector2 ) : void ;
3562
- setValuesNonCollider ( fraction : number , distance : number , point : Vector2 , normal : Vector2 ) : void ;
3563
3534
setAllValues ( collider : Collider , fraction : number , distance : number , point : Vector2 , normal : Vector2 ) : void ;
3535
+ setValues ( fraction : number , distance : number , point : Vector2 , normal : Vector2 ) : void ;
3564
3536
reset ( ) : void ;
3565
3537
clone ( ) : RaycastHit ;
3566
3538
toString ( ) : string ;
@@ -3662,17 +3634,15 @@ declare module es {
3662
3634
* @param end
3663
3635
* @param layerMask
3664
3636
*/
3665
- static linecast ( start : Vector2 , end : Vector2 , layerMask ?: number ) : RaycastHit ;
3666
- static linecastIgnoreCollider ( start : Vector2 , end : Vector2 , layerMask ?: number , ignoredColliders ?: Set < Collider > ) : RaycastHit ;
3637
+ static linecast ( start : Vector2 , end : Vector2 , layerMask ?: number , ignoredColliders ?: Set < Collider > ) : RaycastHit ;
3667
3638
/**
3668
3639
* 通过空间散列强制执行一行,并用该行命中的任何碰撞器填充hits数组
3669
3640
* @param start
3670
3641
* @param end
3671
3642
* @param hits
3672
3643
* @param layerMask
3673
3644
*/
3674
- static linecastAll ( start : Vector2 , end : Vector2 , hits : RaycastHit [ ] , layerMask ?: number ) : number ;
3675
- static linecastAllIgnoreCollider ( start : Vector2 , end : Vector2 , hits : RaycastHit [ ] , layerMask ?: number , ignoredColliders ?: Set < Collider > ) : number ;
3645
+ static linecastAll ( start : Vector2 , end : Vector2 , hits : RaycastHit [ ] , layerMask ?: number , ignoredColliders ?: Set < Collider > ) : number ;
3676
3646
/**
3677
3647
* 检查是否有对撞机落在一个矩形区域中
3678
3648
* @param rect
@@ -3693,10 +3663,13 @@ declare module es {
3693
3663
* 不是真正的射线(射线只有开始和方向),作为一条线和射线。
3694
3664
*/
3695
3665
class Ray2D {
3696
- start : Vector2 ;
3697
- end : Vector2 ;
3698
- direction : Vector2 ;
3699
- constructor ( position : Vector2 , end : Vector2 ) ;
3666
+ readonly start : Vector2 ;
3667
+ readonly direction : Vector2 ;
3668
+ readonly end : Vector2 ;
3669
+ constructor ( pos : Vector2 , end : Vector2 ) ;
3670
+ private _start ;
3671
+ private _direction ;
3672
+ private _end ;
3700
3673
}
3701
3674
}
3702
3675
declare module es {
@@ -3762,8 +3735,7 @@ declare module es {
3762
3735
* @param hits
3763
3736
* @param layerMask
3764
3737
*/
3765
- linecast ( start : Vector2 , end : Vector2 , hits : RaycastHit [ ] , layerMask : number ) : number ;
3766
- linecastIgnoreCollider ( start : Vector2 , end : Vector2 , hits : RaycastHit [ ] , layerMask : number , ignoredColliders : Set < Collider > ) : number ;
3738
+ linecast ( start : Vector2 , end : Vector2 , hits : RaycastHit [ ] , layerMask : number , ignoredColliders : Set < Collider > ) : number ;
3767
3739
/**
3768
3740
* 获取所有在指定矩形范围内的碰撞器
3769
3741
* @param rect
@@ -3819,8 +3791,7 @@ declare module es {
3819
3791
_ray : Ray2D ;
3820
3792
_layerMask : number ;
3821
3793
private _ignoredColliders ;
3822
- start ( ray : Ray2D , hits : RaycastHit [ ] , layerMask : number ) : void ;
3823
- startIgnoreCollider ( ray : Ray2D , hits : RaycastHit [ ] , layerMask : number , ignoredColliders : Set < Collider > ) : void ;
3794
+ start ( ray : Ray2D , hits : RaycastHit [ ] , layerMask : number , ignoredColliders : Set < Collider > ) : void ;
3824
3795
/**
3825
3796
* 如果hits数组被填充,返回true。单元格不能为空!
3826
3797
* @param cellX
@@ -3935,7 +3906,11 @@ declare module es {
3935
3906
* @param distanceSquared
3936
3907
* @param edgeNormal
3937
3908
*/
3938
- static getClosestPointOnPolygonToPoint ( points : Vector2 [ ] , point : Vector2 , distanceSquared : Ref < number > , edgeNormal : Vector2 ) : Vector2 ;
3909
+ static getClosestPointOnPolygonToPoint ( points : Vector2 [ ] , point : Vector2 ) : {
3910
+ distanceSquared : number ;
3911
+ edgeNormal : Vector2 ;
3912
+ closestPoint : Vector2 ;
3913
+ } ;
3939
3914
/**
3940
3915
* 旋转原始点并复制旋转的值到旋转的点
3941
3916
* @param radians
@@ -3991,6 +3966,7 @@ declare module es {
3991
3966
overlaps ( other : Shape ) : any ;
3992
3967
collidesWithShape ( other : Shape , result : CollisionResult ) : boolean ;
3993
3968
collidesWithLine ( start : Vector2 , end : Vector2 , hit : RaycastHit ) : boolean ;
3969
+ getPointAlongEdge ( angle : number ) : Vector2 ;
3994
3970
/**
3995
3971
* 获取所提供的点是否在此范围内
3996
3972
* @param point
@@ -4017,18 +3993,20 @@ declare module es {
4017
3993
* 不是所有冲突类型都使用!在依赖这个字段之前,请检查ShapeCollisions切割类!
4018
3994
*/
4019
3995
point : Vector2 ;
3996
+ reset ( ) : void ;
3997
+ cloneTo ( cr : CollisionResult ) : void ;
4020
3998
/**
4021
3999
* 改变最小平移向量,如果没有相同方向上的运动,它将移除平移的x分量。
4022
4000
* @param deltaMovement
4023
4001
*/
4024
- removeHorizontal ( deltaMovement : Vector2 ) : void ;
4025
- invertResult ( ) : this ;
4002
+ removeHorizontalTranslation ( deltaMovement : Vector2 ) : void ;
4003
+ invertResult ( ) : void ;
4026
4004
toString ( ) : string ;
4027
4005
}
4028
4006
}
4029
4007
declare module es {
4030
4008
class RealtimeCollisions {
4031
- static intersectMovingCircleBox ( s : Circle , b : Box , movement : Vector2 , time : Ref < number > ) : boolean ;
4009
+ static intersectMovingCircleBox ( s : Circle , b : Box , movement : Vector2 , time : number ) : boolean ;
4032
4010
/**
4033
4011
* 支持函数,返回索引为n的矩形vert
4034
4012
* @param b
@@ -4060,6 +4038,7 @@ declare module es {
4060
4038
}
4061
4039
declare module es {
4062
4040
class ShapeCollisionsCircle {
4041
+ static circleToCircleCast ( first : Circle , second : Circle , deltaMovement : Vector2 , hit : RaycastHit ) : boolean ;
4063
4042
static circleToCircle ( first : Circle , second : Circle , result ?: CollisionResult ) : boolean ;
4064
4043
/**
4065
4044
* 适用于中心在框内的圆,也适用于与框外中心重合的圆。
0 commit comments