Piezoresistive Strain Gauge Rosette (2D): Flamant Contact-Stress Field

This is the 2D counterpart of the piezoresistive strain-gauge rosette simulator. Instead of assuming a uniform strain field and letting you dial it in directly, this version computes the strain from a real elasticity problem: a line load pressed into the edge of a semi-infinite plate, solved in closed form by the classical Flamant solution for a concentrated 2D contact load. Dragging the probe point through the resulting stress field — visualized as a live heatmap — changes what a 45° rosette bonded at that point actually reads, because the field itself is non-uniform: directly beneath the load it is pure compression, while off to the side shear grows and the principal directions rotate. The panel converts the local stress to strain using the chosen material's elastic constants, feeds it through the same three-gauge rosette math as the 3D model, and draws a live Mohr's-circle construction so the principal strains and their orientation come from a real graphical/analytic method rather than a readout alone.