New Triangle with a replaced expression and optional meta updates.
Usage
Source
Triangle.with_expr( expr, **meta_changes, )