This paper discusses the theory and algorithmic design of the CADD (clustering algorithm based on object density and direction) algorithm. This algorithm seeks to harness the respective advantages of the k-means and DENCLUE algorithms. Clustering results are illustrated using both a simple data set and one from the geological domain. Results indicate that CADD is robust in that automatically determines the number K of clusters, and is capable of identifying clusters of multiple shapes and sizes.