diff --git a/lib/draught/point.rb b/lib/draught/point.rb
index <HASH>..<HASH> 100644
--- a/lib/draught/point.rb
+++ b/lib/draught/point.rb
@@ -27,7 +27,7 @@ module Draught
     end
 
     def translation_to(point)
-      Vector.new(point.x - x, point.y - y)
+      Vector.translation_between(self, point)
     end
 
     def to_matrix
diff --git a/spec/draught/point_spec.rb b/spec/draught/point_spec.rb
index <HASH>..<HASH> 100644
--- a/spec/draught/point_spec.rb
+++ b/spec/draught/point_spec.rb
@@ -38,7 +38,7 @@ module Draught
     end
 
     describe "manipulations in space" do
-      specify "a Point can be translated using a second Point to produce a new Point" do
+      specify "a Point can be translated using a Vector to produce a new Point" do
         translation = Vector.new(1,2)
 
         expect(subject.translate(translation)).to eq(Point.new(2,4))
@@ -50,7 +50,7 @@ module Draught
 
       specify "a Point can be transformed by a lambda-like object which takes the point and returns a new one" do
         transformer = ->(point) {
-          point.translate(Vector.new(1,1))
+          Point.new(point.x + 1, point.y + 1)
         }
 
         expect(subject.transform(transformer)).to eq(Point.new(2,3))
Point spec readability tweak & clean use of Vector

Tweak Point specs to clean spec title after moving to Vectors for
translation.

Use Vector.translation_between in #translate_to now it exists.