@@ -491,26 +491,88 @@ CSG servoBlock = new Cube(bot.getTotalX()-caseRounding*2,bot.getTotalY()-caseRou
491491 .movex(bot. getMaxX()- caseRounding)
492492CSG servoCover = servoBlock. difference(servoBlock. movez(2 ))
493493 .movez(-2 )
494- double distanceFromBottomToGround= Math . abs(tireMovedR. getMinZ()- servoCover. getMinZ())
494+ double servoCoverSurfaceDistance = servoCover. getMinZ()
495+ double distanceFromBottomToGround= Math . abs(tireMovedR. getMinZ()- servoCoverSurfaceDistance)
495496CSG Caster = new Sphere (distanceFromBottomToGround,20 ,30 ). toCSG()
496497
497498Caster = Caster . difference(Caster . getBoundingBox(). toZMin())
498499 .movez(servoCover. getMinZ())
499500 .movex(servoCover. getCenterX())
500501 .toYMax()
501502 .movey(servoCover. getMaxY())
502- servoCover = servoCover . union( Caster )
503+
503504CSG blockCordCut = servoBlock. toYMax()
504505 .movey(servoBlock. getMinY()+12 )
505506 .movez(-5 )
506- bot= bot. union(servoBlock)
507- .difference(bothDrive)
508- .difference(blockCordCut)
507+
509508
510509CSG coverscrew = Vitamins . get(" chamferedScrew" , " M3x16" )
511-
510+ .rotx(180 )
511+ .toZMin()
512+ .movez(servoCoverSurfaceDistance)
513+ .movex(servoCover. getMinX())
514+ double InsetScrew = 10
515+ CSG screws = coverscrew. movex(InsetScrew ). union(coverscrew. movex(servoCover. getTotalX()- InsetScrew ))
516+ .movey(servoCover. getTotalY()/ 2 )
517+
518+ double batterySunkIn = 10
519+ CSG NineVolt = Vitamins . get(" BatteryBox" , " 9vbattery" )
520+ CSG batteryHolder = NineVolt . getBoundingBox(). scalex(1.15 )
521+ .scalez(1.2 )
522+ .scaley(1.15 )
523+ .toYMin()
524+ .movey(NineVolt . getMinY())
525+ batteryHolder= batteryHolder. intersect(batteryHolder. movez(- batterySunkIn))
526+ .difference(NineVolt )
527+
528+ Transform tf9v = new Transform ()
529+ .movex(servoCover. getCenterX())
530+ .movey(- NineVolt . getMinY()- servoCover. getMinY())
531+ .movez(- NineVolt . getMaxZ()+ servoCoverSurfaceDistance+ batterySunkIn)
532+
533+
534+ NineVolt = NineVolt . transformed(tf9v)
535+ batteryHolder= batteryHolder. transformed(tf9v)
536+
537+ servoCover= servoCover
538+ .union(Caster )
539+ .union(batteryHolder)
540+ .difference(NineVolt )
541+ .difference(screws)
542+ bot= bot. union(servoBlock)
543+ .difference(bothDrive)
544+ .difference(blockCordCut)
545+ .difference(NineVolt )
546+ .difference(screws)
512547
513- return [top,bot,servoCover,bothDrive,leftWheel,rightWheel,tireMovedR,tireMovedL]
548+ servoCover. setName(" servoCover" )
549+ .setManufacturing({ toMfg ->
550+ return toMfg. roty(180 ). toZMin()
551+ })
552+
553+ leftWheel. setName(" leftWheel" )
554+ .setManufacturing({ toMfg ->
555+ return toMfg. roty(-90 ). toZMin()
556+ })
557+
558+ rightWheel. setName(" rightWheel" )
559+ .setManufacturing({ toMfg ->
560+ return toMfg. roty(90 ). toZMin()
561+ })
562+ bot
563+ .setManufacturing({ toMfg ->
564+ return toMfg. toZMin()
565+ })
566+ NineVolt . setColor(Color . SILVER )
567+ .setManufacturing({ toMfg ->
568+ return null
569+ })
570+
571+ screws. setColor(Color . SILVER )
572+ .setManufacturing({ toMfg ->
573+ return null
574+ })
575+ return [top,bot,servoCover,bothDrive,leftWheel,rightWheel,tireMovedR,tireMovedL,NineVolt ,screws]
514576
515577
516578
0 commit comments