mirror of
https://github.com/xibyte/jsketcher
synced 2025-12-12 03:13:24 +01:00
27 lines
No EOL
733 B
TypeScript
27 lines
No EOL
733 B
TypeScript
import Vector from "math/vector";
|
|
import {FaceTouchAlignConstraint} from "../constraints/faceTouchAlign";
|
|
import {EdgeAlignConstraint} from "../constraints/edgeAlign";
|
|
import {DEG_RAD} from "math/commons";
|
|
import {Matrix3x4} from "math/matrix";
|
|
|
|
export const ANGULAR_ALLOWANCE = 10 * DEG_RAD;
|
|
|
|
export enum ModificationResponse {
|
|
|
|
SUCCESS, FIXED, REJECTED
|
|
|
|
}
|
|
|
|
export interface AssemblyDOF {
|
|
|
|
description: string;
|
|
|
|
translate(dir: Vector, location: Matrix3x4, strict: boolean): ModificationResponse;
|
|
|
|
rotate(axis: Vector, angle: number, location: Matrix3x4, strict: boolean): ModificationResponse;
|
|
|
|
applyTouchAlign(constr: FaceTouchAlignConstraint): AssemblyDOF;
|
|
|
|
applyEdgeAlign(constr: EdgeAlignConstraint): AssemblyDOF;
|
|
|
|
} |