copylabel
Copys labels and blobs from one cube into another cube.
This application copys labels between cubes. Think long and hard before you use this program as there should hopefully be some way of doing what you want that doesn't require this. Be thoughtful and careful when using this program, it can be used to create cubes which are 100% invalid, incorrect, and wrong. This is especially true when the source file is not a cube but a simple Pvl.
With that out of the way, the label groups that can be copied by default are:
- Instrument
- Bandbin
- Kernels
- Mapping
- Radiometry
- Polygon
- CameraStatistics
There are effectively three input sets that the program may be run on, those are:
- The SOURCE cube matchs FROM cube in dimensions
- Limited safety checks can occur on this case regarding sizing.
- The SOURCE cube and FROM cube have matching sample and line scale
- Safety checks can occur on this case. A very major assumption is made using this case, that is, that the cube data in both cubes has the same four corners, it is just scaled differently. This case makes an AlphaCube group to make the cube valid, if the above stated fact isn't true, the cube is entirely invalid.
- The SOURCE file is a pvl or lbl file.
- No safety checks can be done in this case.
For the last details about how the program works, Groups are always expected to be inside an IsisCube Object, and Blobs to be copied always inside the base Pvl. The program will throw exceptions if it encounters conditions where it can't legitimately continue copying, however, in most cases it will run through. To do this, it makes several assumptions about desired behaviors. If a group or blob is requested, the application will try to copy it, if the application can't find the group, the app continues, if the group exists in the FROM cube, the app will delete it. For blobs, again, if the app can find it, the app will copy it over, if it can't be found, the app will continue.
Categories
History
Mackenzie Boyd | 2011-04-27 | Original version. |
Adam Paquette | 2022-08-02 | Added the ability to directly request objects from a cubes label to be copied to the new cube. Similarly to how the GROUPS argument functions. |