Repository navigation
[family-assembly] Add straub_grip_axial_restraint_pipe_coupling (components contract) - #228
Merged
Merged
Conversation
Signed-off-by: jiashunwu1030 <311667253+jiashunwu1030@users.noreply.github.com>
Signed-off-by: jiashunwu1030 <311667253+jiashunwu1030@users.noreply.github.com>
Signed-off-by: jiashunwu1030 <311667253+jiashunwu1030@users.noreply.github.com>
Signed-off-by: jiashunwu1030 <311667253+jiashunwu1030@users.noreply.github.com>
…urn a named cq.Assembly The bodies were returned as one cq.Compound with only "solids" in family.json, which the task4 pipeline rejects. Each body now becomes a named assembly leaf (repeats as <component>_NN) and family.json lists the components. Geometry and placement unchanged. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Mt5jAj6n1jL7VZjJtBtQSP
…ng for the named components Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Mt5jAj6n1jL7VZjJtBtQSP
8 tasks done
bench2 validateclevis_fork_headgn866_pneumatic_power_clampmetric_plastic_cable_glandminifix_cam_housingset_screw_shaft_collarsingle_friction_bearing_universal_jointsingle_row_deep_groove_ball_bearingslotted_din_railspeaker_pole_mount_socketstop_bar_tailpiecestraub_grip_axial_restraint_pipe_couplingt_handle_ball_lock_pinthree_jaw_scroll_chuckPreviews: the |
…r pair, two components The bolt bores run along Y, oblique to each bar's +/-105 deg cant, so d_bar_02 is the mirror image of d_bar_01 (symmetric difference 0 mm^3 after an XZ reflection; no proper rotation registers them). Named d_bar_left / d_bar_right, quantity 1 each. Geometry unchanged. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Mt5jAj6n1jL7VZjJtBtQSP
…ng (d_bar_left / d_bar_right) Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Mt5jAj6n1jL7VZjJtBtQSP
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Supersedes #208, keeping its author: this branch is #208's commits by @jiashunwu1030 plus two maintainer commits. The contributor's fork does not accept maintainer pushes, so the fix lands here.
What changed:
build()returned the eight bodies as onecq.Compoundwith only"solids": 8infamily.json, which the task4 pipeline cannot use. Nowfamily.jsondeclarescomponents(casing 1, sleeve 1, anchoring_ring 2, d_bar_left 1, d_bar_right 1, lock_bolt 2) andbuild()returns a namedcq.Assembly, with repeats named<component>_NN. The geometry and placement of every body are unchanged.preview_parts.pngis regenerated for the named components. The two D bars are a left/right mirror pair (the bolt bores run along Y, oblique to each bar's ±105° cant; reflection in XZ matches exactly, no rotation does), so they are two components.bench2 validate: PASS (5 component types summing to solids=8; all 12 seeds build).Family
straub_grip_axial_restraint_pipe_coupling-family-assemblyReference - official manufacturer images (from Family Issue #207)
Generated - benchmark views (what the model sees)
Generated - easy / medium / hard samples
Easy samples are the top row, medium samples the middle row, and hard samples the bottom row.
Extremes - smallest & largest sampled instances
Modeled component instances - medium seed 0
catalog_index 1 - STR20900. The panel separates all eight actual CadQuery bodies: casing, EPDM sleeve, left/right anchoring rings, left/right D-section closure bars, and two transverse lock bolts.Schematic exploded view
Schematic exploded view of the eight modeled bodies; not an authoritative manufacturer assembly procedure.
How it is parameterized
catalog_indexmaps strictly to one complete Dixon catalog row (0-3); dimensions are not freely recombined.fitted_pipe_odis refined within the selected row's published min/max pipe O.D. range.Verification (every sampled instance - eight non-degenerate solids)
bench2 validate straub_grip_axial_restraint_pipe_coupling? PASS.Modeling simplifications and constraints
Checklist
preview.png,preview_views.png, andpreview_extremes.pngwere generated and manually checked.family.jsondeclaressolids: 8; every body is non-degenerate.designs/straub_grip_axial_restraint_pipe_coupling/and contains the seven required assembly files.Sources used