# Local Transforms and Pushing or Pulling Geographic Coordinate Systems to or from Reference Attachments

You can calculate the geographic coordinate system for a model by correctly positioning a reference attachment that has a GCS and "pulling" the GCS from that reference attachment. Similarly, you can "push" the GCS in a model to its attached references. To do this, the reference must meet following conditions:

- The true scale option is turned on and the reference is attached with scale factor of 1.0.
- Rotation is about the Z axis only.
- Reference is not reflected.
- Reference is not attached with the camera on.

If these conditions are met, a GCS for a reference attachment can be obtained from the GCS in the master file, or vice versa. If the reference is not rotated you can simply copy the GCS from one to the other; otherwise you need to calculate it. In Promis.e V8i (SELECTseries 3) and earlier versions, when calculating a GCS, an Azimuthal Equal Area Geographic Coordinate System centered on the area of interest was calculated. While that gave good results, using the new Helmert local transform capability gives you the exact results. In addition, the elevation of the reference can be retained in the z offset of the local transform, which was not possible previously.

When two models use the same base geographic coordinate system with the only difference being their local transforms, Promis.e can calculate an exact linear transform between the two models. Therefore, the mathematically intensive geographic reprojection operation for references that are attached with the geographic reprojection attach method is not required. Promis.e detects this condition and uses the much more efficient linear transform. It means that all the models in a particular project can be geographically referenced exactly without any approximation as long as they all use the same base geographic coordinate with the correct local transform.