refactored geometry API: Vector replaces Position and Direction