Terrain Analysis: Principles and Applications