Skip to content

[family-assembly] cabinet_bar_pull_handle: cabinet/drawer bar pull - #42

Closed
BenchCAD wants to merge 4 commits into
mainfrom
family/cabinet_bar_pull_handle
Closed

[family-assembly] cabinet_bar_pull_handle: cabinet/drawer bar pull#42
BenchCAD wants to merge 4 commits into
mainfrom
family/cabinet_bar_pull_handle

Conversation

@BenchCAD

@BenchCAD BenchCAD commented Jul 22, 2026

Copy link
Copy Markdown
Collaborator

Family

Reference (issue #26 — Berenson 7068 / Richelieu BP305)

Datasheet drawing Part photo
drawing photo

Generated — benchmark views (what the model sees)

preview_views

Three-view + iso — hard example

preview_hard_zoom

(the side view shows the post coped around the bar — the two parts meet on a saddle surface, no fused joint)

Extremes — smallest & largest sampled instances

preview_extremes

How it's parameterized — multi-body

Per review: the pull is modelled as the three parts it is assembled from — the
round bar and two standoff posts as separate solids in one compound. Each post
rises to the bar axis and is coped by the bar cylinder, so it seats flush on
the bar's underside in contact only (zero interpenetration); each post is tapped
from the base for the mounting screw. family.json declares "solids": 3, so
bench2 validate fails if a member vanishes or merges. 8 params, one feature
(chamfer_ends). C-C is the catalog ladder (76-638 mm); bar Ø / post Ø /
projection are constant within one line, so they're proportion.

Verification (every sampled instance — three separate solids, zero pairwise intersection)

difficulty center_to_center overhang projection bar_d post_d tap_d solids max pair overlap (mm³) bbox (mm)
easy s0 157.15 28.32 32.12 11.03 10.63 3.57 3 0.00 214×11×32
medium s0 231.42 28.09 28.41 10.1 11.25 4.37 3 0.00 288×11×28
hard s0 433.97 29.33 25.7 9.12 11.88 4.78 3 0.00 493×12×26
hard s1 363.64 57.92 27.45 15.64 8.87 3.56 3 0.00 479×16×27
hard s2 223.03 30.54 38.84 9.64 10.6 4.32 3 0.00 284×11×39

bench2 validate cabinet_bar_pull_handlePASS, including
solids: every instance non-degenerate, 3 solid(s) each (declares solids=3).
Pairwise intersection volumes measured directly (OCC common op) on both chamfer
variants — all 0.00 mm³.

Checklist

  • bench2 validate passes locally (CI re-runs it)
  • multi-body: family.json declares "solids": 3; members are contact-only (coped seat, no fusion)
  • all four renders regenerated at this head, including preview_hard_zoom.png ([framework] bench2 preview emits preview_hard_zoom (three-view+iso) + CI gate (warns first) #18 standard)
  • one family, only designs/cabinet_bar_pull_handle/ (package files only — refs stay in the issue)
  • body has Closes #26; DCO-signed; sources cited, nothing fabricated

Sources used

  • Berenson SS bar-pull series 7068-7072 (dimensioned line drawing: bar Ø12, post Ø10, projection 32.5, C-C 128-384, M4 tap).
  • Richelieu BP305 per-SKU drawings (C-C 76-638, overall = C-C+80, 8-32x6 tap); bar/post/projection cross-checked constant across Amerock + Hickory.

Round bar on two standoff posts (Berenson 7068 / Richelieu BP305): C-C 76-638 mm,
bar Ø, post Ø, projection, tapped post bases, optional chamfered ends. 8 params,
one feature (chamfer_ends). bench2 validate passes; renders inspected.

Signed-off-by: BenchCAD <benchcad@users.noreply.github.com>
@github-actions

github-actions Bot commented Jul 22, 2026

Copy link
Copy Markdown

bench2 validate

cabinet_bar_pull_handle

  ✓ family.json: keys + base_plane valid
  ✓ pieces: build(8 params) + PARAM_SPEC + check present
  ✓ PARAM_SPEC: 8 params, all entries complete
  ✓ easy: 4/4 seeds sample+check+build+execute clean
  ✓ medium: 4/4 seeds sample+check+build+execute clean
  ✓ hard: 4/4 seeds sample+check+build+execute clean
  ✓ difficulty separation: difficulties produce distinct programs
  ✓ geometry novelty: 12/12 unique shapes (0% duplicate)
  ✓ solids: every instance non-degenerate, 3 solid(s) each (declares solids=3)
PASS — designs/cabinet_bar_pull_handle

Previews: the previews artifact on this run.

…er face)

Codex review (gpt-5.6-sol): the bar axis sat at 'projection', making the true
standoff projection + bar_d/2 (over the 32.5-35 mm catalog). Drop the bar axis to
projection - bar_d/2 and raise the posts to meet it; update the finger-clearance
and tap-depth checks accordingly.

Signed-off-by: BenchCAD <benchcad@users.noreply.github.com>
@HaozheZhang6

Copy link
Copy Markdown
Collaborator

should change to assembly as a simple assembly example

HaozheZhang6 and others added 2 commits July 28, 2026 11:14
…s=3)

Per maintainer review on #42: model the pull as the three parts it is
assembled from — the round bar and two standoff posts as separate solids in
one compound. Each post rises to the bar axis and is coped by the bar
cylinder, so it seats flush on the bar's underside with zero
interpenetration (pairwise intersection probed 0.00 on both chamfer
variants). family.json declares solids: 3; validate gates the count.
Renders regenerated, now including preview_hard_zoom.png (#18 standard).

Signed-off-by: BenchCAD <benchcad@users.noreply.github.com>
@BenchCAD BenchCAD changed the title [family] cabinet_bar_pull_handle: cabinet/drawer bar pull [family-assembly] cabinet_bar_pull_handle: cabinet/drawer bar pull Jul 28, 2026
@BenchCAD

Copy link
Copy Markdown
Collaborator Author

Done — reworked as a simple assembly: the bar and the two standoff posts are now three separate solids in one compound (family.json declares solids: 3, validate gates the count). Each post is coped by the bar cylinder so it seats on the bar in contact only; pairwise intersection volumes measure 0.00 mm³ on both chamfer variants. Renders regenerated at the new head (now including preview_hard_zoom.png), body table refreshed, and the PR + issue #26 retitled [family-assembly] per the #53/#54 convention.

@BenchCAD

Copy link
Copy Markdown
Collaborator Author

Closing per maintainer call: even as an assembly this family is too simple to earn a slot — three coped primitives on one axis. Dropping it (issue #26 closed as not planned, branch deleted).

@BenchCAD BenchCAD closed this Jul 29, 2026
@BenchCAD
BenchCAD deleted the family/cabinet_bar_pull_handle branch July 29, 2026 06:47
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[family-assembly] cabinet_bar_pull_handle

2 participants