Measuring small distances

I have a project that needs to be able to measure a sensors movement across a surface. Like an electronic tape measure, except I need resolution of .01 inch, or about .25mm. I believe a standard optical mouse has .001 resolution (1000 dpi?) but I'm looking for a discrete sensor to connect to an arduino.

A small wheel seems like a good start, and measuring the revolutions as it rolls over the surface, but I can't seem to get the resolution that I need. Thoughts?

Most (all?) of them have an electronic interface that people written Arduino code for.

I’d go with many - I have seen a number without.

Search for a LVDT http://en.wikipedia.org/wiki/Linear_variable_differential_transformer http://www.metrolog.net/transdutores/lvdt.php?lang=en Second hand for about $100 on Ebay. These are often removed from machinery and recycled.

These are some great suggestions, thanks to everyone.

I'm trying to measure the distance i'm running a sensor over. like the digital tape measure here:

http://www.amazon.com/STRAIT-LINE-6041400CD-Rolling-Tape-300/dp/B0002VM7OO

(Except with higher resolution.)

I like the LVDT idea, and will look at how it could be adapted to rolling over a surface. But since I need to be in contact with the surface I'm traveling over, it seemed like something wheel based would be better.

Another thought I had was using something optical, but I can't be sure of the reflective properties of the surface.

I should have included this on my first post, my apologies. Any thoughts??

But since I need to be in contact with the surface I’m traveling over, it seemed like something wheel based would be better.

You probably need an optical shaft encoder:-
http://uk.farnell.com/jsp/search/results.jsp?N=0&Ntk=gensearch&Ntt=optical+shaft+encoder&Ntx=mode+matchallpartial&suggestions=false&ref=globalsearch&_requestid=244&isGoback=false&displaytext=&isRedirect=false