@@ -3344,27 +3344,31 @@ declare module es {
33443344declare module es {
33453345 class MatrixHelper {
33463346 /**
3347- * 创建一个新的Matrix2D,其中包含两个矩阵的和
3348- * @param matrix1
3349- * @param matrix2
3347+ * 该静态方法用于计算两个 Matrix2D 对象的和。
3348+ * @param {Matrix2D } matrix1 - 加数矩阵。
3349+ * @param {Matrix2D } matrix2 - 加数矩阵。
3350+ * @returns {Matrix2D } - 计算结果的 Matrix2D 对象。
33503351 */
33513352 static add ( matrix1 : Matrix2D , matrix2 : Matrix2D ) : Matrix2D ;
33523353 /**
3353- * 将一个Matrix2D的元素除以另一个矩阵的元素
3354- * @param matrix1
3355- * @param matrix2
3354+ * 该静态方法用于计算两个 Matrix2D 对象的商。
3355+ * @param {Matrix2D } matrix1 - 被除数矩阵。
3356+ * @param {Matrix2D } matrix2 - 除数矩阵。
3357+ * @returns {Matrix2D } - 计算结果的 Matrix2D 对象。
33563358 */
33573359 static divide ( matrix1 : Matrix2D , matrix2 : Matrix2D ) : Matrix2D ;
33583360 /**
3359- * 创建一个新的Matrix2D,包含两个矩阵的乘法
3360- * @param matrix1
3361- * @param matrix2
3361+ * 该静态方法用于计算两个 Matrix2D 对象或一个 Matrix2D 对象和一个数字的乘积。
3362+ * @param {Matrix2D } matrix1 - 第一个矩阵。
3363+ * @param {Matrix2D | number } matrix2 - 第二个矩阵或一个数字。
3364+ * @returns {Matrix2D } - 计算结果的 Matrix2D 对象。
33623365 */
3363- static mutiply ( matrix1 : Matrix2D , matrix2 : Matrix2D | number ) : Matrix2D ;
3366+ static multiply ( matrix1 : Matrix2D , matrix2 : Matrix2D | number ) : Matrix2D ;
33643367 /**
3365- * 创建一个新的Matrix2D,包含一个矩阵与另一个矩阵的减法。
3366- * @param matrix1
3367- * @param matrix2
3368+ * 该静态方法用于计算两个 Matrix2D 对象的差。
3369+ * @param {Matrix2D } matrix1 - 第一个矩阵。
3370+ * @param {Matrix2D } matrix2 - 第二个矩阵。
3371+ * @returns {Matrix2D } - 计算结果的 Matrix2D 对象。
33683372 */
33693373 static subtract ( matrix1 : Matrix2D , matrix2 : Matrix2D ) : Matrix2D ;
33703374 }
@@ -3511,7 +3515,7 @@ declare module es {
35113515 * @param offsetX 要添加到这个矩形的X坐标
35123516 * @param offsetY 要添加到这个矩形的y坐标
35133517 */
3514- offset ( offsetX : number , offsetY : number ) : void ;
3518+ offset ( offsetX : number , offsetY : number ) : this ;
35153519 /**
35163520 * 创建一个完全包含两个其他矩形的新矩形
35173521 * @param value1
@@ -3563,37 +3567,46 @@ declare module es {
35633567}
35643568declare module es {
35653569 /**
3566- * 它存储值,直到累计的总数大于1。一旦超过1,该值将在调用update时添加到amount中
3567- * 一般用法如下:
3568- *
3569- * let deltaMove = this.velocity * es.Time.deltaTime;
3570- * deltaMove.x = this._x.update(deltaMove.x);
3571- * deltaMove.y = this._y.update(deltaMove.y);
3570+ * 该类用于存储具有亚像素分辨率的浮点数。
35723571 */
35733572 class SubpixelFloat {
3573+ /**
3574+ * 存储 SubpixelFloat 值的浮点余数。
3575+ */
35743576 remainder : number ;
35753577 /**
3576- * 以amount递增余数,将值截断,存储新的余数并将amount设置为当前值
3577- * @param amount
3578+ * 通过将给定数量的像素添加到余数中来更新 SubpixelFloat 值。
3579+ * 返回更新后的整数部分,余数表示当前值中包含的亚像素部分。
3580+ * @param {number } amount - 要添加到余数中的像素数。
3581+ * @returns {number } 更新后的整数部分。
35783582 */
35793583 update ( amount : number ) : number ;
35803584 /**
3581- * 将余数重置为0
3585+ * 将 SubpixelFloat 值重置为零。
35823586 */
35833587 reset ( ) : void ;
35843588 }
35853589}
35863590declare module es {
3591+ /**
3592+ * 该类用于存储具有亚像素分辨率的二维向量。
3593+ */
35873594 class SubpixelVector2 {
3595+ /**
3596+ * 用于存储 x 坐标的 SubpixelFloat 对象。
3597+ */
35883598 _x : SubpixelFloat ;
3599+ /**
3600+ * 用于存储 y 坐标的 SubpixelFloat 对象。
3601+ */
35893602 _y : SubpixelFloat ;
35903603 /**
3591- * 以数量递增s/y余数,将值截断为整数,存储新的余数并将amount设置为当前值
3592- * @param amount
3604+ * 通过将给定数量的像素添加到余数中来更新 SubpixelVector2 值。
3605+ * @param { Vector2 } amount - 要添加到余数中的像素向量。
35933606 */
35943607 update ( amount : Vector2 ) : void ;
35953608 /**
3596- * 将余数重置为0
3609+ * 将 SubpixelVector2 值的余数重置为零。
35973610 */
35983611 reset ( ) : void ;
35993612 }
@@ -3989,25 +4002,46 @@ declare module es {
39894002}
39904003declare module es {
39914004 abstract class Shape {
3992- /**
3993- * 有一个单独的位置字段可以让我们改变形状的位置来进行碰撞检查,而不是改变entity.position。
3994- * 触发碰撞器/边界/散列更新的位置。
3995- * 内部字段
3996- */
39974005 position : Vector2 ;
3998- /**
3999- * 这不是中心。这个值不一定是物体的中心。对撞机更准确。
4000- * 应用任何转换旋转的localOffset
4001- * 内部字段
4002- */
40034006 center : Vector2 ;
4004- /** 缓存的形状边界 内部字段 */
40054007 bounds : Rectangle ;
4008+ /**
4009+ * 根据形状的碰撞器重新计算形状的边界。
4010+ * @param {Collider } collider - 用于重新计算形状边界的碰撞器。
4011+ */
40064012 abstract recalculateBounds ( collider : Collider ) : any ;
4013+ /**
4014+ * 确定形状是否与另一个形状重叠。
4015+ * @param {Shape } other - 要检查重叠的形状。
4016+ * @returns {boolean } 如果形状重叠,则为 true;否则为 false。
4017+ */
40074018 abstract overlaps ( other : Shape ) : boolean ;
4019+ /**
4020+ * 确定形状是否与另一个形状碰撞。
4021+ * @param {Shape } other - 要检查碰撞的形状。
4022+ * @param {Out<CollisionResult> } collisionResult - 如果形状碰撞,则要填充的碰撞结果对象。
4023+ * @returns {boolean } 如果形状碰撞,则为 true;否则为 false。
4024+ */
40084025 abstract collidesWithShape ( other : Shape , collisionResult : Out < CollisionResult > ) : boolean ;
4026+ /**
4027+ * 确定形状是否与线段相交。
4028+ * @param {Vector2 } start - 线段的起点。
4029+ * @param {Vector2 } end - 线段的终点。
4030+ * @param {Out<RaycastHit> } hit - 如果形状与线段相交,则要填充的射线命中结果对象。
4031+ * @returns {boolean } 如果形状与线段相交,则为 true;否则为 false。
4032+ */
40094033 abstract collidesWithLine ( start : Vector2 , end : Vector2 , hit : Out < RaycastHit > ) : boolean ;
4034+ /**
4035+ * 确定形状是否包含一个点。
4036+ * @param {Vector2 } point - 要检查包含的点。
4037+ */
40104038 abstract containsPoint ( point : Vector2 ) : any ;
4039+ /**
4040+ * 确定一个点是否与形状相交。
4041+ * @param {Vector2 } point - 要检查与形状相交的点。
4042+ * @param {Out<CollisionResult> } result - 如果点与形状相交,则要填充的碰撞结果对象。
4043+ * @returns {boolean } 如果点与形状相交,则为 true;否则为 false。
4044+ */
40114045 abstract pointCollidesWithShape ( point : Vector2 , result : Out < CollisionResult > ) : boolean ;
40124046 }
40134047}
@@ -4184,8 +4218,8 @@ declare module es {
41844218 reset ( ) : void ;
41854219 cloneTo ( cr : CollisionResult ) : void ;
41864220 /**
4187- * 改变最小平移向量,如果没有相同方向上的运动,它将移除平移的x分量 。
4188- * @param deltaMovement
4221+ * 从移动向量中移除水平方向的位移,以确保形状只沿垂直方向运动。如果移动向量包含水平移动,则通过计算垂直位移来修复响应距离 。
4222+ * @param deltaMovement - 移动向量
41894223 */
41904224 removeHorizontalTranslation ( deltaMovement : Vector2 ) : void ;
41914225 invertResult ( ) : void ;
@@ -4222,20 +4256,30 @@ declare module es {
42224256}
42234257declare module es {
42244258 class RealtimeCollisions {
4259+ /**
4260+ * 判断移动的圆是否与矩形相交,并返回相撞的时间。
4261+ * @param s 移动的圆
4262+ * @param b 矩形
4263+ * @param movement 移动的向量
4264+ * @param time 时间
4265+ * @returns 是否相撞
4266+ */
42254267 static intersectMovingCircleBox ( s : Circle , b : Box , movement : Vector2 , time : number ) : boolean ;
42264268 /**
4227- * 支持函数,返回索引为n的矩形vert
4228- * @param b
4229- * @param n
4269+ * 返回矩形的第n个角的坐标。
4270+ * @param b 矩形
4271+ * @param n 第n个角的编号
4272+ * @returns 第n个角的坐标
42304273 */
4231- static corner ( b : Rectangle , n : number ) : Vector2 ;
4274+ static corner ( b : Rectangle , n : number ) : es . Vector2 ;
42324275 /**
4233- * 检查圆是否与方框重叠,并返回point交点
4234- * @param cirlce
4235- * @param box
4236- * @param point
4276+ * 测试一个圆和一个矩形是否相交,并返回是否相交。
4277+ * @param circle 圆
4278+ * @param box 矩形
4279+ * @param point 离圆心最近的点
4280+ * @returns 是否相交
42374281 */
4238- static testCircleBox ( cirlce : Circle , box : Box , point : Vector2 ) : boolean ;
4282+ static testCircleBox ( circle : Circle , box : Box , point : Vector2 ) : boolean ;
42394283 }
42404284}
42414285declare module es {
@@ -4255,8 +4299,8 @@ declare module es {
42554299 readonly sectorAngle : number ;
42564300 constructor ( center : Vector2 , radius : number , startAngle : number , endAngle : number ) ;
42574301 /**
4258- * 扇形的圆心和半径计算出扇形的重心
4259- * @returns
4302+ * 获取圆弧的质心。
4303+ * @returns 圆弧的质心
42604304 */
42614305 getCentroid ( ) : Vector2 ;
42624306 /**
0 commit comments