Here what I found, for perspective cameras, we calculate this distance as “cameraMagnitudeFromLookAtPoint = 6.28f / tanf( fieldOfViewRadians * 0.5f )”. 6.28f is a unitless ratio; mapping this to real world units like cm depends on this size of the whole 3D scene in document units.
A couple other constants & facts that may figure into camera calculations:
• No matter what the file format values are for a perspective camera, we impose a min FOV of 0.01 radians, and a max FOV of (Pi – 0.01) radians.
• We estimate the bounds of the shapes the camera is looking at in the projection space z-volume, and if these scene bounds fall behind the camera, we will nudge the camera backwards a little bit behind the min z-extent of that scene. The min distance we keep from the scene contents is 2% of the z-volume. This nudging won’t happen much in practice but is there to avoid the camera ending up inside the view frustum or scene geometry being clipped out of view.
• One of our initial design goals was that when 3D settings are applied to a 2D shape, it uses defaults and logic that make the shape occupy exactly the same space in 3D as it did in 2D. Similarly, our ambient & directional lights mainly try to balance the shape lighting so that a flat surface has a similar color in 3D as it did in 2D.
Let me know that answers the questions