wizard_plan_points#
Normalize Wall Wizard plan/elevation table rows for
generateMultiSegmentWall().
Normalize Wall Wizard Plan/Elevation table rows for generateMultiSegmentWall.
- Desktop model (one row per vertex):
Plan coordinate: X, Y Elevation coordinate: Top, Bottom
The elevation pair is NOT a second XY / start-end segment endpoint. Preferred AI/API shape:
{
"plan": {"x": 12, "y": 5},
"elevation": {"top": 2.4, "bottom": 0}
}
- rswall.wizard_plan_points.normalize_wizard_plan_points(plan_points)#
Normalize Wall Wizard vertices into canonical wire dicts.
Preferred (self-explanatory for LLMs):
{"plan": {"x": 12, "y": 5}, "elevation": {"top": 2.4, "bottom": 0}}
- Also accepted:
flat named keys (
x/PlanX,top/elevationTop, …)4-number rows
[planX, planY, elevTop, elevBottom](legacy / CSV order)
- Rejected with a clear error:
[[x,y], [a,b]](pair-of-XY / start-end / elevation-as-XY mistakes)bare 2-number rows