2dpoint added and some refactoring