name = "steve/captive-panel-screw" version = "1.0.0" runtime = "steve" license = "MIT" summary = "Captive panel screw envelope, M3 to M5, any length: shank and round knob (simplified)." description = """A captive panel screw envelope for assemblies: a shank at the thread's nominal diameter and a round \ knob (2d across, d high) centred on its top end, two bodies, M3 to M5 at any length. Measured from step.parts' \ published models (MIT); no maker or standard is behind them (PennEngineering PF11/PF12 come in other lengths). Shank along +Z from the origin. Dimensions and attribution: see the README.""" tags = ["captive-screw", "panel-screw", "screw", "fastener", "panel", "metric"] [parameters.thread] type = "choice" default = "M3" choices = ["M3", "M4", "M5"] label = "Thread" [parameters.length] type = "number" default = 20 min = 4 max = 100 unit = "mm" label = "Shank length" [parameters.material] type = "choice" default = "unspecified" choices = ["unspecified", "steel", "stainless-304"] label = "Material" [[presets]] id = "M3x10" title = "Captive panel screw M3 × 10 (envelope)" params = { thread = "M3", length = 10 } aliases = ["captive screw M3x10", "panel screw M3 x 10", "captive panel fastener M3 10 mm", "captive panel screw", "thread=M3; captive screw length=10 mm; simplified head/retainer envelope"] standard = "step.parts captive panel screw model" [[presets]] id = "M3x12" title = "Captive panel screw M3 × 12 (envelope)" params = { thread = "M3", length = 12 } aliases = ["captive screw M3x12", "panel screw M3 x 12", "captive panel fastener M3 12 mm", "captive panel screw", "thread=M3; captive screw length=12 mm; simplified head/retainer envelope"] standard = "step.parts captive panel screw model" [[presets]] id = "M3x16" title = "Captive panel screw M3 × 16 (envelope)" params = { thread = "M3", length = 16 } aliases = ["captive screw M3x16", "panel screw M3 x 16", "captive panel fastener M3 16 mm", "captive panel screw", "thread=M3; captive screw length=16 mm; simplified head/retainer envelope"] standard = "step.parts captive panel screw model" [[presets]] id = "M3x20" title = "Captive panel screw M3 × 20 (envelope)" params = { thread = "M3", length = 20 } aliases = ["captive screw M3x20", "panel screw M3 x 20", "captive panel fastener M3 20 mm", "captive panel screw", "thread=M3; captive screw length=20 mm; simplified head/retainer envelope"] standard = "step.parts captive panel screw model" [[presets]] id = "M3x25" title = "Captive panel screw M3 × 25 (envelope)" params = { thread = "M3", length = 25 } aliases = ["captive screw M3x25", "panel screw M3 x 25", "captive panel fastener M3 25 mm", "captive panel screw", "thread=M3; captive screw length=25 mm; simplified head/retainer envelope"] standard = "step.parts captive panel screw model" [[presets]] id = "M3x30" title = "Captive panel screw M3 × 30 (envelope)" params = { thread = "M3", length = 30 } aliases = ["captive screw M3x30", "panel screw M3 x 30", "captive panel fastener M3 30 mm", "captive panel screw", "thread=M3; captive screw length=30 mm; simplified head/retainer envelope"] standard = "step.parts captive panel screw model" [[presets]] id = "M4x10" title = "Captive panel screw M4 × 10 (envelope)" params = { thread = "M4", length = 10 } aliases = ["captive screw M4x10", "panel screw M4 x 10", "captive panel fastener M4 10 mm", "captive panel screw", "thread=M4; captive screw length=10 mm; simplified head/retainer envelope"] standard = "step.parts captive panel screw model" [[presets]] id = "M4x12" title = "Captive panel screw M4 × 12 (envelope)" params = { thread = "M4", length = 12 } aliases = ["captive screw M4x12", "panel screw M4 x 12", "captive panel fastener M4 12 mm", "captive panel screw", "thread=M4; captive screw length=12 mm; simplified head/retainer envelope"] standard = "step.parts captive panel screw model" [[presets]] id = "M4x16" title = "Captive panel screw M4 × 16 (envelope)" params = { thread = "M4", length = 16 } aliases = ["captive screw M4x16", "panel screw M4 x 16", "captive panel fastener M4 16 mm", "captive panel screw", "thread=M4; captive screw length=16 mm; simplified head/retainer envelope"] standard = "step.parts captive panel screw model" [[presets]] id = "M4x20" title = "Captive panel screw M4 × 20 (envelope)" params = { thread = "M4", length = 20 } aliases = ["captive screw M4x20", "panel screw M4 x 20", "captive panel fastener M4 20 mm", "captive panel screw", "thread=M4; captive screw length=20 mm; simplified head/retainer envelope"] standard = "step.parts captive panel screw model" [[presets]] id = "M4x25" title = "Captive panel screw M4 × 25 (envelope)" params = { thread = "M4", length = 25 } aliases = ["captive screw M4x25", "panel screw M4 x 25", "captive panel fastener M4 25 mm", "captive panel screw", "thread=M4; captive screw length=25 mm; simplified head/retainer envelope"] standard = "step.parts captive panel screw model" [[presets]] id = "M4x30" title = "Captive panel screw M4 × 30 (envelope)" params = { thread = "M4", length = 30 } aliases = ["captive screw M4x30", "panel screw M4 x 30", "captive panel fastener M4 30 mm", "captive panel screw", "thread=M4; captive screw length=30 mm; simplified head/retainer envelope"] standard = "step.parts captive panel screw model" [[presets]] id = "M5x10" title = "Captive panel screw M5 × 10 (envelope)" params = { thread = "M5", length = 10 } aliases = ["captive screw M5x10", "panel screw M5 x 10", "captive panel fastener M5 10 mm", "captive panel screw", "thread=M5; captive screw length=10 mm; simplified head/retainer envelope"] standard = "step.parts captive panel screw model" [[presets]] id = "M5x12" title = "Captive panel screw M5 × 12 (envelope)" params = { thread = "M5", length = 12 } aliases = ["captive screw M5x12", "panel screw M5 x 12", "captive panel fastener M5 12 mm", "captive panel screw", "thread=M5; captive screw length=12 mm; simplified head/retainer envelope"] standard = "step.parts captive panel screw model" [[presets]] id = "M5x16" title = "Captive panel screw M5 × 16 (envelope)" params = { thread = "M5", length = 16 } aliases = ["captive screw M5x16", "panel screw M5 x 16", "captive panel fastener M5 16 mm", "captive panel screw", "thread=M5; captive screw length=16 mm; simplified head/retainer envelope"] standard = "step.parts captive panel screw model" [[presets]] id = "M5x20" title = "Captive panel screw M5 × 20 (envelope)" params = { thread = "M5", length = 20 } aliases = ["captive screw M5x20", "panel screw M5 x 20", "captive panel fastener M5 20 mm", "captive panel screw", "thread=M5; captive screw length=20 mm; simplified head/retainer envelope"] standard = "step.parts captive panel screw model" [[presets]] id = "M5x25" title = "Captive panel screw M5 × 25 (envelope)" params = { thread = "M5", length = 25 } aliases = ["captive screw M5x25", "panel screw M5 x 25", "captive panel fastener M5 25 mm", "captive panel screw", "thread=M5; captive screw length=25 mm; simplified head/retainer envelope"] standard = "step.parts captive panel screw model" [[presets]] id = "M5x30" title = "Captive panel screw M5 × 30 (envelope)" params = { thread = "M5", length = 30 } aliases = ["captive screw M5x30", "panel screw M5 x 30", "captive panel fastener M5 30 mm", "captive panel screw", "thread=M5; captive screw length=30 mm; simplified head/retainer envelope"] standard = "step.parts captive panel screw model"