diff --git a/src/cg/testing.ts b/src/cg/testing.ts
index d20e5217eb7da99c9e1177f336e0fbd23c6daceb..60237e1e5f13e32f229ad02566bed663a777dd53 100644
--- a/src/cg/testing.ts
+++ b/src/cg/testing.ts
@@ -3,29 +3,23 @@ import { vecNormalize } from "./utils";
 import { vecLength } from "./utils";
 import { vecDotProduct } from "./utils";
 import { vecAngle } from "./utils";
+import { vecCrossProduct } from "./utils";
 
 const pg = new Playground();
 
 // Some vectors
 const v = [1,0,1]
-const w = [0,0,2]
+const w = [0,2,2]
 
-const vNormalized = vecNormalize(v);
-const wNormalized = vecNormalize(w);
-
-const dotProduct = vecDotProduct(v, w);
-const normalizedDotProduct = vecDotProduct(vNormalized, wNormalized);
+const cp = vecCrossProduct(w, v);
 
 // Visualize
 pg.gridXZ(); // Grid
 
 pg.visVector(v,{color:"orange",label:"V"});
 pg.visVector(w,{color:"red",label:"W"});
+pg.visVector(cp,{color:"grey",label:"crossproduct"})
 
 console.log("v length:" + vecLength(v));
 console.log("w length:" + vecLength(w));
-console.log("dotProduct:" + dotProduct);
-console.log("vnormalized length:" + vecLength(vNormalized));
-console.log("wnormalized length:" + vecLength(wNormalized));
-console.log("normalizedDotProduct:" + normalizedDotProduct);
-console.log("angle v w:" + vecAngle(v, w));
\ No newline at end of file
+console.log("normalized dotProduct:" + vecDotProduct(vecNormalize(v), vecNormalize(w)));
diff --git a/src/cg/utils.ts b/src/cg/utils.ts
index 9582fe45c1930bcbec773f0fa0fa33e22199c978..fc005a4714f1f925216311876e718f89355e7200 100644
--- a/src/cg/utils.ts
+++ b/src/cg/utils.ts
@@ -62,4 +62,14 @@ export function vecAngle(vecOne: Array<number>, vecTwo: Array<number>){
     let degrees = radiant * 180 / Math.PI;
     return degrees;
 }
+
+export function vecCrossProduct(vecOne: Array<number>, vecTwo: Array<number>){
+    let crossProduct : Array<number> = new Array;
+
+    crossProduct[0] = vecOne[1]*vecTwo[2] - vecOne[2]*vecTwo[1];
+    crossProduct[1] = vecOne[2]*vecTwo[0] - vecOne[0]*vecTwo[2];
+    crossProduct[2] = vecOne[0]*vecTwo[1] - vecOne[1]*vecTwo[0];
+
+    return crossProduct;
+}
 //
\ No newline at end of file