An apparatus 64 for determining the position and orientation of a remote end 62 of a boroscope 60 comprises a sensor (66) located at a remote end 62 of the boroscope 60. The sensor produces signals having orientation data, gravitational data or velocity data. A measurement device 68 measures the length of the boroscope 60 inserted through an aperture 52, 56 into a body 10. The sensor sends the orientation data, gravitational data or velocity data to a processor 70 and the measurement device 68 sends a signal indicating the length of the boroscope 60 inserted into the body 10 to the processor 70. The processor 70 determines from the length of the boroscope 60 inserted into the body 10 and the orientation, gravitational or velocity data the three dimensional coordinate and the orientation of the remote end 62 of the boroscope 60 within the body 10. The body 10 may be an assembled apparatus, e.g. an engine, a nuclear reactor, a steam turbine, a heat exchanger or an electrical generator.