fix(examples): redesign curve-bevel-arc as a horseshoe magnet with field-line filings - #277
Merged
Merged
Conversation
…eld-line filings The old hero was one plain rose tube lying on the floor: programmer art that said nothing about why a capped, beveled Bezier curve matters. The checked curve is now staged as a round-bar horseshoe magnet: red enamel with ground-steel pole ends (one material keyed on object-space Y, so it stays a single curve datablock). Its two filled caps - the use_fill_caps witness - are the pole faces, turned to the camera, where an uncapped build would show hollow pipe ends. Paper clips are beveled Bezier curves too (FREE handles, straight legs plus quarter-circle bends) lying along the field lines, and iron filings trace those lines as exact circular arcs between the poles. The check is unchanged (same constants, same exits); only the object transform changes, after the check. The render path gains the asset-quality gate (exit 11). gallery_asset_quality now measures curve objects as parts (edge90 on the evaluated tessellation, freed with to_mesh_clear), and the asset-sheet panel keeps curve objects, so a curve-built asset is measured and shown instead of silently skipped. No existing caller passes a curve object; prop-origin-transform's floors are identical before and after. Co-Authored-By: Claude Opus 5.5 (1M context) <[email protected]> Signed-off-by: TMHSDigital <[email protected]>
Union of asset-sheet SELECT rows; generated gallery pages regenerated. Co-Authored-By: Claude Opus 5.5 (1M context) <[email protected]> Signed-off-by: TMHSDigital <[email protected]>
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.
What changed and why
The gallery review called the old hero programmer art: one plain rose tube lying on the floor. This PR redesigns the render. The check does not change.
The checked curve (8 Bezier points,
bevel_depth0.15,use_fill_caps) is now staged as a round-bar horseshoe magnet lying on the floor with its open end toward the camera:use_fill_capswitness, and they face the camera. An uncapped build would show hollow pipe ends in exactly that spot.FREEhandles, with straight legs and quarter-circle bends at the 4/3·tan(π/8) handle length. Each clip lies along the field line that leaves its pole.Shared-tooling change (small, additive):
examples/gallery_asset_quality.pynow counts curve objects as hero parts. It checks naming, materials, and edge90; edge90 runs on the depsgraph-evaluated tessellation, which is freed withto_mesh_clear().scripts/asset_sheet_panel.pynow keeps curve objects.Before / after
docs/gallery/contact-sheets/curve-bevel-arc-contact-sheet.webpdocs/gallery/asset-sheets/curve-bevel-arc.webpdocs/gallery/assets/curve-bevel-arc-hero.webp.Gate numbers (5.2.1 LTS)
Framing: fill x=0.759, y=0.478 (band 0.70–0.90). Margins: L 0.153, R 0.059, B 0.150, T 0.078.
framing_ok.Asset quality:
MagnetEnamelAndPoles@0.25aq_okContact sheet (luma / stage / warmth / sat):
Asset sheet verdict: borderline, reviewer call. The finish holds up next to the references: two-tone enamel/steel, clean bevels, and designed clips. By part count and silhouette it is the simplest object in the lineup, because a horseshoe magnet is a simple product. It is not sloppier than the references, but it is the least complex.
Hero drift:
measure_hero_drift.py --only curve-bevel-arc: mean_abs 0.0036, verdict matches.Proven by live run
Local binaries:
E:\Blender-Developer-Tools\.scratch\blender-{5.2.1,5.1.2,4.5.11}-windows-x64\blender.exe, reportingBlender 5.2.1 LTS,Blender 5.1.2,Blender 4.5.11 LTS.points=8 bevel=0.15 caps=True eval_verts=1044 eval_faces=1028 z=-0.000..0.300 x_span=3.292.tests/smoke/run_example.pygives[PASS]on all three.--no-caps: exit 6 (use_fill_caps is False) on all three.scripts/render_hero.py.BezierCurve. The render path exited 11 withaq_naming default_names=['BezierCurve'] FAIL, then I restored the name. With the old helper the curve was invisible to the floors, so this probe could not have failed.build_gallery.pywas re-run after rebasing on main. I read the generated<img alt>indocs/gallery/index.htmlanddocs/gallery/curve-bevel-arc/index.htmland both show the new sentence.Established by inspection only
🤖 Generated with Claude Code