新增cdsl
This commit is contained in:
@@ -0,0 +1,5 @@
|
||||
# CDSL Bridge: Coaxial Bore
|
||||
|
||||
- Share one explicit axis or workplane origin across bore, seat, hub, sleeve, and clearance features.
|
||||
- Keep each diameter role distinct. Use sequential cuts for a through clearance plus a deeper/larger seat.
|
||||
- Prefer `reference_axis`, explicit frames, `revolve_cut`, or circular cut profiles; do not infer a new axis from arbitrary topology.
|
||||
@@ -0,0 +1,6 @@
|
||||
# CDSL Bridge: Counterbored Hole
|
||||
|
||||
- A counterbore is a smaller functional hole plus a larger, shallow coaxial recess.
|
||||
- Use `hole_counterbore` or `hole_wizard` with `counterbore` fields when host placement is resolvable.
|
||||
- Preserve main diameter, depth, counterbore diameter, and counterbore depth separately.
|
||||
- Do not use a plain blind hole when the screw-head seat is part of the request.
|
||||
@@ -0,0 +1,5 @@
|
||||
# CDSL Bridge: Extrude Base
|
||||
|
||||
- Start with a closed named profile and a workplane. Use `extrude_add_blind` for a plate, block, annulus, hex body, or constant cylinder.
|
||||
- Keep the base simple; add holes, slots, bosses, and finishing as dependent features.
|
||||
- Use one coherent body unless separate solids are explicitly requested.
|
||||
+5
@@ -0,0 +1,5 @@
|
||||
# CDSL Bridge: Fillet And Chamfer Last
|
||||
|
||||
- Apply `fillet` and `chamfer` only after primary adds, bores, holes, pockets, and patterns.
|
||||
- Both operations require selectors that resolve uniquely on the active body.
|
||||
- If no stable selector is available, omit the finishing operation and record `omitted: selector_unavailable`; never apply it to every edge.
|
||||
@@ -0,0 +1,5 @@
|
||||
# CDSL Bridge: Pattern Holes From Datum
|
||||
|
||||
- Build a valid seed hole first and preserve its host frame and functional subtype.
|
||||
- Use `pattern_linear` for one/two-dimensional rows and `pattern_mirror` for symmetry.
|
||||
- For circular layouts, use an explicit `circles` profile expansion and record the audit status; do not invent a circular-pattern atomic.
|
||||
+5
@@ -0,0 +1,5 @@
|
||||
# CDSL Bridge: Revolve Profile
|
||||
|
||||
- Use a closed side profile and explicit axis with `revolve_add` or `revolve_cut`.
|
||||
- Use 360 degrees unless a partial sector is requested. Keep the profile from crossing the axis invalidly.
|
||||
- Add flats, slots, keyways, and bolt holes only after the rotational body is valid.
|
||||
@@ -0,0 +1,5 @@
|
||||
# CDSL Bridge: Threaded Hole
|
||||
|
||||
- Preserve thread size/depth as user intent and use the supported hole contract for the bore.
|
||||
- Current CDSL runtime does not generate helical thread topology. Do not claim that it does.
|
||||
- Record `approximated: thread_geometry_omitted` in the revision audit and include the bore dimensions used.
|
||||
@@ -0,0 +1,5 @@
|
||||
# CDSL Bridge: Through Hole
|
||||
|
||||
- Use a host face/frame and an explicit diameter. Prefer `hole_wizard` with a through end condition when its selector contract is complete.
|
||||
- Otherwise use a circular sketch and a cut depth that is explicitly sufficient for the body, preserving the through-hole intent in the feature name/assumptions.
|
||||
- Keep central bores on the main axis and repeated holes in a pattern or explicit circle group.
|
||||
+6
@@ -0,0 +1,6 @@
|
||||
# CDSL Bridge: Axisymmetric Revolve
|
||||
|
||||
- Choose a closed half-profile and an explicit `axis` for `revolve_add` or `revolve_cut`.
|
||||
- Use 360 degrees for a complete body. Keep the profile on one valid side of the axis.
|
||||
- Prefer revolve for steps, shoulders, tapers, grooves, sleeves, and turned parts; use circle extrusion for a constant cylinder.
|
||||
- Validate one coherent solid and shared axis before adding non-axisymmetric cuts.
|
||||
+6
@@ -0,0 +1,6 @@
|
||||
# CDSL Bridge: Bearing Bore Seat
|
||||
|
||||
- Build enough support material first, then cut the smaller shaft clearance and larger bearing seat on the same frame.
|
||||
- Use a defined seat depth and shoulder; never collapse both diameters into one hole.
|
||||
- Express coaxial cuts with explicit frames or a stable reference axis/plane. Mounting holes follow the seat relationship.
|
||||
- If a selector cannot identify the seat face uniquely, stop the dependent feature and report the blocker.
|
||||
+6
@@ -0,0 +1,6 @@
|
||||
# CDSL Bridge: Flange Bolt Circle
|
||||
|
||||
- Keep bolt-circle diameter, count, start angle, and hole diameter explicit.
|
||||
- Since the runtime has no circular-pattern atomic, expand the layout into explicit circle centers in a `circles` profile and cut them together.
|
||||
- This is a semantic expansion, not an arbitrary approximation; report `expanded: circular_pattern_to_explicit_circles`.
|
||||
- Do not use a rectangular grid for a circular flange.
|
||||
+6
@@ -0,0 +1,6 @@
|
||||
# CDSL Bridge: Mounting Plate Hole Layout
|
||||
|
||||
- Establish plate edge/center datums before hole placement.
|
||||
- Use one seed hole or explicit hole group, then `pattern_linear` or `pattern_mirror` for rows and symmetry.
|
||||
- Select clearance, threaded, counterbored, or countersunk intent from the request; do not reduce every hole to a generic cylinder.
|
||||
- Preserve margins and pitch. Finish after all functional holes and slots.
|
||||
+6
@@ -0,0 +1,6 @@
|
||||
# CDSL Bridge: Slotted Adjustment
|
||||
|
||||
- A slot is an obround cut with equal end radii, dimensioned by width, length, and a datum frame.
|
||||
- Use an `obround` sketch and `extrude_cut_blind`/through-depth after the base exists.
|
||||
- A slot is not a shaft keyway or revolved groove. Pattern or mirror only after the seed cut is valid.
|
||||
- Leave material at slot ends and finish slot edges last when selectors are available.
|
||||
+6
@@ -0,0 +1,6 @@
|
||||
# CDSL Bridge: Standard Hole Wizard
|
||||
|
||||
- Choose the hole subtype from function: clearance, blind, through, counterbore, countersink, or threaded intent.
|
||||
- Use `hole_wizard` only with its exact schema fields and a resolvable host face, or use a self-contained circular cut when the frame is explicit.
|
||||
- Positions are objects such as `{"mm": [u, v, w]}`; never emit bare coordinate arrays.
|
||||
- Thread metadata is retained as intent but current geometry is cylindrical; report the approximation.
|
||||
+6
@@ -0,0 +1,6 @@
|
||||
# CDSL Bridge: Symmetric Feature Layout
|
||||
|
||||
- Define a centerline, plane, or datum before placing symmetric features.
|
||||
- Use `pattern_mirror` for a mirrored source feature and `pattern_linear` for regular rows.
|
||||
- The source feature must execute first and its transformed selectors/frames must remain uniquely resolvable.
|
||||
- Never create symmetry by independently guessed coordinates when a pattern contract is available.
|
||||
+7
@@ -0,0 +1,7 @@
|
||||
# CDSL Bridge: Bearing Housing
|
||||
|
||||
- Use for a bearing seat, bearing support, pillow-block-like body, or bushing seat, not a rolling-bearing assembly.
|
||||
- Invariants: one bearing axis, distinct bearing seat and shaft-clearance diameters, a locating shoulder/depth, and a mounting base or flange.
|
||||
- Plan: base/support add -> coaxial shaft bore -> larger bearing pocket/counterbore -> mounting holes -> ribs/bosses -> late finishing.
|
||||
- Keep bearing outer diameter, seat depth, shaft clearance, center height, wall thickness, and mounting pattern separate.
|
||||
- Ribs must connect base and support; never add floating decorative ribs.
|
||||
@@ -0,0 +1,7 @@
|
||||
# CDSL Bridge: Flange
|
||||
|
||||
- Use for a circular flange, flanged sleeve, or coupling flange with a shared central axis.
|
||||
- Invariants: coaxial outside diameter, bore/hub, sealing land, and fastener holes on a pitch circle.
|
||||
- Plan: `revolve_add` for stepped axisymmetric bodies or circular `extrude_add_blind` -> coaxial bore -> one bolt-hole definition -> explicit circle set or supported repetition -> late finishing.
|
||||
- No circular-pattern atomic exists. Expand a bolt circle into explicit circles in one cut profile and record `expanded` in the audit.
|
||||
- Keep bolt-circle diameter, count, start angle, bore, and hub dimensions distinct.
|
||||
+7
@@ -0,0 +1,7 @@
|
||||
# CDSL Bridge: Hexagonal Nut
|
||||
|
||||
- Use for a hex body with a centered internal threaded-bore intent.
|
||||
- Invariants: across-flats, thickness, centered bore, and functional lead-in chamfers.
|
||||
- Plan: polygon/hex `extrude_add_blind` -> centered bore or `hole_wizard` -> thread audit -> finishing when selectors are valid.
|
||||
- Preserve across-flats separately from thread/bore diameter. Do not create a mating bolt.
|
||||
- Current runtime does not create helical threads; represent the bore and record `approximated: thread_geometry_omitted`.
|
||||
+7
@@ -0,0 +1,7 @@
|
||||
# CDSL Bridge: Mounting Bracket
|
||||
|
||||
- Use for an L/U/T bracket or a support with a base plus web, lug, tab, or boss.
|
||||
- Invariants: one coherent body, a load path from base to web/boss, datum-driven holes, and no invented fastener assembly.
|
||||
- Plan: base `extrude_add_blind` -> web/tab/boss add features -> clearance/slot cuts -> holes -> mirror/linear repetition -> late edge treatment.
|
||||
- Use named planar profiles and explicit workplanes. Keep holes after the support geometry so they do not float.
|
||||
- Do not flatten a 3D bracket into a plate or add fillets without a valid selector.
|
||||
+7
@@ -0,0 +1,7 @@
|
||||
# CDSL Bridge: Mounting Plate
|
||||
|
||||
- Use for a mostly uniform plate, base, adapter, fixture, or panel.
|
||||
- Invariants: a named rectangular/rounded profile, thickness, datum-based holes, and functional cutouts.
|
||||
- Plan: `extrude_add_blind` base -> `hole_wizard` or cut-hole features -> `pattern_linear`/`pattern_mirror` -> slots and pockets -> late `fillet`/`chamfer` only with selectors.
|
||||
- Prefer `rectangle`, `rectangle_with_fillets`, or `obround` profiles. Keep edge margins and pitch as named numeric parameters.
|
||||
- Rectangular hole groups use linear/mirror patterns; never use circular-pattern semantics for a plate.
|
||||
@@ -0,0 +1,7 @@
|
||||
# CDSL Bridge: Simple Shaft
|
||||
|
||||
- Use for a single cylindrical rod, pin, spacer, or stepped shaft, not an assembly.
|
||||
- Invariants: one main axis, one coherent solid, axial segment lengths/diameters, and secondary features referenced to the axis.
|
||||
- Use a circle plus `extrude_add_blind` for a uniform rod; use a closed side profile plus `revolve_add` for steps, shoulders, tapers, or grooves.
|
||||
- Add end holes, flats, slots, or keyway-like cuts only after the primary body. Finish last.
|
||||
- Do not invent bearings, gears, couplings, or real thread geometry when not requested.
|
||||
Reference in New Issue
Block a user