diff --git a/src/gizmos/ResizeGizmo/HandleGeometry.ts b/src/gizmos/ResizeGizmo/HandleGeometry.ts index ec58230..0784695 100644 --- a/src/gizmos/ResizeGizmo/HandleGeometry.ts +++ b/src/gizmos/ResizeGizmo/HandleGeometry.ts @@ -19,9 +19,9 @@ export class HandleGeometry { const max = boundingBox.maximumWorld; const center = boundingBox.centerWorld; - // Apply padding - const paddedMin = min.subtract(new Vector3(padding, padding, padding)); - const paddedMax = max.add(new Vector3(padding, padding, padding)); + // Apply padding to position handles inward from bounding box edges + const paddedMin = min.add(new Vector3(padding, padding, padding)); + const paddedMax = max.subtract(new Vector3(padding, padding, padding)); const corners: HandlePosition[] = []; const positions = [ @@ -60,9 +60,9 @@ export class HandleGeometry { const max = boundingBox.maximumWorld; const center = boundingBox.centerWorld; - // Apply padding - const paddedMin = min.subtract(new Vector3(padding, padding, padding)); - const paddedMax = max.add(new Vector3(padding, padding, padding)); + // Apply padding to position handles inward from bounding box edges + const paddedMin = min.add(new Vector3(padding, padding, padding)); + const paddedMax = max.subtract(new Vector3(padding, padding, padding)); // Calculate midpoints const midX = (paddedMin.x + paddedMax.x) / 2; @@ -178,9 +178,9 @@ export class HandleGeometry { const min = boundingBox.minimumWorld; const max = boundingBox.maximumWorld; - // Apply padding - const paddedMin = min.subtract(new Vector3(padding, padding, padding)); - const paddedMax = max.add(new Vector3(padding, padding, padding)); + // Apply padding to position handles inward from bounding box edges + const paddedMin = min.add(new Vector3(padding, padding, padding)); + const paddedMax = max.subtract(new Vector3(padding, padding, padding)); // Calculate midpoints const midX = (paddedMin.x + paddedMax.x) / 2; diff --git a/src/gizmos/ResizeGizmo/ResizeGizmoVisuals.ts b/src/gizmos/ResizeGizmo/ResizeGizmoVisuals.ts index 66d4bfd..58d92c8 100644 --- a/src/gizmos/ResizeGizmo/ResizeGizmoVisuals.ts +++ b/src/gizmos/ResizeGizmo/ResizeGizmoVisuals.ts @@ -135,14 +135,10 @@ export class ResizeGizmoVisuals { const min = boundingBox.minimumWorld; const max = boundingBox.maximumWorld; - // Calculate padding - const padding = HandleGeometry.calculatePadding( - boundingBox, - this._config.current.boundingBoxPadding - ); - - const paddedMin = min.subtract(new Vector3(padding, padding, padding)); - const paddedMax = max.add(new Vector3(padding, padding, padding)); + // Use original bounding box without padding for wireframe + // (handles are now positioned inside, so box matches actual mesh bounds) + const paddedMin = min; + const paddedMax = max; // Create line points for bounding box edges const points = [