yanchengPowerSupply/node_modules/mxdraw/dist/lib/tools/three/index.d.ts

92 lines
3.6 KiB
TypeScript

/**
* 移动geometry坐标。
* @param geometry Three的Geometry对象
* @param pos 移动后的坐标
* @example
* ```typescript
* setGeometryPostion(new THREE.THREE.Geometry(), new THREE.THREE.Vector3(3,10,0))
* ```
*
*/
export declare function setGeometrPostion(geometry: THREE.Geometry, pos: THREE.Vector3): void;
/**
* 生成圆角时修复纹理对应的 uvs
* @param geometry 几何体
* */
export declare function repairGeometryFaceVertexUvs(geometry: THREE.Geometry): import("three").Geometry;
/**
* 获取生成圆角的points定点位置
* @param points 生成圆角前
* @param cornerRadius 圆角值
* @param isClose 生成圆角的图形是否是闭合的
* */
export declare function getToGenerateRoundedCorners(points: THREE.Vector3[], cornerRadius: number[], isClose?: boolean): THREE.Vector3[];
/**
* 计算矩形点位
* @param pt1 点1
* @param pt3 点3
* */
export declare function computeRectPoints(pt1: THREE.Vector3, pt3: THREE.Vector3): import("three").Vector3[];
/**
* 计算圆弧原点
* 三个点坐标计算出原点(圆心点)
*/
export declare function calculateArcOrigin(pt1: THREE.Vector3, pt2: THREE.Vector3, pt3: THREE.Vector3): import("three").Vector3;
/**
* 计算圆弧半径
* @param pt1 圆弧任意一点
* @param origin 原点(圆心点)
*/
export declare function calculateRadiusArc(pt1: THREE.Vector3, origin: THREE.Vector3): number;
/**
* 计算圆弧任意点到原点的的各种角度
* @param pt1 圆弧任意一点
* @param origin 原点(圆心点)
* @param radius 半径
*/
export declare function calculateArcAngle(pt1: THREE.Vector3, origin: THREE.Vector3, radius: number): {
sin: number;
cos: number;
angle: number;
};
/**
* 判断圆弧渲染方向
* @param angle1 第一个点的角度值
* @param angle2 第二个点的角度值
* @param angle3 第三个点的角度值
* 圆弧三个在圆弧上的角度判断圆弧按照顺时针或者逆时针渲染 true 为顺时针
*/
export declare function judgementArcRenderDirection(angle1: number, angle2: number, angle3: number): boolean;
/**
* 三点创建圆弧
* @param pt1 开始点
* @param pt2 圆弧任意一点
* @param pt3 结束点
* @param isRule 默认 false pt1是圆弧起始点 pt2圆弧任意一点 pt3是圆弧结束点 否则 pt1是圆弧起始点 pt2是圆弧结束点 pt3是圆弧任意一点
* @param alwaysClockwise 默认 false 圆弧根据三个点的角度关系自动确定是顺时针渲染函数逆时针方向渲染 否则为true始终顺时针方向渲染
* @param color 颜色值
*/
export declare function createThreePointArc(pt1: THREE.Vector3, pt2: THREE.Vector3, pt3: THREE.Vector3, isRule?: boolean, alwaysClockwise?: boolean, color?: import("three").Color): {
arc: import("three").Line;
radius: number;
angle: number;
arcLength: number;
};
export declare function createAnyLine(points: THREE.Vector3[]): import("three").Line;
/**
* 绘制椭圆 */
export declare function createThreeEllipse(pt1: THREE.Vector3, pt3: THREE.Vector3, color: number | string | THREE.Color): import("three").Line;
export declare function computeRegularPolygonVertices(centerPt?: import("three").Vector3, pt?: import("three").Vector3, segments?: number): import("three").Vector3[];
/**
* 创建正多边形
* @param centerPt 中点
* @param pt 边角一点
* @param segments 边数
* */
export declare function createThreeRegularPolygon(centerPt: THREE.Vector3, pt: THREE.Vector3, segments: number, color: number | string | THREE.Color): import("three").LineLoop;
export declare function computeBounding(points: THREE.Vector3[]): {
centerPoint: THREE.Vector3;
minPoint: THREE.Vector3;
maxPoint: THREE.Vector3;
};