The calculated distance (air line) between Oliveira do Douro and Odivelas is approximately 164 miles respectively 264 kilometers.
By car or train, the actual journey to Odivelas is certainly longer, as only the direct route (as the crow flies) between Oliveira do Douro and Odivelas has been calculated here.
Air line (approximately)
264 kilometers
143 nautical miles