/** * Mirror modeling operations * Core logic for mirroring and creating symmetrical models */ import { OutlinerElement } from '../geometry/outliner_element'; import { Mesh } from '../geometry/mesh'; export interface MirrorOptions { axis: 0 | 1 | 2; center?: number; mirrorUV?: boolean; } /** * Flip a coordinate across a center point */ export declare function flipCoordinate(coord: number, center?: number, centeredGrid?: boolean): number; /** * Check if an element is centered on the symmetry axis */ export declare function isElementCentered(element: OutlinerElement, axis: number, center?: number): boolean; /** * Flip an element across an axis */ export declare function flipElement(element: OutlinerElement, options: MirrorOptions): void; /** * Create a mirrored copy of an element */ export declare function createMirrorElement(original: OutlinerElement, options: MirrorOptions): OutlinerElement; /** * Check if parent hierarchy is symmetrical */ export declare function isParentTreeSymmetrical(element: OutlinerElement, axis: number, center?: number): boolean; /** * Flip a name on an axis (e.g., "left_arm" -> "right_arm") */ export declare function flipNameOnAxis(name: string, axis: number): string; /** * Mirror multiple elements */ export declare function mirrorElements(elements: OutlinerElement[], options: MirrorOptions): OutlinerElement[]; /** * Create local symmetry for a mesh (mirror vertices on one side) */ export declare function createLocalSymmetry(mesh: Mesh, axis: number, center?: number, mirrorUV?: boolean): void; //# sourceMappingURL=mirror_operations.d.ts.map