I was looking closely at your block and you have some small layout errors. The right side of the frame is not horizontally inline with the left and so, the distance1parameter is slightly skewed. Also, the rectangle that forms your door is not square at the swing side.
As far as which of the three options to use, I would not use the two stretches on the arc as the arc geometry does not remain exact. The independent scale linked to distance1 or the chained parameter both work fine. I'd probably go with the independent scale if the block is having more actions added as chained parameters can sometimes cause issues when more actions are added to the block.
If the swing angles are incremental, then I would use visibility states. I haven't come up with a good solution for non-incremental swing angles. It can be done with constraints, but then making the door size adjustable is problematic.