I am back at the CAD desk doing some freelance work and I have a client who wants all text in the drawing to be rotated for "right reading", meaning all text is rotated so it is read left to right when viewing from the bottom edge of the sheet and left to right when viewed from the right edge of the sheet.
What this means is all text will be rotated between -45 (315) and 134.9999... If a piece of text is rotated to 135 degrees, it should automatically flip to 315.
In the picture below, I think you can see what I mean. From left to right in a counter-clockwise direction is 315, 0, 45, 90, 134.99... Less than 315 and the text should rotate along its center axis to [Angle]-180. If the angle is greater than 134.99... it should rotate along its center axis to [Angle]+180.
In my dynamic blocks I have locked the attributes and rotated them with a rotate polar action when the geometry the text is adjacent to is rotated ... but I'd like to manipulate the attributes (and text) to never, under any circumstance, be rotated between 135 and 314.9999....
For now I am managing this with an attribute editor and manually changing the rotation angle, but it would be nice to have it automated so whenever I change the block parameter, the text is rotated with this constraint in mind.