Is there a good way to transfer coordinates from one image to another?

Yes, i saw that. I have tried a lot of dragging variations. Nothing of those worked. But ok, i will repeat all editing on those files, using Geosetter, because i still can't extract the information, from where exactly to drag things to where. The help file isn't very clear about that.

"When you are editing the metadata for one or more files in the metadata pane or the separate dialog, you can drag-and-drop another file over the properties list. If you drag with the left button, a default set of properties will be copied; dragging with the right mouse button displays a popup menu that lets you choose which properties you want to copy from the dropped file."

That seems clear to me. You drag another file to the metadata panel using the left or right mouse buttons. Using the right button will give you a menu.

Ok, i will try to explain, but have to repeat myself: The left file display has the coordinates. So i right click that file, dragging it over to the meta data panel. But it doesn't makle sense, since i drag the left panel's metadata to the meta panel, where the coordinates are already there! Ok, the will try the same with the right file display, but that doesn't make sense either, because i have no coords in the right panel. It only would make sense, if i could drag thise coords to the panel, with them staying there, then changing to the empty side, then dragging them back. Or, if we had two meta panels.

Just one question, did you try this yourself?

Put the file you want to edit in the metadata panel.

Drag the file you want to copy from to it.

Ok, i give up. It does not work! If i put a file from the right side (no coords) into the meta pane, then try to drag from the left, focus changes to the left side, & thus the contents of the meta panel accordingly.

There is no way to trick the metapanel into not noticing, that i try to fetch the coordinates from the other side.

It sounds like you are clicking the file to select it, then releasing the mouse button, then clicking again to drag it.

You have to click and drag the file, all in one action, without releasing the mouse button in between.

Sorry, i don't understand. All i can do, & i do not release the mouse button, is to drag from

full to full (existing coords in the file list at the left to the existing coordinates in the meta panel right. Deosn't make sense, to copy the coordinates over itself


empty to empty (drag & dropping no coordinates to the empty field in the meta panel.

It would only work, if: i can select one file in the right display (no coordinates!), then LOCK that meta panel, change sides (meta panel still shows the empty fields), grab the metadata from the left, & drop it on the empty & locked metapanel on the right.

Is this thing on the right the meta panel we're talking about?

The right side shows the files with no coordinates. I wish, the meta panel would stay that way (empty GPS fields) when i try to drag over the file (with coordinates) from the left pane.

Thanks Leo. So it has to be in the same file display, in order to work. I think, that i have to rename the second set of images temporarily, since they have identical namesat the moment. I have accidently edited the unprocessed original files, but meant to work on the files that were edited already. I will try that.

Correct, same file display (or a file display in a separate window will also work).

Activating the dual file display, or another tab, in the same window that has the metadata panel open will cause the metadata panel to load a different file before the drag happens.

A post was split to a new topic: Bluetooth Question

I came across this task again. Sorry, this is a big PITA. Can't work like this, i don't know, what to drag from where. Please make a usable solution. The video didn't help much either.

Meanwhile: i will have to make screenshot the coords from each image, and type them in one by one in the destination images. Also, it's not very convenient to have three single coords to carry over. One general "copy all coordinates" would have been the much better solution.

It still works the same way it did before. Alternatively you could write a script to do it. That's the best we can offer.

The easiest solution to this, assuming you need to copy GPS info from one file to multiple files (not sure what you're actually trying to achieve), is to use the builtin SetAttr command to read the GPS information:

SetAttr META "copyfrom:11,{dlgopen}"

Select all the files which you would like to have GPS information copied into. In other words, your destination image files.

When you click the button containing the command above it will prompt you with a file request dialog from which you can select your source image file (this can be anywhere).

Once that's done the command will automatically populate the GPS information into your destination image files using the data in your source file.

Not perfect and may not be what you're trying to do. If you are actually wanting to copy GPS info from multiple source files to multiple destination files with identical names then you will need to write a script as @Jon has said.

If you don't know how to configure a toolbar button then How to use buttons and scripts from this forum will help - check the Raw Commands section of that post.

Be careful, you might be entered into the German DAU awards 2020 :wink:

Here are three quick scripts that copy (from the first selected file), show (in the logs) and paste (to all selected files) GPS coordinates. To see the currently available data in the status bar use this code: {var:glob:gpsStatusBar}.

Copy GPS

function OnClick(clickData) {
    var cmd = clickData.func.command;
    var tab = clickData.func.sourcetab;
    cmd.deselect = false;

    if (tab.selected_files.count == 0) return;

    var fileMeta = tab.selected_files(0).metadata;
    if (fileMeta != 'image') return;

    var lat = fileMeta.image.latitude;
    var lon = fileMeta.image.longitude;
    var alt = fileMeta.image.altitude;

    if (typeof lat != 'number') lat = 0;
    if (typeof lon != 'number') lon = 0;
    if (typeof alt != 'number') alt = 0;

    DOpus.Vars.Set('lat') = lat;
    DOpus.Vars.Set('lon') = lon;
    DOpus.Vars.Set('alt') = alt;
    DOpus.Vars.Set('gpsStatusBar') = lat.toFixed(1) + '/' + lon.toFixed(1) + '/' + alt.toFixed(1); // {var:glob:gpsStatusBar}

Show GPS

function OnClick(clickData) {
    var cmd = clickData.func.command;
    cmd.RunCommand('Set UTILITY=otherlog');

    DOpus.Output('lat: ' + DOpus.Vars.Get('lat'));
    DOpus.Output('lon: ' + DOpus.Vars.Get('lon'));
    DOpus.Output('alt: ' + DOpus.Vars.Get('alt'));
    DOpus.Output('gpsStatusBar: ' + DOpus.Vars.Get('gpsStatusBar'));

Paste GPS

function OnClick(clickData) {
    var cmd = clickData.func.command;
    cmd.deselect = false;

    var lat = DOpus.Vars.Get('lat');
    var lon = DOpus.Vars.Get('lon');
    var alt = DOpus.Vars.Get('alt');

    if (typeof lat != 'number') lat = 0;
    if (typeof lon != 'number') lon = 0;
    if (typeof alt != 'number') alt = 0;

    cmd.RunCommand('SetAttr META gpslatitude:' + lat + ' gpslongitude:' + lon + ' gpsaltitude:' + alt);

Copy GPS.dcf (1.7 KB)
Show GPS.dcf (989 Bytes)
Paste GPS.dcf (1.1 KB)


Thanks Jon. Most of Opus is great, of course, but i found this a bit complicated. I'm looking forward to try out the scripts below. I found, that i tend to forget stuff in Opus, i didn't use for a long time or using it on rare accasions, as it happened now.

That looks promising, already. As i have mentioned, this was a rare usecase, so i stumbled across this issue. For further cases of this kind, i think i will get along with single metadata transfers. I will give your commands a try, thanks.

Thanks too, lxp, it's good to have yet another version. I will try the new code as soon as i resume my work on old images, which i found to have missing GPS data. Since i can look up lots of reference locations, i can transfer the coordinates from those images. Your status bar code looks also very handy, i will try that right away. And yes, you are right about that, i must have been candidate for the German DAU awards several times already, i guess, which makes me a bit proud. It's always good to have plenty of room left for improvements.


1 Like