They asked if it could be done
A customer asked me whether a folder of field photos could put themselves in the right place on a drawing.
I said probably.
That is not an answer. Nobody can plan around probably, or budget around probably, or repeat probably to their own boss. So I went and built it, and the next time we talked I had something running.
What it does
The photos can live in Forma Data Management or in Forma Build (which can place images on a map), wherever the field crew put them. The drawing opens in a custom viewer. Every photo that carries a location shows up as a marker sitting where the camera was standing.
The photo already knows
Here is the part that surprises people. The coordinates have been in the file since the shutter closed. A phone or a field camera typically writes latitude and longitude into the image itself, and then that information sits there for years while we sort photos into folders by hand and name them things like South\_Approach\_3.
We do not have to read the whole photo to get at it, either. That data lives at the front of the file, so the tool reads the first slice of each image and skips the rest. A folder of several hundred photos never has to come down the wire.
So the photos were never the hard part.
Which zone?
This was the hard part.
GPS gives latitude and longitude. A Civil 3D drawing is in State Plane, in feet, with eastings up in the millions. Going from one to the other is a routine conversion, but only once you know which zone the drawing is in.
Get the zone wrong and nothing breaks. That is the whole problem. Every photo lands a few thousand feet from where it belongs, all of them off in the same direction by the same amount, and the screen looks exactly as confident as it would if every one of them were right.
A wrong answer with good posture is worse than an error message. We can act on an error message.
So the tool asks three questions in order and stops at the first one that answers.
- Ask the drawing. A translated DWG carries its own coordinate system code in its properties, something like CA83-VI, and that maps straight to a known zone. The drawing knew all along.
- Ask where the model is standing. If the drawing does not say, the model's own coordinates are a clue. Numbers that large belong to only a few zones, so the field narrows fast.
- Ask the person. A dropdown, and no shame in it.
Then one rule that makes the ladder worth having. When the drawing names a zone that is not in the lookup, the tool says so and asks. It does not quietly substitute the nearest match. Refusing to answer is a feature, because the alternative is the confident wrong picture and no way to tell.
What I had wrong first
The first version only had the dropdown. I wrote down at the time that this could not be automated, that it had to stay a human decision, and I meant it.
That was true of what I knew then. What changed later was not the reasoning. It was noticing that the drawing had been carrying the answer the whole time and I had never thought to ask it.
Then they built their own
The customer saw it work and decided to build it themselves.
That is the job. The question on the table was whether this could be done, and it got answered with something running instead of four of us speculating in a meeting for an hour. Once you can watch it place a photo, it stops being a question and becomes a decision, and the decision was always going to be theirs.
I would rather hand someone a yes they can act on than a maybe they have to defend.
Be Better - Prove it's possible.