Probably because if someone is on the sand it would be sur and if someone is in a place nearby it would be ĉe . I am not sure however because many native speakers use at when they are inside a place.
"On" would make sense in English but so would "at". They don't quite mean the same thing but are close enough. "On" doesn't make more sense but is certainly more usual in the dialect of English that I speak.
You can never translate prepositions between languages just like that, there are always places where they're not used the same.
What is the difference between "apud" and "ĉe"? Both seem to have the meaning "at" in English.
Ĉe is "at" or "near". It can also mean "in the home of".
Apud is "next to".
Consider the phrase:
- Mi sidas apud vi ĉe la tablo.
I would not recommend using "apud" for "at the table". I found a few examples of that, but it strikes me as odd - possibly archaic. Sometimes it's clear that the sense is "next to the table" ("standing next to the table") and other times it does seem that the author was trying to say "ĉe".
PIV clarifies that the difference is the same as between "super" and "sur" - which to me means that "ĉe" is closer -- as if touching.