Skip to content

fix: transverse Member Design > Cross Bracing - CAD preview not updating when switching girders - #296

Open
garvit000 wants to merge 14 commits into
Aditya-Donde:devfrom
garvit000:cbcad-fix
Open

fix: transverse Member Design > Cross Bracing - CAD preview not updating when switching girders#296
garvit000 wants to merge 14 commits into
Aditya-Donde:devfrom
garvit000:cbcad-fix

Conversation

@garvit000

@garvit000 garvit000 commented Jul 12, 2026

Copy link
Copy Markdown
Collaborator

closes #200 and #201

@Nidhikhare12

Copy link
Copy Markdown
Collaborator
image the label shows "M1" when there are 9 cross bracings. It should show M1 to M9.

@Nidhikhare12

Copy link
Copy Markdown
Collaborator

@garvit000 please look into crossbracingforces.py file, and the input and output dictionary for cross bracing and end diaphragm. Whatever I am entering for custom design is not being reflected in the transverse member design dialog box. Can you fix that also?

@vanshika348

Copy link
Copy Markdown

I tested this PR and noticed the following:

  • The values displayed in the output are incorrect.
  • For specific input combinations, some output fields/boxes become blank.
Screenshot 2026-07-21 140447 Screenshot 2026-07-21 140311

@vanshika348

vanshika348 commented Jul 22, 2026

Copy link
Copy Markdown

check Type of Bracing, section designation also
Screenshot 2026-07-22 195010
Screenshot 2026-07-22 195023

…r Design

Cross-bracing UI selections were read from stale flat keys, so K-Bracing,
chord flags, spacing and custom sections were ignored and defaults shown.

- read cross-bracing config (type, chords, spacing) from the per-member
  input keys instead of dead flat keys; wire custom-mode sections into the
  Osdag design runs
- read chord enable flags and section designations per girder pair (G1-G2
  may differ from G2-G3) and per chord (top vs bottom can differ)
- populate the bottom-chord output properties from its own section
- interpret Yes/No checkbox values via as_bool (bool("No") was truthy, so
  unchecked chords displayed as checked)
- coerce Osdag capacity/efficiency/slenderness to float to stop a
  format crash when they return as strings
deck_t_mm = float(inp[KEY_TS_DECK_THICKNESS])
wc_t_m = float(inp[KEY_WC_THICKNESS]) / 1000.0 # wearing course thickness (m)
cb_spacing_m = float(inp.get(KEY_MP_CB_SPACING) or 3.0) # longitudinal cross-bracing spacing (m)
from osdagbridge.core.bridge_types.plate_girder.plategirderbridge import resolve_cb_value

@Nidhikhare12 Nidhikhare12 Jul 30, 2026

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

remove resolve cb value function from here if not needed

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

without that it fails to get correct spacing for each girder pair

# falls back to the representative (first) girder — see resolve_girder_value().
from osdagbridge.core.bridge_types.plate_girder.plategirderbridge import (
resolve_girder_value as _gv,
resolve_cb_value as _cbv,

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

remove resolve cb value function from here if not needed

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.

Output Dock > Transverse Member Design > Cross Bracing - CAD preview does not update when selecting girder G2–G3

3 participants