* Teaching t2c how to counterbore, countersink, and counterdrill * Delete public/kcl-samples/parametric-bearing-pillow-block directory * Update mounting-wire.kcl * new artifiacts Signed-off-by: Jess Frazelle <github@jessfraz.com> * Update kcl-samples simulation test output * Update kcl-samples simulation test output * updates Signed-off-by: Jess Frazelle <github@jessfraz.com> * updates Signed-off-by: Jess Frazelle <github@jessfraz.com> * updates Signed-off-by: Jess Frazelle <github@jessfraz.com> --------- Signed-off-by: Jess Frazelle <github@jessfraz.com> Co-authored-by: Jess Frazelle <jessfraz@users.noreply.github.com> Co-authored-by: Jess Frazelle <github@jessfraz.com> Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
		
			
				
	
	
		
			52 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			52 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
// CPU Cooler
 | 
						|
// A CPU cooler is a device designed to dissipate heat generated by the CPU of a computer. They consist of a brazed heat sink made from aluminum or copper alloys, and one or two axial fans to move airflow across the heat sink.
 | 
						|
 | 
						|
// Set units
 | 
						|
@settings(defaultLengthUnit = mm)
 | 
						|
 | 
						|
// Import all parts and parameters into assembly file
 | 
						|
import * from "parameters.kcl"
 | 
						|
import "fan-housing.kcl" as fanHousing
 | 
						|
import "motor.kcl" as motor
 | 
						|
import "fan.kcl" as fan
 | 
						|
import "heat-sink.kcl" as heatSink
 | 
						|
import "mounting-wire.kcl" as mountingWire
 | 
						|
import "removable-sticker.kcl" as removableSticker
 | 
						|
 | 
						|
// Produce the model for each imported part
 | 
						|
heatSink
 | 
						|
 | 
						|
fn translatePart(part) {
 | 
						|
  part
 | 
						|
    |> translate(x = heatSinkDepth / 2, z = 40 + fanSize / 2)
 | 
						|
    |> patternLinear3d(
 | 
						|
         %,
 | 
						|
         instances = 2,
 | 
						|
         distance = heatSinkDepth + fanHeight,
 | 
						|
         axis = [-1, 0, 0],
 | 
						|
       )
 | 
						|
  return {  }
 | 
						|
}
 | 
						|
translatePart(part = fanHousing)
 | 
						|
translatePart(part = motor)
 | 
						|
translatePart(part = fan)
 | 
						|
 | 
						|
mountingWire
 | 
						|
  |> patternCircular3d(
 | 
						|
       %,
 | 
						|
       instances = 2,
 | 
						|
       axis = [0, 1, 0],
 | 
						|
       center = [0, 0, 40 + fanSize / 2],
 | 
						|
       arcDegrees = 360,
 | 
						|
       rotateDuplicates = true,
 | 
						|
     )
 | 
						|
  |> patternCircular3d(
 | 
						|
       %,
 | 
						|
       instances = 2,
 | 
						|
       axis = [0, 0, 1],
 | 
						|
       center = [0, 0, 0],
 | 
						|
       arcDegrees = 360,
 | 
						|
       rotateDuplicates = true,
 | 
						|
     )
 | 
						|
removableSticker
 |