Move axes to std constants; move helix, revolve, and mirror2d to be declated in KCL Signed-off-by: Nick Cameron <nrc@ncameron.org>
37 lines
1.2 KiB
Plaintext
37 lines
1.2 KiB
Plaintext
// Pipe
|
|
// A tubular section or hollow cylinder, usually but not necessarily of circular cross-section, used mainly to convey substances that can flow.
|
|
|
|
// Set Units
|
|
@settings(defaultLengthUnit = in)
|
|
|
|
// Define constants
|
|
pipeTotalLength = 20
|
|
pipeLargeDiaLength = 1
|
|
pipeLargeDia = 1
|
|
pipeSmallDia = .75
|
|
thickness = 0.125
|
|
pipeTransitionAngle = 60
|
|
pipeTransitionLength = 0.5
|
|
pipeSmallDiaLength = pipeTotalLength - pipeTransitionLength - pipeLargeDiaLength
|
|
|
|
// Create the sketch to be revolved around the y-axis. Use the small diameter, large diameter, length, and thickness to define the sketch.
|
|
pipeSketch = startSketchOn(XY)
|
|
|> startProfileAt([pipeSmallDia - (thickness / 2), 38], %)
|
|
|> line(end = [thickness, 0])
|
|
|> line(end = [0, -pipeSmallDiaLength])
|
|
|> angledLineOfYLength({
|
|
angle = -60,
|
|
length = pipeTransitionLength
|
|
}, %)
|
|
|> line(end = [0, -pipeLargeDiaLength])
|
|
|> xLine(length = -thickness)
|
|
|> line(end = [0, pipeLargeDiaLength])
|
|
|> angledLineToX({
|
|
angle = -pipeTransitionAngle + 180,
|
|
to = pipeSmallDia - (thickness / 2)
|
|
}, %)
|
|
|> close()
|
|
|
|
// Revolve the sketch to create the pipe
|
|
pipe = revolve(pipeSketch, axis = Y)
|