This function converts an array of coordinates in one SRF to an equivalent
array of coordinates in another SRF.
SE_COORD_EXTENDED_SOURCE_COORD - if the operation succeeded, however one or more source coordinates fell within the "extended" range of the source SRF. In this case, all of the coordinates in dest_coord_array are set to the appropriate operation result.
SE_COORD_EXTENDED_DEST_COORD - if the operation succeeded, however one or more source coordinates after being converted fell within the "extended" range for the destination SRF, e.g. a GD coordinate converted to a UTM SRF and falling just outside the specified UTM zone, but not so far outside as to become invalid. In this case, all of the coordinates in dest_coord_array are set to the appropriate operation result.
SE_COORD_EXTENDED_SOURCE_AND_DEST_COORD - if the operation succeeded, however one or more source coordinates fell within the "extended" range of the source SRF, and after being converted also fell within the "extended" range for the destination SRF. In this case, all of the coordinates in dest_coord_array are set to the appropriate operation result.
NOTE: if either (SE_COORD_EXTENDED_SOURCE_COORD and SE_COORD_EXTENDED_DEST_COORD) or SE_COORD_EXTENDED_SOURCE_AND_DEST_COORD occurs then SE_COORD_EXTENDED_SOURCE_AND_DEST_COORD will be returned, else either SE_COORD_EXTENDED_SOURCE_COORD or SE_COORD_EXTENDED_DEST_COORD will be returned accordingly
SE_COORD_FAILURE - if the coordinate operation failed for reasons unspecified. In this case, *dest_coord_array is left UNCHANGED.
SE_COORD_UNSUPPORTED - if the coordinate operation (conversion and/or transformation) is unsupported. In this case, *dest_coord_array is left UNCHANGED.
SE_COORD_INVALID_SRF_PAIR - if convert_params_ptr was NULL or invalid or if coord_op_params_ptr was NULL or invalid. In this case, *dest_coord_array is left UNCHANGED.
SE_COORD_INVALID_SOURCE_COORD - There are two situations when this
condition is returned:
SE_COORD_INVALID_DEST_COORD - if dest_coord_array is NULL, or points to an array containing a coordinate which after being converted is invalid for for the destination SRF, e.g. a GD coordinate of latitude 85 degrees to a UTM SRF. In this case, *dest_coord_array is left UNCHANGED. If the dest_coord_array was not NULL, then the invalid coordinate(s) can be identified by repeatedly calling SE_ConvertCoordToGivenSystem(), once for each coordinate in the array, and examining the status code for each operation.
| extern SE_COORD_STATUS_CODE_ENUM | ||||
| SRM_ConvertCoordArray | ||||
| ( | ||||
| const | SE_CONVERT_COORD_SYSTEM_PAIR | convert_params_ptr, | (notes) | |
| SE_PINT32 | array_size, | (notes) | ||
| const | SE_COORD | * | source_coord_array, | (notes) |
| SE_COORD | * | dest_coord_array | (notes) | |
| ); | ||||
a pointer to the optimized coordinate operations parameters.
the number of entries in the source coord array and the dest coord array (both arrays must have the same number of entries)
the array of incoming coordinates, the coordinates to convert
the array where the converted coordinates will be stored. This can be the same location/array that source_coord_array points to, but it does not have to be.