omdl  v0.9.8
OpenSCAD Mechanical Design Library
Catch latch

Catch latch generator. More...

+ Collaboration diagram for Catch latch:

Files

file  catch_latch.scad
 A catch latch generator.
 

Functions

module catch_latch (size=5, screw, latch, catch, profile, align, verb=0)
 A catch latch generator with configurable profile. More...
 

Detailed Description

Catch latch generator.

Requires:
include <omdl-base.scad>;
include <models/3d/fastener/screws.scad>;
include <parts/3d/fastener/catch_latch.scad>;

Function Documentation

◆ catch_latch()

module catch_latch ( size  = 5,
screw  ,
latch  ,
catch  ,
profile  ,
align  ,
verb  = 0 
)

A catch latch generator with configurable profile.

Parameters
size<decimal-list-6 | decimal> latch size; a list [px, py, pz, bx, by, bz], the latch profile and base-mount dimensions, or a single decimal px and the remainder using predefined scaling of px.
screw<decimal-list-5 | decimal> mount screw hole specifications; a list [d, t, h, r, b], the hole-diameter, tolerance, head-diameter, recess-height, bevel-height, or a single decimal for the hole diameter.
latch<integer-list-1 | integer> latch; the latch type; {1=no mount, 2=vertical mount, 3=horizontal mount}.
catch<integer, decimal, decimal> | integer> catch; a list [t, h, g], the catch type, thickness, and gap, or a single decimal t for the catch type; {1=no mount, 2=vertical mount, 3=horizontal mount}.
profile<datastruct> latch profile (see below).
align<integer-list-3> object alignment; a list [x, y, z], the latch or catch alignment. Available alignment options depends on the object and its mount-type.
verb<integer> console output verbosity {0=quiet, 1=info}.

Construct a catch and/or latch. Both can be produced with or without a mount, that can be oriented horizontally or vertically to match the application. Constructs without mounts are useful for direct incorporation with other design parts. The bore for the mount is specified by the parameter screw and generated by screw_bore().

Multi-value and structured parameters

profile

Data structure fields: profile

e data type default value parameter description
0 <decimal-list-3> [0, 0, 0] bevel; [f, v, h]
1 <decimal-list-3> [60, 100, 10] width; [t, c, h]
2 <decimal-list-3> [20, 40, 60] length; [t, s, e]

bevel: a list [f, v, h], the flat-height, bevel-height, bevel-width, specified as a percentage of the latch height.

width: a list [t, c, h], the width of the throat, catch, head, specified as a percentage of the latch width.

length: a list [t, s, e], the length of the throat-end, catch-start, catch-end, specified as a percentage of the latch length.

Catch latch example script

include <omdl-base.scad>;
include <models/3d/fastener/screws.scad>;
include <parts/3d/fastener/catch_latch.scad>;
s = 10;
p = [10, 25, 10];
c = [5, 4, 10, 2, 1] * s/10;
catch_latch(latch=2, size=s, profile=[p], screw=c);
translate([0, s*7, 0]) rotate([0, 0, 180])
catch_latch(catch=3, size=s, profile=[p], screw=c);
// end_include
module catch_latch(size=5, screw, latch, catch, profile, align, verb=0)
A catch latch generator with configurable profile.

Catch latch example diagram
topbottomdiag
expand topexpand bottomexpand diag

Definition at line 379 of file catch_latch.scad.

+ Here is the call graph for this function: