refactored Point->Vector