The calculated distance (air line) between Odivelas and Portimão is approximately 120 miles respectively 192 kilometers.
By car or train, the actual journey to Portimão is certainly longer, as only the direct route (as the crow flies) between Odivelas and Portimão has been calculated here.