@@ -198,9 +198,8 @@ export class Solid {
198198 if ( wedgePoints . length === 0 ) return fullCylinder ;
199199
200200 // Create wedge prism (make it taller to ensure complete cut)
201- const wedgeCutter = this . profilePrismFromPoints ( height * 1.5 , wedgePoints , { color } ) . move ( {
202- y : height * 0.75
203- } ) ; // Center wedge on Y-axis
201+ // Both cylinder and wedge are centered at Y=0, so no positioning needed
202+ const wedgeCutter = this . profilePrismFromPoints ( height * 2 , wedgePoints , { color } ) ;
204203
205204 // Subtract wedge from cylinder to create closed partial geometry
206205 return Solid . SUBTRACT ( fullCylinder , wedgeCutter ) ;
@@ -241,9 +240,8 @@ export class Solid {
241240 if ( wedgePoints . length === 0 ) return fullSphere ;
242241
243242 // Create wedge prism tall enough to cut through entire sphere diameter
244- const wedgeCutter = this . profilePrismFromPoints ( radius * 4 , wedgePoints , { color } ) . move ( {
245- y : radius * 2
246- } ) ; // Center wedge on Y-axis
243+ // Both sphere and wedge are centered at Y=0, so no positioning needed
244+ const wedgeCutter = this . profilePrismFromPoints ( radius * 4 , wedgePoints , { color } ) ;
247245
248246 // Subtract wedge from sphere to create closed partial geometry
249247 return Solid . SUBTRACT ( fullSphere , wedgeCutter ) ;
@@ -291,9 +289,8 @@ export class Solid {
291289 if ( wedgePoints . length === 0 ) return fullCone ;
292290
293291 // Create wedge prism (make it taller to ensure complete cut)
294- const wedgeCutter = this . profilePrismFromPoints ( height * 1.5 , wedgePoints , { color } ) . move ( {
295- y : height * 0.75
296- } ) ; // Center wedge on Y-axis
292+ // Both cone and wedge are centered at Y=0, so no positioning needed
293+ const wedgeCutter = this . profilePrismFromPoints ( height * 2 , wedgePoints , { color } ) ;
297294
298295 // Subtract wedge from cone to create closed partial geometry
299296 return Solid . SUBTRACT ( fullCone , wedgeCutter ) ;
@@ -351,9 +348,8 @@ export class Solid {
351348 if ( wedgePoints . length === 0 ) return fullPrism ;
352349
353350 // Create wedge prism (make it taller to ensure complete cut)
354- const wedgeCutter = this . profilePrismFromPoints ( height * 1.5 , wedgePoints , { color } ) . move ( {
355- y : height * 0.75
356- } ) ; // Center wedge on Y-axis
351+ // Both prism and wedge are centered at Y=0, so no positioning needed
352+ const wedgeCutter = this . profilePrismFromPoints ( height * 2 , wedgePoints , { color } ) ;
357353
358354 // Subtract wedge from prism to create closed partial geometry
359355 return Solid . SUBTRACT ( fullPrism , wedgeCutter ) ;
@@ -670,8 +666,8 @@ export class Solid {
670666 // The wedge needs to extend through the entire height range of the profile
671667 const wedgeHeight = Math . max ( profileHeight * 2 , maxRadius * 4 ) ;
672668 const wedgeCutter = this . profilePrismFromPoints ( wedgeHeight , wedgePoints , { color } ) . move ( {
673- y : profileCenter + wedgeHeight / 2
674- } ) ; // Center the wedge on the profile
669+ y : profileCenter
670+ } ) ; // Center the wedge on the profile center
675671
676672 // Subtract wedge from full revolution to create closed partial geometry
677673 return Solid . SUBTRACT ( fullRevolution , wedgeCutter ) ;
0 commit comments