Added more geometry functions