From 701e7ba1f4c465fd3429966e7d45e315cc1ce01a Mon Sep 17 00:00:00 2001
From: Radek Oslejsek <oslejsek@fi.muni.cz>
Date: Sat, 20 Feb 2021 09:09:15 +0100
Subject: [PATCH] Visitors moved to the Comparison module

---
 .../analyst/symmetry/SymmetryEstimator.java   |   4 +-
 .../analyst/visitors/mesh}/BoundingBox.java   |   2 +-
 .../visitors/mesh}/BoundingBoxVisitor.java    |   3 +-
 .../mesh}/HausdorffDistMeshTriVisitor.java    |   2 +-
 .../mesh}/HausdorffDistMeshVisitor.java       |   3 +-
 .../visitors/mesh}/KdTreeBuildVisitor.java    |   3 +-
 .../visitors/mesh}/Point2MeshTriVisitor.java  |   2 +-
 .../visitors/mesh}/Point2MeshVisitor.java     |   3 +-
 .../visitors/mesh}/TriangleListVisitor.java   |   3 +-
 .../mesh}/BoundingBoxVisitorTest.java         |   5 +-
 .../HausdorffDistMeshTriVisitorTest.java      |   3 +-
 .../mesh}/HausdorffDistMeshVisitorTest.java   |   3 +-
 .../mesh}/KdTreeBuildVisitorTest.java         |   5 +-
 .../mesh}/Point2MeshTriVisitorTest.java       |   4 +-
 .../visitors/mesh}/Point2MeshVisitorTest.java |   2 +-
 .../mesh}/TriangleListVisitorTest.java        |   6 +-
 .../cz/fidentis/analyst/BeveledCube.mtl       |  10 +
 .../cz/fidentis/analyst/BeveledCube.obj       | 514 ++++++++++++++++++
 .../resources/cz/fidentis/analyst/Empty.mtl   |   2 +
 .../resources/cz/fidentis/analyst/Empty.obj   |   3 +
 .../cz/fidentis/analyst/IcoSphere-20.mtl      |  10 +
 .../cz/fidentis/analyst/IcoSphere-20.obj      |  80 +++
 .../fidentis/analyst/IcoSphere-Triangles.mtl  |  10 +
 .../fidentis/analyst/IcoSphere-Triangles.obj  | 271 +++++++++
 .../fidentis/analyst/IcoSphere-withQuad.mtl   |  10 +
 .../fidentis/analyst/IcoSphere-withQuad.obj   | 269 +++++++++
 .../cz/fidentis/analyst/MoreObjects.mtl       |  10 +
 .../cz/fidentis/analyst/MoreObjects.obj       | 318 +++++++++++
 .../resources/cz/fidentis/analyst/Plane.mtl   |  10 +
 .../resources/cz/fidentis/analyst/Plane.obj   |  16 +
 .../cz/fidentis/analyst/Tetrahedron.mtl       |  10 +
 .../cz/fidentis/analyst/Tetrahedron.obj       |  26 +
 MeshModel/jshell.history                      |   0
 MeshModel/pom.xml                             |   3 +-
 .../mesh/{visitors => }/MeshVisitor.java      |   2 +-
 .../fidentis/analyst/mesh/core/MeshFacet.java |   2 +-
 .../analyst/mesh/core/MeshFacetImpl.java      |   2 +-
 .../fidentis/analyst/mesh/core/MeshModel.java |   2 +-
 preferences.fip                               |   1 +
 39 files changed, 1603 insertions(+), 31 deletions(-)
 rename {MeshModel/src/main/java/cz/fidentis/analyst/mesh/visitors => Comparison/src/main/java/cz/fidentis/analyst/visitors/mesh}/BoundingBox.java (98%)
 rename {MeshModel/src/main/java/cz/fidentis/analyst/mesh/visitors => Comparison/src/main/java/cz/fidentis/analyst/visitors/mesh}/BoundingBoxVisitor.java (87%)
 rename {MeshModel/src/main/java/cz/fidentis/analyst/mesh/visitors => Comparison/src/main/java/cz/fidentis/analyst/visitors/mesh}/HausdorffDistMeshTriVisitor.java (98%)
 rename {MeshModel/src/main/java/cz/fidentis/analyst/mesh/visitors => Comparison/src/main/java/cz/fidentis/analyst/visitors/mesh}/HausdorffDistMeshVisitor.java (97%)
 rename {MeshModel/src/main/java/cz/fidentis/analyst/mesh/visitors => Comparison/src/main/java/cz/fidentis/analyst/visitors/mesh}/KdTreeBuildVisitor.java (87%)
 rename {MeshModel/src/main/java/cz/fidentis/analyst/mesh/visitors => Comparison/src/main/java/cz/fidentis/analyst/visitors/mesh}/Point2MeshTriVisitor.java (99%)
 rename {MeshModel/src/main/java/cz/fidentis/analyst/mesh/visitors => Comparison/src/main/java/cz/fidentis/analyst/visitors/mesh}/Point2MeshVisitor.java (98%)
 rename {MeshModel/src/main/java/cz/fidentis/analyst/mesh/visitors => Comparison/src/main/java/cz/fidentis/analyst/visitors/mesh}/TriangleListVisitor.java (90%)
 rename {MeshModel/src/test/java/cz/fidentis/analyst/mesh/visitors => Comparison/src/test/java/cz/fidentis/analyst/visitors/mesh}/BoundingBoxVisitorTest.java (89%)
 rename {MeshModel/src/test/java/cz/fidentis/analyst/mesh/visitors => Comparison/src/test/java/cz/fidentis/analyst/visitors/mesh}/HausdorffDistMeshTriVisitorTest.java (96%)
 rename {MeshModel/src/test/java/cz/fidentis/analyst/mesh/visitors => Comparison/src/test/java/cz/fidentis/analyst/visitors/mesh}/HausdorffDistMeshVisitorTest.java (96%)
 rename {MeshModel/src/test/java/cz/fidentis/analyst/mesh/visitors => Comparison/src/test/java/cz/fidentis/analyst/visitors/mesh}/KdTreeBuildVisitorTest.java (94%)
 rename {MeshModel/src/test/java/cz/fidentis/analyst/mesh/visitors => Comparison/src/test/java/cz/fidentis/analyst/visitors/mesh}/Point2MeshTriVisitorTest.java (99%)
 rename {MeshModel/src/test/java/cz/fidentis/analyst/mesh/visitors => Comparison/src/test/java/cz/fidentis/analyst/visitors/mesh}/Point2MeshVisitorTest.java (98%)
 rename {MeshModel/src/test/java/cz/fidentis/analyst/mesh/visitors => Comparison/src/test/java/cz/fidentis/analyst/visitors/mesh}/TriangleListVisitorTest.java (84%)
 create mode 100644 Comparison/src/test/resources/cz/fidentis/analyst/BeveledCube.mtl
 create mode 100644 Comparison/src/test/resources/cz/fidentis/analyst/BeveledCube.obj
 create mode 100644 Comparison/src/test/resources/cz/fidentis/analyst/Empty.mtl
 create mode 100644 Comparison/src/test/resources/cz/fidentis/analyst/Empty.obj
 create mode 100644 Comparison/src/test/resources/cz/fidentis/analyst/IcoSphere-20.mtl
 create mode 100644 Comparison/src/test/resources/cz/fidentis/analyst/IcoSphere-20.obj
 create mode 100644 Comparison/src/test/resources/cz/fidentis/analyst/IcoSphere-Triangles.mtl
 create mode 100644 Comparison/src/test/resources/cz/fidentis/analyst/IcoSphere-Triangles.obj
 create mode 100644 Comparison/src/test/resources/cz/fidentis/analyst/IcoSphere-withQuad.mtl
 create mode 100644 Comparison/src/test/resources/cz/fidentis/analyst/IcoSphere-withQuad.obj
 create mode 100644 Comparison/src/test/resources/cz/fidentis/analyst/MoreObjects.mtl
 create mode 100644 Comparison/src/test/resources/cz/fidentis/analyst/MoreObjects.obj
 create mode 100644 Comparison/src/test/resources/cz/fidentis/analyst/Plane.mtl
 create mode 100644 Comparison/src/test/resources/cz/fidentis/analyst/Plane.obj
 create mode 100644 Comparison/src/test/resources/cz/fidentis/analyst/Tetrahedron.mtl
 create mode 100644 Comparison/src/test/resources/cz/fidentis/analyst/Tetrahedron.obj
 create mode 100644 MeshModel/jshell.history
 rename MeshModel/src/main/java/cz/fidentis/analyst/mesh/{visitors => }/MeshVisitor.java (95%)
 create mode 100644 preferences.fip

diff --git a/Comparison/src/main/java/cz/fidentis/analyst/symmetry/SymmetryEstimator.java b/Comparison/src/main/java/cz/fidentis/analyst/symmetry/SymmetryEstimator.java
index 9b628834..f245e869 100644
--- a/Comparison/src/main/java/cz/fidentis/analyst/symmetry/SymmetryEstimator.java
+++ b/Comparison/src/main/java/cz/fidentis/analyst/symmetry/SymmetryEstimator.java
@@ -3,11 +3,11 @@ package cz.fidentis.analyst.symmetry;
 import cz.fidentis.analyst.mesh.core.CornerTableRow;
 import cz.fidentis.analyst.mesh.core.MeshFacet;
 import cz.fidentis.analyst.mesh.core.MeshPoint;
-import cz.fidentis.analyst.mesh.visitors.BoundingBox;
+import cz.fidentis.analyst.visitors.mesh.BoundingBox;
 import cz.fidentis.analyst.mesh.core.MeshFacetImpl;
 import cz.fidentis.analyst.mesh.core.MeshPointImpl;
 import cz.fidentis.analyst.mesh.core.MeshTriangle;
-import cz.fidentis.analyst.mesh.visitors.BoundingBoxVisitor;
+import cz.fidentis.analyst.visitors.mesh.BoundingBoxVisitor;
 import java.util.ArrayList;
 import java.util.Collections;
 import java.util.List;
diff --git a/MeshModel/src/main/java/cz/fidentis/analyst/mesh/visitors/BoundingBox.java b/Comparison/src/main/java/cz/fidentis/analyst/visitors/mesh/BoundingBox.java
similarity index 98%
rename from MeshModel/src/main/java/cz/fidentis/analyst/mesh/visitors/BoundingBox.java
rename to Comparison/src/main/java/cz/fidentis/analyst/visitors/mesh/BoundingBox.java
index 4f683737..6f3048c1 100644
--- a/MeshModel/src/main/java/cz/fidentis/analyst/mesh/visitors/BoundingBox.java
+++ b/Comparison/src/main/java/cz/fidentis/analyst/visitors/mesh/BoundingBox.java
@@ -1,4 +1,4 @@
-package cz.fidentis.analyst.mesh.visitors;
+package cz.fidentis.analyst.visitors.mesh;
 
 import cz.fidentis.analyst.mesh.core.MeshPoint;
 import cz.fidentis.analyst.mesh.core.MeshPointImpl;
diff --git a/MeshModel/src/main/java/cz/fidentis/analyst/mesh/visitors/BoundingBoxVisitor.java b/Comparison/src/main/java/cz/fidentis/analyst/visitors/mesh/BoundingBoxVisitor.java
similarity index 87%
rename from MeshModel/src/main/java/cz/fidentis/analyst/mesh/visitors/BoundingBoxVisitor.java
rename to Comparison/src/main/java/cz/fidentis/analyst/visitors/mesh/BoundingBoxVisitor.java
index fa3f8b79..25451855 100644
--- a/MeshModel/src/main/java/cz/fidentis/analyst/mesh/visitors/BoundingBoxVisitor.java
+++ b/Comparison/src/main/java/cz/fidentis/analyst/visitors/mesh/BoundingBoxVisitor.java
@@ -1,5 +1,6 @@
-package cz.fidentis.analyst.mesh.visitors;
+package cz.fidentis.analyst.visitors.mesh;
 
+import cz.fidentis.analyst.mesh.MeshVisitor;
 import cz.fidentis.analyst.mesh.core.MeshFacet;
 
 /**
diff --git a/MeshModel/src/main/java/cz/fidentis/analyst/mesh/visitors/HausdorffDistMeshTriVisitor.java b/Comparison/src/main/java/cz/fidentis/analyst/visitors/mesh/HausdorffDistMeshTriVisitor.java
similarity index 98%
rename from MeshModel/src/main/java/cz/fidentis/analyst/mesh/visitors/HausdorffDistMeshTriVisitor.java
rename to Comparison/src/main/java/cz/fidentis/analyst/visitors/mesh/HausdorffDistMeshTriVisitor.java
index 881a4bd7..e9befdb6 100644
--- a/MeshModel/src/main/java/cz/fidentis/analyst/mesh/visitors/HausdorffDistMeshTriVisitor.java
+++ b/Comparison/src/main/java/cz/fidentis/analyst/visitors/mesh/HausdorffDistMeshTriVisitor.java
@@ -1,4 +1,4 @@
-package cz.fidentis.analyst.mesh.visitors;
+package cz.fidentis.analyst.visitors.mesh;
 
 import cz.fidentis.analyst.mesh.core.MeshFacet;
 import cz.fidentis.analyst.mesh.core.MeshPoint;
diff --git a/MeshModel/src/main/java/cz/fidentis/analyst/mesh/visitors/HausdorffDistMeshVisitor.java b/Comparison/src/main/java/cz/fidentis/analyst/visitors/mesh/HausdorffDistMeshVisitor.java
similarity index 97%
rename from MeshModel/src/main/java/cz/fidentis/analyst/mesh/visitors/HausdorffDistMeshVisitor.java
rename to Comparison/src/main/java/cz/fidentis/analyst/visitors/mesh/HausdorffDistMeshVisitor.java
index 10f26a75..ef40c2d2 100644
--- a/MeshModel/src/main/java/cz/fidentis/analyst/mesh/visitors/HausdorffDistMeshVisitor.java
+++ b/Comparison/src/main/java/cz/fidentis/analyst/visitors/mesh/HausdorffDistMeshVisitor.java
@@ -1,5 +1,6 @@
-package cz.fidentis.analyst.mesh.visitors;
+package cz.fidentis.analyst.visitors.mesh;
 
+import cz.fidentis.analyst.mesh.MeshVisitor;
 import cz.fidentis.analyst.mesh.core.MeshFacet;
 import cz.fidentis.analyst.mesh.core.MeshPoint;
 import java.util.ArrayList;
diff --git a/MeshModel/src/main/java/cz/fidentis/analyst/mesh/visitors/KdTreeBuildVisitor.java b/Comparison/src/main/java/cz/fidentis/analyst/visitors/mesh/KdTreeBuildVisitor.java
similarity index 87%
rename from MeshModel/src/main/java/cz/fidentis/analyst/mesh/visitors/KdTreeBuildVisitor.java
rename to Comparison/src/main/java/cz/fidentis/analyst/visitors/mesh/KdTreeBuildVisitor.java
index fe696ea2..faee3525 100644
--- a/MeshModel/src/main/java/cz/fidentis/analyst/mesh/visitors/KdTreeBuildVisitor.java
+++ b/Comparison/src/main/java/cz/fidentis/analyst/visitors/mesh/KdTreeBuildVisitor.java
@@ -1,5 +1,6 @@
-package cz.fidentis.analyst.mesh.visitors;
+package cz.fidentis.analyst.visitors.mesh;
 
+import cz.fidentis.analyst.mesh.MeshVisitor;
 import cz.fidentis.analyst.kdtree.KdTreeImpl;
 
 import cz.fidentis.analyst.mesh.core.MeshFacet;
diff --git a/MeshModel/src/main/java/cz/fidentis/analyst/mesh/visitors/Point2MeshTriVisitor.java b/Comparison/src/main/java/cz/fidentis/analyst/visitors/mesh/Point2MeshTriVisitor.java
similarity index 99%
rename from MeshModel/src/main/java/cz/fidentis/analyst/mesh/visitors/Point2MeshTriVisitor.java
rename to Comparison/src/main/java/cz/fidentis/analyst/visitors/mesh/Point2MeshTriVisitor.java
index 7c8ed4fa..050f68cb 100644
--- a/MeshModel/src/main/java/cz/fidentis/analyst/mesh/visitors/Point2MeshTriVisitor.java
+++ b/Comparison/src/main/java/cz/fidentis/analyst/visitors/mesh/Point2MeshTriVisitor.java
@@ -1,4 +1,4 @@
-package cz.fidentis.analyst.mesh.visitors;
+package cz.fidentis.analyst.visitors.mesh;
 
 import cz.fidentis.analyst.mesh.core.MeshFacet;
 import cz.fidentis.analyst.mesh.core.MeshPoint;
diff --git a/MeshModel/src/main/java/cz/fidentis/analyst/mesh/visitors/Point2MeshVisitor.java b/Comparison/src/main/java/cz/fidentis/analyst/visitors/mesh/Point2MeshVisitor.java
similarity index 98%
rename from MeshModel/src/main/java/cz/fidentis/analyst/mesh/visitors/Point2MeshVisitor.java
rename to Comparison/src/main/java/cz/fidentis/analyst/visitors/mesh/Point2MeshVisitor.java
index c0c718fa..5208e7e2 100644
--- a/MeshModel/src/main/java/cz/fidentis/analyst/mesh/visitors/Point2MeshVisitor.java
+++ b/Comparison/src/main/java/cz/fidentis/analyst/visitors/mesh/Point2MeshVisitor.java
@@ -1,5 +1,6 @@
-package cz.fidentis.analyst.mesh.visitors;
+package cz.fidentis.analyst.visitors.mesh;
 
+import cz.fidentis.analyst.mesh.MeshVisitor;
 import cz.fidentis.analyst.mesh.core.MeshFacet;
 import cz.fidentis.analyst.mesh.core.MeshPoint;
 import cz.fidentis.analyst.mesh.core.MeshPointImpl;
diff --git a/MeshModel/src/main/java/cz/fidentis/analyst/mesh/visitors/TriangleListVisitor.java b/Comparison/src/main/java/cz/fidentis/analyst/visitors/mesh/TriangleListVisitor.java
similarity index 90%
rename from MeshModel/src/main/java/cz/fidentis/analyst/mesh/visitors/TriangleListVisitor.java
rename to Comparison/src/main/java/cz/fidentis/analyst/visitors/mesh/TriangleListVisitor.java
index 2608f700..bad7f8f9 100644
--- a/MeshModel/src/main/java/cz/fidentis/analyst/mesh/visitors/TriangleListVisitor.java
+++ b/Comparison/src/main/java/cz/fidentis/analyst/visitors/mesh/TriangleListVisitor.java
@@ -1,5 +1,6 @@
-package cz.fidentis.analyst.mesh.visitors;
+package cz.fidentis.analyst.visitors.mesh;
 
+import cz.fidentis.analyst.mesh.MeshVisitor;
 import cz.fidentis.analyst.mesh.core.MeshFacet;
 import cz.fidentis.analyst.mesh.core.MeshTriangle;
 import java.util.ArrayList;
diff --git a/MeshModel/src/test/java/cz/fidentis/analyst/mesh/visitors/BoundingBoxVisitorTest.java b/Comparison/src/test/java/cz/fidentis/analyst/visitors/mesh/BoundingBoxVisitorTest.java
similarity index 89%
rename from MeshModel/src/test/java/cz/fidentis/analyst/mesh/visitors/BoundingBoxVisitorTest.java
rename to Comparison/src/test/java/cz/fidentis/analyst/visitors/mesh/BoundingBoxVisitorTest.java
index 87abc48d..f4ba298e 100644
--- a/MeshModel/src/test/java/cz/fidentis/analyst/mesh/visitors/BoundingBoxVisitorTest.java
+++ b/Comparison/src/test/java/cz/fidentis/analyst/visitors/mesh/BoundingBoxVisitorTest.java
@@ -1,6 +1,5 @@
-package cz.fidentis.analyst.mesh.visitors;
+package cz.fidentis.analyst.visitors.mesh;
 
-import cz.fidentis.analyst.mesh.visitors.BoundingBoxVisitor;
 import cz.fidentis.analyst.mesh.core.MeshModel;
 import cz.fidentis.analyst.mesh.io.MeshObjLoader;
 import java.io.File;
@@ -16,7 +15,7 @@ import static org.junit.jupiter.api.Assertions.*;
  */
 public class BoundingBoxVisitorTest {
     
-    Path testFileDirectory = Paths.get("src", "test", "resources", "cz", "fidentis", "analyst", "mesh", "io");
+    Path testFileDirectory = Paths.get("src", "test", "resources", "cz", "fidentis", "analyst");
     
     @Test
     void icoSphereTest() throws IOException {
diff --git a/MeshModel/src/test/java/cz/fidentis/analyst/mesh/visitors/HausdorffDistMeshTriVisitorTest.java b/Comparison/src/test/java/cz/fidentis/analyst/visitors/mesh/HausdorffDistMeshTriVisitorTest.java
similarity index 96%
rename from MeshModel/src/test/java/cz/fidentis/analyst/mesh/visitors/HausdorffDistMeshTriVisitorTest.java
rename to Comparison/src/test/java/cz/fidentis/analyst/visitors/mesh/HausdorffDistMeshTriVisitorTest.java
index 73b6a884..6f6b4264 100644
--- a/MeshModel/src/test/java/cz/fidentis/analyst/mesh/visitors/HausdorffDistMeshTriVisitorTest.java
+++ b/Comparison/src/test/java/cz/fidentis/analyst/visitors/mesh/HausdorffDistMeshTriVisitorTest.java
@@ -1,5 +1,6 @@
-package cz.fidentis.analyst.mesh.visitors;
+package cz.fidentis.analyst.visitors.mesh;
 
+import cz.fidentis.analyst.visitors.mesh.HausdorffDistMeshTriVisitor;
 import cz.fidentis.analyst.mesh.core.CornerTableRow;
 import cz.fidentis.analyst.mesh.core.MeshFacet;
 import cz.fidentis.analyst.mesh.core.MeshFacetImpl;
diff --git a/MeshModel/src/test/java/cz/fidentis/analyst/mesh/visitors/HausdorffDistMeshVisitorTest.java b/Comparison/src/test/java/cz/fidentis/analyst/visitors/mesh/HausdorffDistMeshVisitorTest.java
similarity index 96%
rename from MeshModel/src/test/java/cz/fidentis/analyst/mesh/visitors/HausdorffDistMeshVisitorTest.java
rename to Comparison/src/test/java/cz/fidentis/analyst/visitors/mesh/HausdorffDistMeshVisitorTest.java
index c0e987fc..ffa1210c 100644
--- a/MeshModel/src/test/java/cz/fidentis/analyst/mesh/visitors/HausdorffDistMeshVisitorTest.java
+++ b/Comparison/src/test/java/cz/fidentis/analyst/visitors/mesh/HausdorffDistMeshVisitorTest.java
@@ -1,5 +1,6 @@
-package cz.fidentis.analyst.mesh.visitors;
+package cz.fidentis.analyst.visitors.mesh;
 
+import cz.fidentis.analyst.visitors.mesh.HausdorffDistMeshVisitor;
 import cz.fidentis.analyst.mesh.core.CornerTableRow;
 import cz.fidentis.analyst.mesh.core.MeshFacet;
 import cz.fidentis.analyst.mesh.core.MeshFacetImpl;
diff --git a/MeshModel/src/test/java/cz/fidentis/analyst/mesh/visitors/KdTreeBuildVisitorTest.java b/Comparison/src/test/java/cz/fidentis/analyst/visitors/mesh/KdTreeBuildVisitorTest.java
similarity index 94%
rename from MeshModel/src/test/java/cz/fidentis/analyst/mesh/visitors/KdTreeBuildVisitorTest.java
rename to Comparison/src/test/java/cz/fidentis/analyst/visitors/mesh/KdTreeBuildVisitorTest.java
index 8de5cebe..1d161e7b 100644
--- a/MeshModel/src/test/java/cz/fidentis/analyst/mesh/visitors/KdTreeBuildVisitorTest.java
+++ b/Comparison/src/test/java/cz/fidentis/analyst/visitors/mesh/KdTreeBuildVisitorTest.java
@@ -1,6 +1,5 @@
-package cz.fidentis.analyst.mesh.visitors;
+package cz.fidentis.analyst.visitors.mesh;
 
-import cz.fidentis.analyst.mesh.visitors.KdTreeBuildVisitor;
 import cz.fidentis.analyst.kdtree.KdNode;
 import cz.fidentis.analyst.mesh.core.*;
 import cz.fidentis.analyst.mesh.io.MeshObjLoader;
@@ -16,7 +15,7 @@ import static org.junit.jupiter.api.Assertions.*;
 
 public class KdTreeBuildVisitorTest {
 
-    Path testFileDirectory = Paths.get("src", "test", "resources", "cz", "fidentis", "analyst", "mesh", "io");
+    Path testFileDirectory = Paths.get("src", "test", "resources", "cz", "fidentis", "analyst");
 
     @Test
     void testCreateVisitorsAndGetKdTree() throws IOException {
diff --git a/MeshModel/src/test/java/cz/fidentis/analyst/mesh/visitors/Point2MeshTriVisitorTest.java b/Comparison/src/test/java/cz/fidentis/analyst/visitors/mesh/Point2MeshTriVisitorTest.java
similarity index 99%
rename from MeshModel/src/test/java/cz/fidentis/analyst/mesh/visitors/Point2MeshTriVisitorTest.java
rename to Comparison/src/test/java/cz/fidentis/analyst/visitors/mesh/Point2MeshTriVisitorTest.java
index 9fbaae3b..bb3a9905 100644
--- a/MeshModel/src/test/java/cz/fidentis/analyst/mesh/visitors/Point2MeshTriVisitorTest.java
+++ b/Comparison/src/test/java/cz/fidentis/analyst/visitors/mesh/Point2MeshTriVisitorTest.java
@@ -1,4 +1,4 @@
-package cz.fidentis.analyst.mesh.visitors;
+package cz.fidentis.analyst.visitors.mesh;
 
 import cz.fidentis.analyst.mesh.core.CornerTableRow;
 import cz.fidentis.analyst.mesh.core.MeshFacet;
@@ -6,10 +6,8 @@ import cz.fidentis.analyst.mesh.core.MeshFacetImpl;
 import cz.fidentis.analyst.mesh.core.MeshPoint;
 import cz.fidentis.analyst.mesh.core.MeshPointImpl;
 import cz.fidentis.analyst.mesh.core.MeshTriangle;
-import java.lang.reflect.Field;
 import java.lang.reflect.InvocationTargetException;
 import java.lang.reflect.Method;
-import java.util.ArrayList;
 import java.util.List;
 import javax.vecmath.Vector3d;
 import org.junit.jupiter.api.Assertions;
diff --git a/MeshModel/src/test/java/cz/fidentis/analyst/mesh/visitors/Point2MeshVisitorTest.java b/Comparison/src/test/java/cz/fidentis/analyst/visitors/mesh/Point2MeshVisitorTest.java
similarity index 98%
rename from MeshModel/src/test/java/cz/fidentis/analyst/mesh/visitors/Point2MeshVisitorTest.java
rename to Comparison/src/test/java/cz/fidentis/analyst/visitors/mesh/Point2MeshVisitorTest.java
index 1a53154a..7e60cf1d 100644
--- a/MeshModel/src/test/java/cz/fidentis/analyst/mesh/visitors/Point2MeshVisitorTest.java
+++ b/Comparison/src/test/java/cz/fidentis/analyst/visitors/mesh/Point2MeshVisitorTest.java
@@ -1,4 +1,4 @@
-package cz.fidentis.analyst.mesh.visitors;
+package cz.fidentis.analyst.visitors.mesh;
 
 import cz.fidentis.analyst.mesh.core.CornerTableRow;
 import cz.fidentis.analyst.mesh.core.MeshFacet;
diff --git a/MeshModel/src/test/java/cz/fidentis/analyst/mesh/visitors/TriangleListVisitorTest.java b/Comparison/src/test/java/cz/fidentis/analyst/visitors/mesh/TriangleListVisitorTest.java
similarity index 84%
rename from MeshModel/src/test/java/cz/fidentis/analyst/mesh/visitors/TriangleListVisitorTest.java
rename to Comparison/src/test/java/cz/fidentis/analyst/visitors/mesh/TriangleListVisitorTest.java
index 6f3dd6d8..2cb0a5ed 100644
--- a/MeshModel/src/test/java/cz/fidentis/analyst/mesh/visitors/TriangleListVisitorTest.java
+++ b/Comparison/src/test/java/cz/fidentis/analyst/visitors/mesh/TriangleListVisitorTest.java
@@ -1,9 +1,7 @@
-package cz.fidentis.analyst.mesh.visitors;
+package cz.fidentis.analyst.visitors.mesh;
 
-import cz.fidentis.analyst.mesh.visitors.TriangleListVisitor;
 import cz.fidentis.analyst.mesh.core.MeshModel;
 import cz.fidentis.analyst.mesh.io.MeshObjLoader;
-import cz.fidentis.analyst.mesh.io.MeshObjLoader;
 import java.io.File;
 import java.io.IOException;
 import java.nio.file.Path;
@@ -17,7 +15,7 @@ import static org.junit.jupiter.api.Assertions.*;
  */
 public class TriangleListVisitorTest {
     
-    Path testFileDirectory = Paths.get("src", "test", "resources", "cz", "fidentis", "analyst", "mesh", "io");
+    Path testFileDirectory = Paths.get("src", "test", "resources", "cz", "fidentis", "analyst");
     
     @Test
     void icoSphereTest() throws IOException {
diff --git a/Comparison/src/test/resources/cz/fidentis/analyst/BeveledCube.mtl b/Comparison/src/test/resources/cz/fidentis/analyst/BeveledCube.mtl
new file mode 100644
index 00000000..f231bdf4
--- /dev/null
+++ b/Comparison/src/test/resources/cz/fidentis/analyst/BeveledCube.mtl
@@ -0,0 +1,10 @@
+# Blender MTL File: 'None'
+# Material Count: 1
+
+newmtl None
+Ns 500
+Ka 0.8 0.8 0.8
+Kd 0.8 0.8 0.8
+Ks 0.8 0.8 0.8
+d 1
+illum 2
diff --git a/Comparison/src/test/resources/cz/fidentis/analyst/BeveledCube.obj b/Comparison/src/test/resources/cz/fidentis/analyst/BeveledCube.obj
new file mode 100644
index 00000000..dde80c54
--- /dev/null
+++ b/Comparison/src/test/resources/cz/fidentis/analyst/BeveledCube.obj
@@ -0,0 +1,514 @@
+# Blender v2.82 (sub 7) OBJ File: ''
+# www.blender.org
+mtllib BeveledCube.mtl
+o Cube_Cube.001
+v -1.000000 -1.000000 1.000000
+v -1.000000 1.000000 1.000000
+v -1.000000 -1.000000 -1.000000
+v -1.000000 1.000000 -1.000000
+v 1.000000 -1.000000 1.000000
+v 1.000000 1.000000 1.000000
+v -1.000000 -1.000000 -1.000000
+v 1.000000 -1.000000 1.000000
+v -0.960236 -1.000000 -0.999605
+v -0.920487 -1.000000 -0.998419
+v -0.880770 -1.000000 -0.996443
+v -0.841100 -1.000000 -0.993678
+v -0.801492 -1.000000 -0.990124
+v -0.761964 -1.000000 -0.985784
+v -0.722529 -1.000000 -0.980659
+v -0.683204 -1.000000 -0.974751
+v -0.644004 -1.000000 -0.968062
+v -0.604945 -1.000000 -0.960595
+v -0.566042 -1.000000 -0.952353
+v -0.527311 -1.000000 -0.943339
+v -0.488767 -1.000000 -0.933556
+v -0.450424 -1.000000 -0.923010
+v -0.412299 -1.000000 -0.911703
+v -0.374407 -1.000000 -0.899640
+v -0.336761 -1.000000 -0.886827
+v -0.299378 -1.000000 -0.873267
+v -0.262272 -1.000000 -0.858967
+v -0.225458 -1.000000 -0.843932
+v -0.188949 -1.000000 -0.828168
+v -0.152762 -1.000000 -0.811681
+v -0.116909 -1.000000 -0.794478
+v -0.081405 -1.000000 -0.776565
+v -0.046265 -1.000000 -0.757950
+v -0.011502 -1.000000 -0.738641
+v 0.022871 -1.000000 -0.718643
+v 0.056839 -1.000000 -0.697967
+v 0.090389 -1.000000 -0.676619
+v 0.123509 -1.000000 -0.654608
+v 0.156184 -1.000000 -0.631943
+v 0.188402 -1.000000 -0.608633
+v 0.220150 -1.000000 -0.584687
+v 0.251416 -1.000000 -0.560115
+v 0.282187 -1.000000 -0.534925
+v 0.312451 -1.000000 -0.509129
+v 0.342197 -1.000000 -0.482736
+v 0.371412 -1.000000 -0.455758
+v 0.400084 -1.000000 -0.428203
+v 0.428203 -1.000000 -0.400084
+v 0.455758 -1.000000 -0.371412
+v 0.482736 -1.000000 -0.342197
+v 0.509129 -1.000000 -0.312451
+v 0.534925 -1.000000 -0.282187
+v 0.560115 -1.000000 -0.251416
+v 0.584687 -1.000000 -0.220150
+v 0.608633 -1.000000 -0.188402
+v 0.631943 -1.000000 -0.156184
+v 0.654608 -1.000000 -0.123509
+v 0.676619 -1.000000 -0.090389
+v 0.697967 -1.000000 -0.056839
+v 0.718643 -1.000000 -0.022871
+v 0.738641 -1.000000 0.011502
+v 0.757950 -1.000000 0.046265
+v 0.776565 -1.000000 0.081405
+v 0.794478 -1.000000 0.116909
+v 0.811681 -1.000000 0.152762
+v 0.828168 -1.000000 0.188949
+v 0.843932 -1.000000 0.225458
+v 0.858967 -1.000000 0.262272
+v 0.873267 -1.000000 0.299378
+v 0.886827 -1.000000 0.336761
+v 0.899640 -1.000000 0.374407
+v 0.911703 -1.000000 0.412299
+v 0.923010 -1.000000 0.450424
+v 0.933556 -1.000000 0.488767
+v 0.943339 -1.000000 0.527311
+v 0.952353 -1.000000 0.566042
+v 0.960595 -1.000000 0.604945
+v 0.968062 -1.000000 0.644004
+v 0.974751 -1.000000 0.683204
+v 0.980659 -1.000000 0.722529
+v 0.985784 -1.000000 0.761964
+v 0.990124 -1.000000 0.801492
+v 0.993678 -1.000000 0.841100
+v 0.996443 -1.000000 0.880770
+v 0.998419 -1.000000 0.920487
+v 0.999605 -1.000000 0.960236
+v 1.000000 1.000000 1.000000
+v -1.000000 1.000000 -1.000000
+v 0.999605 1.000000 0.960236
+v 0.998419 1.000000 0.920487
+v 0.996443 1.000000 0.880770
+v 0.993678 1.000000 0.841100
+v 0.990124 1.000000 0.801492
+v 0.985784 1.000000 0.761964
+v 0.980659 1.000000 0.722529
+v 0.974751 1.000000 0.683204
+v 0.968062 1.000000 0.644004
+v 0.960595 1.000000 0.604945
+v 0.952353 1.000000 0.566042
+v 0.943339 1.000000 0.527311
+v 0.933556 1.000000 0.488767
+v 0.923010 1.000000 0.450424
+v 0.911703 1.000000 0.412299
+v 0.899640 1.000000 0.374407
+v 0.886827 1.000000 0.336761
+v 0.873267 1.000000 0.299378
+v 0.858967 1.000000 0.262272
+v 0.843932 1.000000 0.225458
+v 0.828168 1.000000 0.188949
+v 0.811681 1.000000 0.152762
+v 0.794478 1.000000 0.116909
+v 0.776565 1.000000 0.081405
+v 0.757950 1.000000 0.046265
+v 0.738641 1.000000 0.011502
+v 0.718643 1.000000 -0.022871
+v 0.697967 1.000000 -0.056839
+v 0.676619 1.000000 -0.090389
+v 0.654608 1.000000 -0.123509
+v 0.631943 1.000000 -0.156184
+v 0.608633 1.000000 -0.188402
+v 0.584687 1.000000 -0.220150
+v 0.560115 1.000000 -0.251416
+v 0.534925 1.000000 -0.282187
+v 0.509129 1.000000 -0.312451
+v 0.482736 1.000000 -0.342197
+v 0.455758 1.000000 -0.371412
+v 0.428203 1.000000 -0.400084
+v 0.400084 1.000000 -0.428203
+v 0.371412 1.000000 -0.455758
+v 0.342197 1.000000 -0.482736
+v 0.312451 1.000000 -0.509129
+v 0.282187 1.000000 -0.534925
+v 0.251416 1.000000 -0.560115
+v 0.220150 1.000000 -0.584687
+v 0.188402 1.000000 -0.608633
+v 0.156184 1.000000 -0.631943
+v 0.123509 1.000000 -0.654608
+v 0.090389 1.000000 -0.676619
+v 0.056839 1.000000 -0.697967
+v 0.022871 1.000000 -0.718643
+v -0.011502 1.000000 -0.738641
+v -0.046265 1.000000 -0.757950
+v -0.081405 1.000000 -0.776565
+v -0.116909 1.000000 -0.794478
+v -0.152762 1.000000 -0.811681
+v -0.188949 1.000000 -0.828168
+v -0.225458 1.000000 -0.843932
+v -0.262272 1.000000 -0.858967
+v -0.299378 1.000000 -0.873267
+v -0.336761 1.000000 -0.886827
+v -0.374407 1.000000 -0.899640
+v -0.412299 1.000000 -0.911703
+v -0.450424 1.000000 -0.923010
+v -0.488767 1.000000 -0.933556
+v -0.527311 1.000000 -0.943339
+v -0.566042 1.000000 -0.952353
+v -0.604945 1.000000 -0.960595
+v -0.644004 1.000000 -0.968062
+v -0.683204 1.000000 -0.974751
+v -0.722529 1.000000 -0.980659
+v -0.761964 1.000000 -0.985784
+v -0.801492 1.000000 -0.990124
+v -0.841100 1.000000 -0.993678
+v -0.880770 1.000000 -0.996443
+v -0.920487 1.000000 -0.998419
+v -0.960236 1.000000 -0.999605
+vt 0.375000 0.000000
+vt 0.625000 0.000000
+vt 0.625000 0.250000
+vt 0.375000 0.250000
+vt 0.375000 0.750000
+vt 0.625000 0.750000
+vt 0.625000 0.750000
+vt 0.375000 0.750000
+vt 0.625016 0.745029
+vt 0.625066 0.740061
+vt 0.625148 0.735096
+vt 0.625263 0.730138
+vt 0.625412 0.725187
+vt 0.625592 0.720245
+vt 0.625806 0.715316
+vt 0.626052 0.710401
+vt 0.626331 0.705500
+vt 0.626642 0.700618
+vt 0.626985 0.695755
+vt 0.627361 0.690914
+vt 0.627769 0.686096
+vt 0.628208 0.681303
+vt 0.628679 0.676537
+vt 0.629182 0.671801
+vt 0.629716 0.667095
+vt 0.630281 0.662422
+vt 0.630876 0.657784
+vt 0.631503 0.653182
+vt 0.632160 0.648619
+vt 0.632847 0.644095
+vt 0.633563 0.639614
+vt 0.634310 0.635176
+vt 0.635085 0.630783
+vt 0.635890 0.626438
+vt 0.636723 0.622141
+vt 0.637585 0.617895
+vt 0.638474 0.613701
+vt 0.639391 0.609561
+vt 0.640336 0.605477
+vt 0.641307 0.601450
+vt 0.642305 0.597481
+vt 0.643329 0.593573
+vt 0.644378 0.589727
+vt 0.645453 0.585944
+vt 0.646553 0.582225
+vt 0.647677 0.578574
+vt 0.648825 0.574989
+vt 0.649997 0.473832
+vt 0.651191 0.470294
+vt 0.652408 0.466736
+vt 0.653648 0.463157
+vt 0.654909 0.459560
+vt 0.656191 0.455947
+vt 0.657494 0.452317
+vt 0.658817 0.448674
+vt 0.660159 0.445018
+vt 0.661520 0.441350
+vt 0.662900 0.437673
+vt 0.664298 0.433988
+vt 0.665714 0.430296
+vt 0.667146 0.426598
+vt 0.668594 0.422897
+vt 0.670059 0.419193
+vt 0.671538 0.415488
+vt 0.673032 0.411783
+vt 0.674540 0.408081
+vt 0.676061 0.404381
+vt 0.677595 0.400687
+vt 0.679141 0.396999
+vt 0.680698 0.393319
+vt 0.682267 0.389648
+vt 0.683846 0.385987
+vt 0.685434 0.382339
+vt 0.687032 0.378705
+vt 0.688638 0.375085
+vt 0.690252 0.371482
+vt 0.691873 0.367896
+vt 0.693500 0.364330
+vt 0.695133 0.360785
+vt 0.696772 0.357262
+vt 0.698415 0.353762
+vt 0.700062 0.350287
+vt 0.701712 0.346838
+vt 0.703365 0.343417
+vt 0.705020 0.340025
+vt 0.706676 0.336663
+vt 0.875000 0.500000
+vt 0.875000 0.500000
+vt 0.875000 0.750000
+vt 0.625000 1.000000
+vt 0.375000 1.000000
+vt 0.625000 0.250000
+vt 0.375000 0.250000
+vt 0.374984 0.745029
+vt 0.374934 0.740061
+vt 0.374852 0.735096
+vt 0.374737 0.730138
+vt 0.374588 0.725187
+vt 0.374408 0.720245
+vt 0.374194 0.715316
+vt 0.373948 0.710401
+vt 0.373669 0.705500
+vt 0.373358 0.700618
+vt 0.373015 0.695755
+vt 0.372639 0.690914
+vt 0.372232 0.686096
+vt 0.371792 0.681303
+vt 0.371321 0.676537
+vt 0.370818 0.671801
+vt 0.370284 0.667095
+vt 0.369719 0.662422
+vt 0.369124 0.657784
+vt 0.368497 0.653182
+vt 0.367840 0.648619
+vt 0.367153 0.644095
+vt 0.366437 0.639614
+vt 0.365690 0.635176
+vt 0.364915 0.630783
+vt 0.364110 0.626438
+vt 0.363277 0.622141
+vt 0.362415 0.617895
+vt 0.361526 0.613701
+vt 0.360609 0.609561
+vt 0.359664 0.605477
+vt 0.358693 0.601450
+vt 0.357695 0.597481
+vt 0.356671 0.593573
+vt 0.355622 0.589727
+vt 0.354547 0.585944
+vt 0.353447 0.582225
+vt 0.352323 0.578574
+vt 0.351175 0.574989
+vt 0.350004 0.473832
+vt 0.348809 0.470294
+vt 0.347592 0.466736
+vt 0.346352 0.463157
+vt 0.345091 0.459560
+vt 0.343809 0.455947
+vt 0.342506 0.452317
+vt 0.341183 0.448674
+vt 0.339841 0.445018
+vt 0.338480 0.441350
+vt 0.337100 0.437673
+vt 0.335702 0.433988
+vt 0.334286 0.430296
+vt 0.332854 0.426598
+vt 0.331406 0.422897
+vt 0.329941 0.419193
+vt 0.328462 0.415488
+vt 0.326968 0.411783
+vt 0.325460 0.408081
+vt 0.323939 0.404381
+vt 0.322405 0.400687
+vt 0.320859 0.396999
+vt 0.319302 0.393319
+vt 0.317733 0.389648
+vt 0.316154 0.385987
+vt 0.314566 0.382339
+vt 0.312968 0.378705
+vt 0.311362 0.375085
+vt 0.309748 0.371482
+vt 0.308127 0.367896
+vt 0.306500 0.364330
+vt 0.304866 0.360785
+vt 0.303228 0.357262
+vt 0.301585 0.353762
+vt 0.299938 0.350287
+vt 0.298288 0.346838
+vt 0.296635 0.343417
+vt 0.294980 0.340025
+vt 0.293324 0.336663
+vt 0.125000 0.500000
+vt 0.125000 0.500000
+vt 0.125000 0.750000
+vn -1.0000 0.0000 0.0000
+vn 0.0000 0.0000 1.0000
+vn 0.0000 1.0000 -0.0000
+vn 1.0000 0.0000 -0.0099
+vn 0.9996 0.0000 -0.0298
+vn 0.9988 0.0000 -0.0497
+vn 0.9976 0.0000 -0.0695
+vn 0.9960 0.0000 -0.0894
+vn 0.9940 0.0000 -0.1091
+vn 0.9917 0.0000 -0.1289
+vn 0.9889 0.0000 -0.1486
+vn 0.9858 0.0000 -0.1682
+vn 0.9822 0.0000 -0.1878
+vn 0.9783 0.0000 -0.2073
+vn 0.9740 0.0000 -0.2267
+vn 0.9693 0.0000 -0.2460
+vn 0.9642 0.0000 -0.2652
+vn 0.9587 0.0000 -0.2843
+vn 0.9529 0.0000 -0.3033
+vn 0.9467 0.0000 -0.3222
+vn 0.9401 0.0000 -0.3410
+vn 0.9331 0.0000 -0.3596
+vn 0.9258 0.0000 -0.3781
+vn 0.9181 0.0000 -0.3964
+vn 0.9100 0.0000 -0.4146
+vn 0.9016 0.0000 -0.4326
+vn 0.8928 0.0000 -0.4504
+vn 0.8837 0.0000 -0.4681
+vn 0.8742 0.0000 -0.4856
+vn 0.8644 0.0000 -0.5029
+vn 0.8542 0.0000 -0.5200
+vn 0.8437 0.0000 -0.5368
+vn 0.8328 0.0000 -0.5535
+vn 0.8217 0.0000 -0.5699
+vn 0.8102 0.0000 -0.5862
+vn 0.7984 0.0000 -0.6022
+vn 0.7862 0.0000 -0.6179
+vn 0.7738 0.0000 -0.6334
+vn 0.7611 0.0000 -0.6487
+vn 0.7480 0.0000 -0.6637
+vn 0.7347 0.0000 -0.6784
+vn 0.7210 0.0000 -0.6929
+vn 0.7071 0.0000 -0.7071
+vn 0.6929 0.0000 -0.7210
+vn 0.6784 0.0000 -0.7347
+vn 0.6637 0.0000 -0.7480
+vn 0.6487 0.0000 -0.7611
+vn 0.6334 0.0000 -0.7738
+vn 0.6179 0.0000 -0.7862
+vn 0.6022 0.0000 -0.7984
+vn 0.5862 0.0000 -0.8102
+vn 0.5699 0.0000 -0.8217
+vn 0.5535 0.0000 -0.8328
+vn 0.5368 0.0000 -0.8437
+vn 0.5200 0.0000 -0.8542
+vn 0.5029 0.0000 -0.8644
+vn 0.4856 0.0000 -0.8742
+vn 0.4681 0.0000 -0.8837
+vn 0.4504 0.0000 -0.8928
+vn 0.4326 0.0000 -0.9016
+vn 0.4146 0.0000 -0.9100
+vn 0.3964 0.0000 -0.9181
+vn 0.3781 0.0000 -0.9258
+vn 0.3596 0.0000 -0.9331
+vn 0.3410 0.0000 -0.9401
+vn 0.3222 0.0000 -0.9467
+vn 0.3033 0.0000 -0.9529
+vn 0.2843 0.0000 -0.9587
+vn 0.2652 0.0000 -0.9642
+vn 0.2460 0.0000 -0.9693
+vn 0.2267 0.0000 -0.9740
+vn 0.2073 0.0000 -0.9783
+vn 0.1878 0.0000 -0.9822
+vn 0.1682 0.0000 -0.9858
+vn 0.1486 0.0000 -0.9889
+vn 0.1289 0.0000 -0.9917
+vn 0.1091 0.0000 -0.9940
+vn 0.0894 0.0000 -0.9960
+vn 0.0695 0.0000 -0.9976
+vn 0.0497 0.0000 -0.9988
+vn 0.0298 0.0000 -0.9996
+vn 0.0099 0.0000 -1.0000
+vn 0.0000 -1.0000 0.0000
+usemtl None
+s off
+f 1/1/1 2/2/1 4/3/1 3/4/1
+f 8/5/2 87/6/2 6/7/2 5/8/2
+f 87/6/3 89/9/3 90/10/3 91/11/3 92/12/3 93/13/3 94/14/3 95/15/3 96/16/3 97/17/3 98/18/3 99/19/3 100/20/3 101/21/3 102/22/3 103/23/3 104/24/3 105/25/3 106/26/3 107/27/3 108/28/3 109/29/3 110/30/3 111/31/3 112/32/3 113/33/3 114/34/3 115/35/3 116/36/3 117/37/3 118/38/3 119/39/3 120/40/3 121/41/3 122/42/3 123/43/3 124/44/3 125/45/3 126/46/3 127/47/3 128/48/3 129/49/3 130/50/3 131/51/3 132/52/3 133/53/3 134/54/3 135/55/3 136/56/3 137/57/3 138/58/3 139/59/3 140/60/3 141/61/3 142/62/3 143/63/3 144/64/3 145/65/3 146/66/3 147/67/3 148/68/3 149/69/3 150/70/3 151/71/3 152/72/3 153/73/3 154/74/3 155/75/3 156/76/3 157/77/3 158/78/3 159/79/3 160/80/3 161/81/3 162/82/3 163/83/3 164/84/3 165/85/3 166/86/3 88/87/3 4/88/3 2/89/3 6/7/3
+f 5/8/2 6/7/2 2/90/2 1/91/2
+f 3/4/2 4/3/2 88/92/2 7/93/2
+f 87/6/4 8/5/4 86/94/4 89/9/4
+f 89/9/5 86/94/5 85/95/5 90/10/5
+f 90/10/6 85/95/6 84/96/6 91/11/6
+f 91/11/7 84/96/7 83/97/7 92/12/7
+f 92/12/8 83/97/8 82/98/8 93/13/8
+f 93/13/9 82/98/9 81/99/9 94/14/9
+f 94/14/10 81/99/10 80/100/10 95/15/10
+f 95/15/11 80/100/11 79/101/11 96/16/11
+f 96/16/12 79/101/12 78/102/12 97/17/12
+f 97/17/13 78/102/13 77/103/13 98/18/13
+f 98/18/14 77/103/14 76/104/14 99/19/14
+f 99/19/15 76/104/15 75/105/15 100/20/15
+f 100/20/16 75/105/16 74/106/16 101/21/16
+f 101/21/17 74/106/17 73/107/17 102/22/17
+f 102/22/18 73/107/18 72/108/18 103/23/18
+f 103/23/19 72/108/19 71/109/19 104/24/19
+f 104/24/20 71/109/20 70/110/20 105/25/20
+f 105/25/21 70/110/21 69/111/21 106/26/21
+f 106/26/22 69/111/22 68/112/22 107/27/22
+f 107/27/23 68/112/23 67/113/23 108/28/23
+f 108/28/24 67/113/24 66/114/24 109/29/24
+f 109/29/25 66/114/25 65/115/25 110/30/25
+f 110/30/26 65/115/26 64/116/26 111/31/26
+f 111/31/27 64/116/27 63/117/27 112/32/27
+f 112/32/28 63/117/28 62/118/28 113/33/28
+f 113/33/29 62/118/29 61/119/29 114/34/29
+f 114/34/30 61/119/30 60/120/30 115/35/30
+f 115/35/31 60/120/31 59/121/31 116/36/31
+f 116/36/32 59/121/32 58/122/32 117/37/32
+f 117/37/33 58/122/33 57/123/33 118/38/33
+f 118/38/34 57/123/34 56/124/34 119/39/34
+f 119/39/35 56/124/35 55/125/35 120/40/35
+f 120/40/36 55/125/36 54/126/36 121/41/36
+f 121/41/37 54/126/37 53/127/37 122/42/37
+f 122/42/38 53/127/38 52/128/38 123/43/38
+f 123/43/39 52/128/39 51/129/39 124/44/39
+f 124/44/40 51/129/40 50/130/40 125/45/40
+f 125/45/41 50/130/41 49/131/41 126/46/41
+f 126/46/42 49/131/42 48/132/42 127/47/42
+f 127/47/43 48/132/43 47/133/43 128/48/43
+f 128/48/44 47/133/44 46/134/44 129/49/44
+f 129/49/45 46/134/45 45/135/45 130/50/45
+f 130/50/46 45/135/46 44/136/46 131/51/46
+f 131/51/47 44/136/47 43/137/47 132/52/47
+f 132/52/48 43/137/48 42/138/48 133/53/48
+f 133/53/49 42/138/49 41/139/49 134/54/49
+f 134/54/50 41/139/50 40/140/50 135/55/50
+f 135/55/51 40/140/51 39/141/51 136/56/51
+f 136/56/52 39/141/52 38/142/52 137/57/52
+f 137/57/53 38/142/53 37/143/53 138/58/53
+f 138/58/54 37/143/54 36/144/54 139/59/54
+f 139/59/55 36/144/55 35/145/55 140/60/55
+f 140/60/56 35/145/56 34/146/56 141/61/56
+f 141/61/57 34/146/57 33/147/57 142/62/57
+f 142/62/58 33/147/58 32/148/58 143/63/58
+f 143/63/59 32/148/59 31/149/59 144/64/59
+f 144/64/60 31/149/60 30/150/60 145/65/60
+f 145/65/61 30/150/61 29/151/61 146/66/61
+f 146/66/62 29/151/62 28/152/62 147/67/62
+f 147/67/63 28/152/63 27/153/63 148/68/63
+f 148/68/64 27/153/64 26/154/64 149/69/64
+f 149/69/65 26/154/65 25/155/65 150/70/65
+f 150/70/66 25/155/66 24/156/66 151/71/66
+f 151/71/67 24/156/67 23/157/67 152/72/67
+f 152/72/68 23/157/68 22/158/68 153/73/68
+f 153/73/69 22/158/69 21/159/69 154/74/69
+f 154/74/70 21/159/70 20/160/70 155/75/70
+f 155/75/71 20/160/71 19/161/71 156/76/71
+f 156/76/72 19/161/72 18/162/72 157/77/72
+f 157/77/73 18/162/73 17/163/73 158/78/73
+f 158/78/74 17/163/74 16/164/74 159/79/74
+f 159/79/75 16/164/75 15/165/75 160/80/75
+f 160/80/76 15/165/76 14/166/76 161/81/76
+f 161/81/77 14/166/77 13/167/77 162/82/77
+f 162/82/78 13/167/78 12/168/78 163/83/78
+f 163/83/79 12/168/79 11/169/79 164/84/79
+f 164/84/80 11/169/80 10/170/80 165/85/80
+f 165/85/81 10/170/81 9/171/81 166/86/81
+f 166/86/82 9/171/82 7/93/82 88/92/82
+f 3/172/83 7/173/83 9/171/83 10/170/83 11/169/83 12/168/83 13/167/83 14/166/83 15/165/83 16/164/83 17/163/83 18/162/83 19/161/83 20/160/83 21/159/83 22/158/83 23/157/83 24/156/83 25/155/83 26/154/83 27/153/83 28/152/83 29/151/83 30/150/83 31/149/83 32/148/83 33/147/83 34/146/83 35/145/83 36/144/83 37/143/83 38/142/83 39/141/83 40/140/83 41/139/83 42/138/83 43/137/83 44/136/83 45/135/83 46/134/83 47/133/83 48/132/83 49/131/83 50/130/83 51/129/83 52/128/83 53/127/83 54/126/83 55/125/83 56/124/83 57/123/83 58/122/83 59/121/83 60/120/83 61/119/83 62/118/83 63/117/83 64/116/83 65/115/83 66/114/83 67/113/83 68/112/83 69/111/83 70/110/83 71/109/83 72/108/83 73/107/83 74/106/83 75/105/83 76/104/83 77/103/83 78/102/83 79/101/83 80/100/83 81/99/83 82/98/83 83/97/83 84/96/83 85/95/83 86/94/83 8/5/83 5/8/83 1/174/83
diff --git a/Comparison/src/test/resources/cz/fidentis/analyst/Empty.mtl b/Comparison/src/test/resources/cz/fidentis/analyst/Empty.mtl
new file mode 100644
index 00000000..5b165d4a
--- /dev/null
+++ b/Comparison/src/test/resources/cz/fidentis/analyst/Empty.mtl
@@ -0,0 +1,2 @@
+# Blender MTL File: 'None'
+# Material Count: 0
diff --git a/Comparison/src/test/resources/cz/fidentis/analyst/Empty.obj b/Comparison/src/test/resources/cz/fidentis/analyst/Empty.obj
new file mode 100644
index 00000000..8e3f9227
--- /dev/null
+++ b/Comparison/src/test/resources/cz/fidentis/analyst/Empty.obj
@@ -0,0 +1,3 @@
+# Blender v2.82 (sub 7) OBJ File: ''
+# www.blender.org
+mtllib Empty.mtl
diff --git a/Comparison/src/test/resources/cz/fidentis/analyst/IcoSphere-20.mtl b/Comparison/src/test/resources/cz/fidentis/analyst/IcoSphere-20.mtl
new file mode 100644
index 00000000..f231bdf4
--- /dev/null
+++ b/Comparison/src/test/resources/cz/fidentis/analyst/IcoSphere-20.mtl
@@ -0,0 +1,10 @@
+# Blender MTL File: 'None'
+# Material Count: 1
+
+newmtl None
+Ns 500
+Ka 0.8 0.8 0.8
+Kd 0.8 0.8 0.8
+Ks 0.8 0.8 0.8
+d 1
+illum 2
diff --git a/Comparison/src/test/resources/cz/fidentis/analyst/IcoSphere-20.obj b/Comparison/src/test/resources/cz/fidentis/analyst/IcoSphere-20.obj
new file mode 100644
index 00000000..12bd1f52
--- /dev/null
+++ b/Comparison/src/test/resources/cz/fidentis/analyst/IcoSphere-20.obj
@@ -0,0 +1,80 @@
+# Blender v2.82 (sub 7) OBJ File: ''
+# www.blender.org
+mtllib IcoSphere-20.mtl
+o Icosphere
+v 0.000000 -1.000000 0.000000
+v 0.723600 -0.447215 0.525720
+v -0.276385 -0.447215 0.850640
+v -0.894425 -0.447215 0.000000
+v -0.276385 -0.447215 -0.850640
+v 0.723600 -0.447215 -0.525720
+v 0.276385 0.447215 0.850640
+v -0.723600 0.447215 0.525720
+v -0.723600 0.447215 -0.525720
+v 0.276385 0.447215 -0.850640
+v 0.894425 0.447215 0.000000
+v 0.000000 1.000000 0.000000
+vt 0.818181 0.000000
+vt 0.727272 0.157461
+vt 0.909090 0.157461
+vt 0.636363 0.000000
+vt 0.545454 0.157461
+vt 0.090909 0.000000
+vt 0.000000 0.157461
+vt 0.181818 0.157461
+vt 0.272727 0.000000
+vt 0.363636 0.157461
+vt 0.454545 0.000000
+vt 0.636363 0.314921
+vt 0.818181 0.314921
+vt 0.090909 0.314921
+vt 0.272727 0.314921
+vt 0.454545 0.314921
+vt 1.000000 0.314921
+vt 0.727272 0.472382
+vt 0.909090 0.472382
+vt 0.181818 0.472382
+vt 0.363636 0.472382
+vt 0.545454 0.472382
+vn 0.1876 -0.7947 0.5774
+vn 0.6071 -0.7947 0.0000
+vn -0.4911 -0.7947 0.3568
+vn -0.4911 -0.7947 -0.3568
+vn 0.1876 -0.7947 -0.5774
+vn 0.9822 -0.1876 0.0000
+vn 0.3035 -0.1876 0.9342
+vn -0.7946 -0.1876 0.5774
+vn -0.7946 -0.1876 -0.5774
+vn 0.3035 -0.1876 -0.9342
+vn 0.7946 0.1876 0.5774
+vn -0.3035 0.1876 0.9342
+vn -0.9822 0.1876 0.0000
+vn -0.3035 0.1876 -0.9342
+vn 0.7946 0.1876 -0.5774
+vn 0.4911 0.7947 0.3568
+vn -0.1876 0.7947 0.5774
+vn -0.6071 0.7947 0.0000
+vn -0.1876 0.7947 -0.5774
+vn 0.4911 0.7947 -0.3568
+usemtl None
+s off
+f 1/1/1 2/2/1 3/3/1
+f 2/2/2 1/4/2 6/5/2
+f 1/6/3 3/7/3 4/8/3
+f 1/9/4 4/8/4 5/10/4
+f 1/11/5 5/10/5 6/5/5
+f 2/2/6 6/5/6 11/12/6
+f 3/3/7 2/2/7 7/13/7
+f 4/8/8 3/7/8 8/14/8
+f 5/10/9 4/8/9 9/15/9
+f 6/5/10 5/10/10 10/16/10
+f 2/2/11 11/12/11 7/13/11
+f 3/3/12 7/13/12 8/17/12
+f 4/8/13 8/14/13 9/15/13
+f 5/10/14 9/15/14 10/16/14
+f 6/5/15 10/16/15 11/12/15
+f 7/13/16 11/12/16 12/18/16
+f 8/17/17 7/13/17 12/19/17
+f 9/15/18 8/14/18 12/20/18
+f 10/16/19 9/15/19 12/21/19
+f 11/12/20 10/16/20 12/22/20
diff --git a/Comparison/src/test/resources/cz/fidentis/analyst/IcoSphere-Triangles.mtl b/Comparison/src/test/resources/cz/fidentis/analyst/IcoSphere-Triangles.mtl
new file mode 100644
index 00000000..f231bdf4
--- /dev/null
+++ b/Comparison/src/test/resources/cz/fidentis/analyst/IcoSphere-Triangles.mtl
@@ -0,0 +1,10 @@
+# Blender MTL File: 'None'
+# Material Count: 1
+
+newmtl None
+Ns 500
+Ka 0.8 0.8 0.8
+Kd 0.8 0.8 0.8
+Ks 0.8 0.8 0.8
+d 1
+illum 2
diff --git a/Comparison/src/test/resources/cz/fidentis/analyst/IcoSphere-Triangles.obj b/Comparison/src/test/resources/cz/fidentis/analyst/IcoSphere-Triangles.obj
new file mode 100644
index 00000000..263afb47
--- /dev/null
+++ b/Comparison/src/test/resources/cz/fidentis/analyst/IcoSphere-Triangles.obj
@@ -0,0 +1,271 @@
+# Blender v2.82 (sub 7) OBJ File: ''
+# www.blender.org
+mtllib IcoSphere-Triangles.mtl
+o Icosphere
+v 0.000000 -1.000000 0.000000
+v 0.723607 -0.447220 0.525725
+v -0.276388 -0.447220 0.850649
+v -0.894426 -0.447216 0.000000
+v -0.276388 -0.447220 -0.850649
+v 0.723607 -0.447220 -0.525725
+v 0.276388 0.447220 0.850649
+v -0.723607 0.447220 0.525725
+v -0.723607 0.447220 -0.525725
+v 0.276388 0.447220 -0.850649
+v 0.894426 0.447216 0.000000
+v 0.000000 1.000000 0.000000
+v -0.162456 -0.850654 0.499995
+v 0.425323 -0.850654 0.309011
+v 0.262869 -0.525738 0.809012
+v 0.850648 -0.525736 0.000000
+v 0.425323 -0.850654 -0.309011
+v -0.525730 -0.850652 0.000000
+v -0.688189 -0.525736 0.499997
+v -0.162456 -0.850654 -0.499995
+v -0.688189 -0.525736 -0.499997
+v 0.262869 -0.525738 -0.809012
+v 0.951058 0.000000 0.309013
+v 0.951058 0.000000 -0.309013
+v 0.000000 0.000000 1.000000
+v 0.587786 0.000000 0.809017
+v -0.951058 0.000000 0.309013
+v -0.587786 0.000000 0.809017
+v -0.587786 0.000000 -0.809017
+v -0.951058 0.000000 -0.309013
+v 0.587786 0.000000 -0.809017
+v 0.000000 0.000000 -1.000000
+v 0.688189 0.525736 0.499997
+v -0.262869 0.525738 0.809012
+v -0.850648 0.525736 0.000000
+v -0.262869 0.525738 -0.809012
+v 0.688189 0.525736 -0.499997
+v 0.162456 0.850654 0.499995
+v 0.525730 0.850652 0.000000
+v -0.425323 0.850654 0.309011
+v -0.425323 0.850654 -0.309011
+v 0.162456 0.850654 -0.499995
+vt 0.818181 0.000000
+vt 0.772726 0.078731
+vt 0.863635 0.078731
+vt 0.727272 0.157461
+vt 0.681818 0.078731
+vt 0.636363 0.157461
+vt 0.090909 0.000000
+vt 0.045454 0.078731
+vt 0.136363 0.078731
+vt 0.272727 0.000000
+vt 0.227273 0.078731
+vt 0.318182 0.078731
+vt 0.454545 0.000000
+vt 0.409090 0.078731
+vt 0.500000 0.078731
+vt 0.681818 0.236191
+vt 0.909090 0.157461
+vt 0.818181 0.157461
+vt 0.863635 0.236191
+vt 0.181818 0.157461
+vt 0.090909 0.157461
+vt 0.136363 0.236191
+vt 0.363636 0.157461
+vt 0.272727 0.157461
+vt 0.318182 0.236191
+vt 0.545454 0.157461
+vt 0.454545 0.157461
+vt 0.500000 0.236191
+vt 0.772726 0.236191
+vt 0.954545 0.236191
+vt 0.227273 0.236191
+vt 0.409090 0.236191
+vt 0.590909 0.236191
+vt 0.818181 0.314921
+vt 0.727272 0.314921
+vt 0.772726 0.393651
+vt 1.000000 0.314921
+vt 0.909091 0.314921
+vt 0.954545 0.393651
+vt 0.272727 0.314921
+vt 0.181818 0.314921
+vt 0.227273 0.393651
+vt 0.454545 0.314921
+vt 0.363636 0.314921
+vt 0.409090 0.393651
+vt 0.636363 0.314921
+vt 0.545454 0.314921
+vt 0.590909 0.393651
+vt 0.500000 0.393651
+vt 0.545454 0.472382
+vt 0.318182 0.393651
+vt 0.363636 0.472382
+vt 0.136363 0.393651
+vt 0.181818 0.472382
+vt 0.090909 0.314921
+vt 0.863635 0.393651
+vt 0.909090 0.472382
+vt 0.681818 0.393651
+vt 0.727272 0.472382
+vt 0.045454 0.236191
+vt 0.000000 0.157461
+vt 0.590909 0.078731
+vt 0.636363 0.000000
+vn 0.1024 -0.9435 0.3151
+vn 0.7002 -0.6617 0.2680
+vn -0.2680 -0.9435 0.1947
+vn -0.2680 -0.9435 -0.1947
+vn 0.1024 -0.9435 -0.3151
+vn 0.9050 -0.3304 0.2680
+vn 0.0247 -0.3304 0.9435
+vn -0.8897 -0.3304 0.3151
+vn -0.5746 -0.3304 -0.7488
+vn 0.5346 -0.3304 -0.7779
+vn 0.8026 -0.1256 0.5831
+vn -0.3066 -0.1256 0.9435
+vn -0.9921 -0.1256 0.0000
+vn -0.3066 -0.1256 -0.9435
+vn 0.8026 -0.1256 -0.5831
+vn 0.4089 0.6617 0.6284
+vn -0.4713 0.6617 0.5831
+vn -0.7002 0.6617 -0.2680
+vn 0.0385 0.6617 -0.7488
+vn 0.7240 0.6617 -0.1947
+vn 0.2680 0.9435 -0.1947
+vn 0.4911 0.7947 -0.3568
+vn 0.4089 0.6617 -0.6284
+vn -0.1024 0.9435 -0.3151
+vn -0.1876 0.7947 -0.5773
+vn -0.4713 0.6617 -0.5831
+vn -0.3313 0.9435 0.0000
+vn -0.6071 0.7947 0.0000
+vn -0.7002 0.6617 0.2680
+vn -0.1024 0.9435 0.3151
+vn -0.1876 0.7947 0.5773
+vn 0.0385 0.6617 0.7488
+vn 0.2680 0.9435 0.1947
+vn 0.4911 0.7947 0.3568
+vn 0.7240 0.6617 0.1947
+vn 0.8897 0.3304 -0.3151
+vn 0.7947 0.1876 -0.5773
+vn 0.5746 0.3304 -0.7488
+vn -0.0247 0.3304 -0.9435
+vn -0.3035 0.1876 -0.9342
+vn -0.5346 0.3304 -0.7779
+vn -0.9050 0.3304 -0.2680
+vn -0.9822 0.1876 0.0000
+vn -0.9050 0.3304 0.2680
+vn -0.5346 0.3304 0.7779
+vn -0.3035 0.1876 0.9342
+vn -0.0247 0.3304 0.9435
+vn 0.5746 0.3304 0.7488
+vn 0.7947 0.1876 0.5773
+vn 0.8897 0.3304 0.3151
+vn 0.3066 0.1256 -0.9435
+vn 0.3035 -0.1876 -0.9342
+vn 0.0247 -0.3304 -0.9435
+vn -0.8026 0.1256 -0.5831
+vn -0.7947 -0.1876 -0.5773
+vn -0.8897 -0.3304 -0.3151
+vn -0.8026 0.1256 0.5831
+vn -0.7947 -0.1876 0.5773
+vn -0.5746 -0.3304 0.7488
+vn 0.3066 0.1256 0.9435
+vn 0.3035 -0.1876 0.9342
+vn 0.5346 -0.3304 0.7779
+vn 0.9921 0.1256 0.0000
+vn 0.9822 -0.1876 0.0000
+vn 0.9050 -0.3304 -0.2680
+vn 0.4713 -0.6617 -0.5831
+vn 0.1876 -0.7947 -0.5773
+vn -0.0385 -0.6617 -0.7488
+vn -0.4089 -0.6617 -0.6284
+vn -0.4911 -0.7947 -0.3568
+vn -0.7240 -0.6617 -0.1947
+vn -0.7240 -0.6617 0.1947
+vn -0.4911 -0.7947 0.3568
+vn -0.4089 -0.6617 0.6284
+vn 0.7002 -0.6617 -0.2680
+vn 0.6071 -0.7947 0.0000
+vn 0.3313 -0.9435 0.0000
+vn -0.0385 -0.6617 0.7488
+vn 0.1876 -0.7947 0.5773
+vn 0.4713 -0.6617 0.5831
+usemtl None
+s off
+f 1/1/1 14/2/1 13/3/1
+f 2/4/2 14/5/2 16/6/2
+f 1/7/3 13/8/3 18/9/3
+f 1/10/4 18/11/4 20/12/4
+f 1/13/5 20/14/5 17/15/5
+f 2/4/6 16/6/6 23/16/6
+f 3/17/7 15/18/7 25/19/7
+f 4/20/8 19/21/8 27/22/8
+f 5/23/9 21/24/9 29/25/9
+f 6/26/10 22/27/10 31/28/10
+f 2/4/11 23/16/11 26/29/11
+f 3/17/12 25/19/12 28/30/12
+f 4/20/13 27/22/13 30/31/13
+f 5/23/14 29/25/14 32/32/14
+f 6/26/15 31/28/15 24/33/15
+f 7/34/16 33/35/16 38/36/16
+f 8/37/17 34/38/17 40/39/17
+f 9/40/18 35/41/18 41/42/18
+f 10/43/19 36/44/19 42/45/19
+f 11/46/20 37/47/20 39/48/20
+f 39/48/21 42/49/21 12/50/21
+f 39/48/22 37/47/22 42/49/22
+f 37/47/23 10/43/23 42/49/23
+f 42/45/24 41/51/24 12/52/24
+f 42/45/25 36/44/25 41/51/25
+f 36/44/26 9/40/26 41/51/26
+f 41/42/27 40/53/27 12/54/27
+f 41/42/28 35/41/28 40/53/28
+f 35/41/29 8/55/29 40/53/29
+f 40/39/30 38/56/30 12/57/30
+f 40/39/31 34/38/31 38/56/31
+f 34/38/32 7/34/32 38/56/32
+f 38/36/33 39/58/33 12/59/33
+f 38/36/34 33/35/34 39/58/34
+f 33/35/35 11/46/35 39/58/35
+f 24/33/36 37/47/36 11/46/36
+f 24/33/37 31/28/37 37/47/37
+f 31/28/38 10/43/38 37/47/38
+f 32/32/39 36/44/39 10/43/39
+f 32/32/40 29/25/40 36/44/40
+f 29/25/41 9/40/41 36/44/41
+f 30/31/42 35/41/42 9/40/42
+f 30/31/43 27/22/43 35/41/43
+f 27/22/44 8/55/44 35/41/44
+f 28/30/45 34/38/45 8/37/45
+f 28/30/46 25/19/46 34/38/46
+f 25/19/47 7/34/47 34/38/47
+f 26/29/48 33/35/48 7/34/48
+f 26/29/49 23/16/49 33/35/49
+f 23/16/50 11/46/50 33/35/50
+f 31/28/51 32/32/51 10/43/51
+f 31/28/52 22/27/52 32/32/52
+f 22/27/53 5/23/53 32/32/53
+f 29/25/54 30/31/54 9/40/54
+f 29/25/55 21/24/55 30/31/55
+f 21/24/56 4/20/56 30/31/56
+f 27/22/57 28/60/57 8/55/57
+f 27/22/58 19/21/58 28/60/58
+f 19/21/59 3/61/59 28/60/59
+f 25/19/60 26/29/60 7/34/60
+f 25/19/61 15/18/61 26/29/61
+f 15/18/62 2/4/62 26/29/62
+f 23/16/63 24/33/63 11/46/63
+f 23/16/64 16/6/64 24/33/64
+f 16/6/65 6/26/65 24/33/65
+f 17/15/66 22/27/66 6/26/66
+f 17/15/67 20/14/67 22/27/67
+f 20/14/68 5/23/68 22/27/68
+f 20/12/69 21/24/69 5/23/69
+f 20/12/70 18/11/70 21/24/70
+f 18/11/71 4/20/71 21/24/71
+f 18/9/72 19/21/72 4/20/72
+f 18/9/73 13/8/73 19/21/73
+f 13/8/74 3/61/74 19/21/74
+f 16/6/75 17/62/75 6/26/75
+f 16/6/76 14/5/76 17/62/76
+f 14/5/77 1/63/77 17/62/77
+f 13/3/78 15/18/78 3/17/78
+f 13/3/79 14/2/79 15/18/79
+f 14/2/80 2/4/80 15/18/80
diff --git a/Comparison/src/test/resources/cz/fidentis/analyst/IcoSphere-withQuad.mtl b/Comparison/src/test/resources/cz/fidentis/analyst/IcoSphere-withQuad.mtl
new file mode 100644
index 00000000..f231bdf4
--- /dev/null
+++ b/Comparison/src/test/resources/cz/fidentis/analyst/IcoSphere-withQuad.mtl
@@ -0,0 +1,10 @@
+# Blender MTL File: 'None'
+# Material Count: 1
+
+newmtl None
+Ns 500
+Ka 0.8 0.8 0.8
+Kd 0.8 0.8 0.8
+Ks 0.8 0.8 0.8
+d 1
+illum 2
diff --git a/Comparison/src/test/resources/cz/fidentis/analyst/IcoSphere-withQuad.obj b/Comparison/src/test/resources/cz/fidentis/analyst/IcoSphere-withQuad.obj
new file mode 100644
index 00000000..2cb50f7d
--- /dev/null
+++ b/Comparison/src/test/resources/cz/fidentis/analyst/IcoSphere-withQuad.obj
@@ -0,0 +1,269 @@
+# Blender v2.82 (sub 7) OBJ File: ''
+# www.blender.org
+mtllib IcoSphere-withQuad.mtl
+o Icosphere
+v 0.000000 -1.000000 0.000000
+v 0.723607 -0.447220 0.525725
+v -0.276388 -0.447220 0.850649
+v -0.894426 -0.447216 0.000000
+v -0.276388 -0.447220 -0.850649
+v 0.723607 -0.447220 -0.525725
+v 0.276388 0.447220 0.850649
+v -0.723607 0.447220 0.525725
+v -0.723607 0.447220 -0.525725
+v 0.276388 0.447220 -0.850649
+v 0.894426 0.447216 0.000000
+v 0.000000 1.000000 0.000000
+v -0.162456 -0.850654 0.499995
+v 0.425323 -0.850654 0.309011
+v 0.262869 -0.525738 0.809012
+v 0.850648 -0.525736 0.000000
+v 0.425323 -0.850654 -0.309011
+v -0.525730 -0.850652 0.000000
+v -0.688189 -0.525736 0.499997
+v -0.162456 -0.850654 -0.499995
+v -0.688189 -0.525736 -0.499997
+v 0.262869 -0.525738 -0.809012
+v 0.951058 0.000000 0.309013
+v 0.951058 0.000000 -0.309013
+v 0.000000 0.000000 1.000000
+v 0.587786 0.000000 0.809017
+v -0.951058 0.000000 0.309013
+v -0.587786 0.000000 0.809017
+v -0.587786 0.000000 -0.809017
+v -0.951058 0.000000 -0.309013
+v 0.587786 0.000000 -0.809017
+v 0.000000 0.000000 -1.000000
+v 0.688189 0.525736 0.499997
+v -0.262869 0.525738 0.809012
+v -0.850648 0.525736 0.000000
+v -0.262869 0.525738 -0.809012
+v 0.688189 0.525736 -0.499997
+v 0.162456 0.850654 0.499995
+v 0.525730 0.850652 0.000000
+v -0.425323 0.850654 0.309011
+v -0.425323 0.850654 -0.309011
+v 0.162456 0.850654 -0.499995
+vt 0.818181 0.000000
+vt 0.772726 0.078731
+vt 0.863635 0.078731
+vt 0.727272 0.157461
+vt 0.681818 0.078731
+vt 0.636363 0.157461
+vt 0.090909 0.000000
+vt 0.045454 0.078731
+vt 0.136363 0.078731
+vt 0.272727 0.000000
+vt 0.227273 0.078731
+vt 0.318182 0.078731
+vt 0.454545 0.000000
+vt 0.409090 0.078731
+vt 0.500000 0.078731
+vt 0.681818 0.236191
+vt 0.909090 0.157461
+vt 0.818181 0.157461
+vt 0.863635 0.236191
+vt 0.181818 0.157461
+vt 0.090909 0.157461
+vt 0.136363 0.236191
+vt 0.363636 0.157461
+vt 0.272727 0.157461
+vt 0.318182 0.236191
+vt 0.545454 0.157461
+vt 0.454545 0.157461
+vt 0.500000 0.236191
+vt 0.772726 0.236191
+vt 0.954545 0.236191
+vt 0.227273 0.236191
+vt 0.409090 0.236191
+vt 0.590909 0.236191
+vt 0.818181 0.314921
+vt 0.727272 0.314921
+vt 0.772726 0.393651
+vt 1.000000 0.314921
+vt 0.909091 0.314921
+vt 0.954545 0.393651
+vt 0.272727 0.314921
+vt 0.181818 0.314921
+vt 0.227273 0.393651
+vt 0.454545 0.314921
+vt 0.363636 0.314921
+vt 0.409090 0.393651
+vt 0.636363 0.314921
+vt 0.545454 0.314921
+vt 0.590909 0.393651
+vt 0.500000 0.393651
+vt 0.545454 0.472382
+vt 0.318182 0.393651
+vt 0.363636 0.472382
+vt 0.136363 0.393651
+vt 0.181818 0.472382
+vt 0.090909 0.314921
+vt 0.863635 0.393651
+vt 0.909090 0.472382
+vt 0.681818 0.393651
+vt 0.727272 0.472382
+vt 0.045454 0.236191
+vt 0.000000 0.157461
+vt 0.590909 0.078731
+vt 0.636363 0.000000
+vn 0.1024 -0.9435 0.3151
+vn 0.7002 -0.6617 0.2680
+vn -0.2680 -0.9435 0.1947
+vn -0.2680 -0.9435 -0.1947
+vn 0.1024 -0.9435 -0.3151
+vn 0.9050 -0.3304 0.2680
+vn 0.0247 -0.3304 0.9435
+vn -0.8897 -0.3304 0.3151
+vn -0.5746 -0.3304 -0.7488
+vn 0.5346 -0.3304 -0.7779
+vn 0.8026 -0.1256 0.5831
+vn -0.3066 -0.1256 0.9435
+vn -0.9921 -0.1256 0.0000
+vn -0.3066 -0.1256 -0.9435
+vn 0.8026 -0.1256 -0.5831
+vn 0.4089 0.6617 0.6284
+vn -0.4713 0.6617 0.5831
+vn -0.7002 0.6617 -0.2680
+vn 0.0385 0.6617 -0.7488
+vn 0.7240 0.6617 -0.1947
+vn 0.2680 0.9435 -0.1947
+vn 0.4911 0.7947 -0.3568
+vn 0.4089 0.6617 -0.6284
+vn -0.1024 0.9435 -0.3151
+vn -0.1876 0.7947 -0.5773
+vn -0.4713 0.6617 -0.5831
+vn -0.3313 0.9435 0.0000
+vn -0.6071 0.7947 0.0000
+vn -0.7002 0.6617 0.2680
+vn -0.1024 0.9435 0.3151
+vn -0.1876 0.7947 0.5773
+vn 0.0385 0.6617 0.7488
+vn 0.2680 0.9435 0.1947
+vn 0.8897 0.3304 -0.3151
+vn 0.7947 0.1876 -0.5773
+vn 0.5746 0.3304 -0.7488
+vn -0.0247 0.3304 -0.9435
+vn -0.3035 0.1876 -0.9342
+vn -0.5346 0.3304 -0.7779
+vn -0.9050 0.3304 -0.2680
+vn -0.9822 0.1876 0.0000
+vn -0.9050 0.3304 0.2680
+vn -0.5346 0.3304 0.7779
+vn -0.3035 0.1876 0.9342
+vn -0.0247 0.3304 0.9435
+vn 0.5746 0.3304 0.7488
+vn 0.7947 0.1876 0.5773
+vn 0.8897 0.3304 0.3151
+vn 0.3066 0.1256 -0.9435
+vn 0.3035 -0.1876 -0.9342
+vn 0.0247 -0.3304 -0.9435
+vn -0.8026 0.1256 -0.5831
+vn -0.7947 -0.1876 -0.5773
+vn -0.8897 -0.3304 -0.3151
+vn -0.8026 0.1256 0.5831
+vn -0.7947 -0.1876 0.5773
+vn -0.5746 -0.3304 0.7488
+vn 0.3066 0.1256 0.9435
+vn 0.3035 -0.1876 0.9342
+vn 0.5346 -0.3304 0.7779
+vn 0.9921 0.1256 0.0000
+vn 0.9822 -0.1876 0.0000
+vn 0.9050 -0.3304 -0.2680
+vn 0.4713 -0.6617 -0.5831
+vn 0.1876 -0.7947 -0.5773
+vn -0.0385 -0.6617 -0.7488
+vn -0.4089 -0.6617 -0.6284
+vn -0.4911 -0.7947 -0.3568
+vn -0.7240 -0.6617 -0.1947
+vn -0.7240 -0.6617 0.1947
+vn -0.4911 -0.7947 0.3568
+vn -0.4089 -0.6617 0.6284
+vn 0.7002 -0.6617 -0.2680
+vn 0.6071 -0.7947 0.0000
+vn 0.3313 -0.9435 0.0000
+vn -0.0385 -0.6617 0.7488
+vn 0.1876 -0.7947 0.5773
+vn 0.4713 -0.6617 0.5831
+vn 0.6050 0.7430 0.2862
+usemtl None
+s off
+f 1/1/1 14/2/1 13/3/1
+f 2/4/2 14/5/2 16/6/2
+f 1/7/3 13/8/3 18/9/3
+f 1/10/4 18/11/4 20/12/4
+f 1/13/5 20/14/5 17/15/5
+f 2/4/6 16/6/6 23/16/6
+f 3/17/7 15/18/7 25/19/7
+f 4/20/8 19/21/8 27/22/8
+f 5/23/9 21/24/9 29/25/9
+f 6/26/10 22/27/10 31/28/10
+f 2/4/11 23/16/11 26/29/11
+f 3/17/12 25/19/12 28/30/12
+f 4/20/13 27/22/13 30/31/13
+f 5/23/14 29/25/14 32/32/14
+f 6/26/15 31/28/15 24/33/15
+f 7/34/16 33/35/16 38/36/16
+f 8/37/17 34/38/17 40/39/17
+f 9/40/18 35/41/18 41/42/18
+f 10/43/19 36/44/19 42/45/19
+f 11/46/20 37/47/20 39/48/20
+f 39/48/21 42/49/21 12/50/21
+f 39/48/22 37/47/22 42/49/22
+f 37/47/23 10/43/23 42/49/23
+f 42/45/24 41/51/24 12/52/24
+f 42/45/25 36/44/25 41/51/25
+f 36/44/26 9/40/26 41/51/26
+f 41/42/27 40/53/27 12/54/27
+f 41/42/28 35/41/28 40/53/28
+f 35/41/29 8/55/29 40/53/29
+f 40/39/30 38/56/30 12/57/30
+f 40/39/31 34/38/31 38/56/31
+f 34/38/32 7/34/32 38/56/32
+f 38/36/33 39/58/33 12/59/33
+f 24/33/34 37/47/34 11/46/34
+f 24/33/35 31/28/35 37/47/35
+f 31/28/36 10/43/36 37/47/36
+f 32/32/37 36/44/37 10/43/37
+f 32/32/38 29/25/38 36/44/38
+f 29/25/39 9/40/39 36/44/39
+f 30/31/40 35/41/40 9/40/40
+f 30/31/41 27/22/41 35/41/41
+f 27/22/42 8/55/42 35/41/42
+f 28/30/43 34/38/43 8/37/43
+f 28/30/44 25/19/44 34/38/44
+f 25/19/45 7/34/45 34/38/45
+f 26/29/46 33/35/46 7/34/46
+f 26/29/47 23/16/47 33/35/47
+f 23/16/48 11/46/48 33/35/48
+f 31/28/49 32/32/49 10/43/49
+f 31/28/50 22/27/50 32/32/50
+f 22/27/51 5/23/51 32/32/51
+f 29/25/52 30/31/52 9/40/52
+f 29/25/53 21/24/53 30/31/53
+f 21/24/54 4/20/54 30/31/54
+f 27/22/55 28/60/55 8/55/55
+f 27/22/56 19/21/56 28/60/56
+f 19/21/57 3/61/57 28/60/57
+f 25/19/58 26/29/58 7/34/58
+f 25/19/59 15/18/59 26/29/59
+f 15/18/60 2/4/60 26/29/60
+f 23/16/61 24/33/61 11/46/61
+f 23/16/62 16/6/62 24/33/62
+f 16/6/63 6/26/63 24/33/63
+f 17/15/64 22/27/64 6/26/64
+f 17/15/65 20/14/65 22/27/65
+f 20/14/66 5/23/66 22/27/66
+f 20/12/67 21/24/67 5/23/67
+f 20/12/68 18/11/68 21/24/68
+f 18/11/69 4/20/69 21/24/69
+f 18/9/70 19/21/70 4/20/70
+f 18/9/71 13/8/71 19/21/71
+f 13/8/72 3/61/72 19/21/72
+f 16/6/73 17/62/73 6/26/73
+f 16/6/74 14/5/74 17/62/74
+f 14/5/75 1/63/75 17/62/75
+f 13/3/76 15/18/76 3/17/76
+f 13/3/77 14/2/77 15/18/77
+f 14/2/78 2/4/78 15/18/78
+f 33/35/79 11/46/79 39/58/79 38/36/79
diff --git a/Comparison/src/test/resources/cz/fidentis/analyst/MoreObjects.mtl b/Comparison/src/test/resources/cz/fidentis/analyst/MoreObjects.mtl
new file mode 100644
index 00000000..f231bdf4
--- /dev/null
+++ b/Comparison/src/test/resources/cz/fidentis/analyst/MoreObjects.mtl
@@ -0,0 +1,10 @@
+# Blender MTL File: 'None'
+# Material Count: 1
+
+newmtl None
+Ns 500
+Ka 0.8 0.8 0.8
+Kd 0.8 0.8 0.8
+Ks 0.8 0.8 0.8
+d 1
+illum 2
diff --git a/Comparison/src/test/resources/cz/fidentis/analyst/MoreObjects.obj b/Comparison/src/test/resources/cz/fidentis/analyst/MoreObjects.obj
new file mode 100644
index 00000000..e593ad48
--- /dev/null
+++ b/Comparison/src/test/resources/cz/fidentis/analyst/MoreObjects.obj
@@ -0,0 +1,318 @@
+# Blender v2.82 (sub 7) OBJ File: ''
+# www.blender.org
+mtllib MoreObjects.mtl
+o Cube_Cube.002
+v -2.551072 -0.949820 4.449853
+v -2.551072 1.050180 4.449853
+v -2.551072 -0.949820 2.449853
+v -2.551072 1.050180 2.449853
+v -0.551072 -0.949820 4.449853
+v -0.551072 1.050180 4.449853
+v -0.551072 -0.949820 2.449853
+v -0.551072 1.050180 2.449853
+vt 0.375000 0.000000
+vt 0.625000 0.000000
+vt 0.625000 0.250000
+vt 0.375000 0.250000
+vt 0.625000 0.500000
+vt 0.375000 0.500000
+vt 0.625000 0.750000
+vt 0.375000 0.750000
+vt 0.625000 1.000000
+vt 0.375000 1.000000
+vt 0.125000 0.500000
+vt 0.125000 0.750000
+vt 0.875000 0.500000
+vt 0.875000 0.750000
+vn -1.0000 0.0000 0.0000
+vn 0.0000 0.0000 -1.0000
+vn 1.0000 0.0000 0.0000
+vn 0.0000 0.0000 1.0000
+vn 0.0000 -1.0000 0.0000
+vn 0.0000 1.0000 0.0000
+usemtl None
+s off
+f 1/1/1 2/2/1 4/3/1 3/4/1
+f 3/4/2 4/3/2 8/5/2 7/6/2
+f 7/6/3 8/5/3 6/7/3 5/8/3
+f 5/8/4 6/7/4 2/9/4 1/10/4
+f 3/11/5 7/6/5 5/8/5 1/12/5
+f 8/5/6 4/13/6 2/14/6 6/7/6
+o Cylinder
+v 0.944014 -0.250547 -4.061050
+v 0.944014 1.749453 -4.061050
+v 1.139104 -0.250547 -4.041836
+v 1.139104 1.749453 -4.041836
+v 1.326697 -0.250547 -3.984930
+v 1.326697 1.749453 -3.984930
+v 1.499584 -0.250547 -3.892520
+v 1.499584 1.749453 -3.892520
+v 1.651121 -0.250547 -3.768157
+v 1.651121 1.749453 -3.768157
+v 1.775484 -0.250547 -3.616621
+v 1.775484 1.749453 -3.616621
+v 1.867893 -0.250547 -3.443734
+v 1.867893 1.749453 -3.443734
+v 1.924799 -0.250547 -3.256141
+v 1.924799 1.749453 -3.256141
+v 1.944014 -0.250547 -3.061051
+v 1.944014 1.749453 -3.061051
+v 1.924799 -0.250547 -2.865960
+v 1.924799 1.749453 -2.865960
+v 1.867893 -0.250547 -2.678367
+v 1.867893 1.749453 -2.678367
+v 1.775484 -0.250547 -2.505481
+v 1.775484 1.749453 -2.505481
+v 1.651121 -0.250547 -2.353944
+v 1.651121 1.749453 -2.353944
+v 1.499584 -0.250547 -2.229581
+v 1.499584 1.749453 -2.229581
+v 1.326697 -0.250547 -2.137171
+v 1.326697 1.749453 -2.137171
+v 1.139104 -0.250547 -2.080265
+v 1.139104 1.749453 -2.080265
+v 0.944014 -0.250547 -2.061051
+v 0.944014 1.749453 -2.061051
+v 0.748923 -0.250547 -2.080266
+v 0.748923 1.749453 -2.080266
+v 0.561330 -0.250547 -2.137171
+v 0.561330 1.749453 -2.137171
+v 0.388443 -0.250547 -2.229581
+v 0.388443 1.749453 -2.229581
+v 0.236907 -0.250547 -2.353944
+v 0.236907 1.749453 -2.353944
+v 0.112544 -0.250547 -2.505481
+v 0.112544 1.749453 -2.505481
+v 0.020134 -0.250547 -2.678368
+v 0.020134 1.749453 -2.678368
+v -0.036771 -0.250547 -2.865961
+v -0.036771 1.749453 -2.865961
+v -0.055986 -0.250547 -3.061052
+v -0.055986 1.749453 -3.061052
+v -0.036771 -0.250547 -3.256142
+v -0.036771 1.749453 -3.256142
+v 0.020135 -0.250547 -3.443735
+v 0.020135 1.749453 -3.443735
+v 0.112545 -0.250547 -3.616622
+v 0.112545 1.749453 -3.616622
+v 0.236908 -0.250547 -3.768158
+v 0.236908 1.749453 -3.768158
+v 0.388445 -0.250547 -3.892521
+v 0.388445 1.749453 -3.892521
+v 0.561332 -0.250547 -3.984931
+v 0.561332 1.749453 -3.984931
+v 0.748925 -0.250547 -4.041836
+v 0.748925 1.749453 -4.041836
+vt 1.000000 0.500000
+vt 1.000000 1.000000
+vt 0.968750 1.000000
+vt 0.968750 0.500000
+vt 0.937500 1.000000
+vt 0.937500 0.500000
+vt 0.906250 1.000000
+vt 0.906250 0.500000
+vt 0.875000 1.000000
+vt 0.875000 0.500000
+vt 0.843750 1.000000
+vt 0.843750 0.500000
+vt 0.812500 1.000000
+vt 0.812500 0.500000
+vt 0.781250 1.000000
+vt 0.781250 0.500000
+vt 0.750000 1.000000
+vt 0.750000 0.500000
+vt 0.718750 1.000000
+vt 0.718750 0.500000
+vt 0.687500 1.000000
+vt 0.687500 0.500000
+vt 0.656250 1.000000
+vt 0.656250 0.500000
+vt 0.625000 1.000000
+vt 0.625000 0.500000
+vt 0.593750 1.000000
+vt 0.593750 0.500000
+vt 0.562500 1.000000
+vt 0.562500 0.500000
+vt 0.531250 1.000000
+vt 0.531250 0.500000
+vt 0.500000 1.000000
+vt 0.500000 0.500000
+vt 0.468750 1.000000
+vt 0.468750 0.500000
+vt 0.437500 1.000000
+vt 0.437500 0.500000
+vt 0.406250 1.000000
+vt 0.406250 0.500000
+vt 0.375000 1.000000
+vt 0.375000 0.500000
+vt 0.343750 1.000000
+vt 0.343750 0.500000
+vt 0.312500 1.000000
+vt 0.312500 0.500000
+vt 0.281250 1.000000
+vt 0.281250 0.500000
+vt 0.250000 1.000000
+vt 0.250000 0.500000
+vt 0.218750 1.000000
+vt 0.218750 0.500000
+vt 0.187500 1.000000
+vt 0.187500 0.500000
+vt 0.156250 1.000000
+vt 0.156250 0.500000
+vt 0.125000 1.000000
+vt 0.125000 0.500000
+vt 0.093750 1.000000
+vt 0.093750 0.500000
+vt 0.062500 1.000000
+vt 0.062500 0.500000
+vt 0.296822 0.485388
+vt 0.250000 0.490000
+vt 0.203179 0.485389
+vt 0.158156 0.471731
+vt 0.116663 0.449553
+vt 0.080295 0.419706
+vt 0.050447 0.383337
+vt 0.028269 0.341844
+vt 0.014612 0.296822
+vt 0.010000 0.250000
+vt 0.014611 0.203179
+vt 0.028269 0.158156
+vt 0.050447 0.116663
+vt 0.080294 0.080294
+vt 0.116663 0.050447
+vt 0.158156 0.028269
+vt 0.203178 0.014612
+vt 0.250000 0.010000
+vt 0.296822 0.014612
+vt 0.341844 0.028269
+vt 0.383337 0.050447
+vt 0.419706 0.080294
+vt 0.449553 0.116663
+vt 0.471731 0.158156
+vt 0.485388 0.203178
+vt 0.490000 0.250000
+vt 0.485388 0.296822
+vt 0.471731 0.341844
+vt 0.449553 0.383337
+vt 0.419706 0.419706
+vt 0.383337 0.449553
+vt 0.341844 0.471731
+vt 0.031250 1.000000
+vt 0.031250 0.500000
+vt 0.000000 1.000000
+vt 0.000000 0.500000
+vt 0.750000 0.490000
+vt 0.796822 0.485388
+vt 0.841844 0.471731
+vt 0.883337 0.449553
+vt 0.919706 0.419706
+vt 0.949553 0.383337
+vt 0.971731 0.341844
+vt 0.985388 0.296822
+vt 0.990000 0.250000
+vt 0.985388 0.203178
+vt 0.971731 0.158156
+vt 0.949553 0.116663
+vt 0.919706 0.080294
+vt 0.883337 0.050447
+vt 0.841844 0.028269
+vt 0.796822 0.014612
+vt 0.750000 0.010000
+vt 0.703178 0.014612
+vt 0.658156 0.028269
+vt 0.616663 0.050447
+vt 0.580294 0.080294
+vt 0.550447 0.116663
+vt 0.528269 0.158156
+vt 0.514611 0.203179
+vt 0.510000 0.250000
+vt 0.514612 0.296822
+vt 0.528269 0.341844
+vt 0.550447 0.383337
+vt 0.580295 0.419706
+vt 0.616663 0.449553
+vt 0.658156 0.471731
+vt 0.703179 0.485389
+vn 0.0980 0.0000 -0.9952
+vn 0.2903 0.0000 -0.9569
+vn 0.4714 0.0000 -0.8819
+vn 0.6344 0.0000 -0.7730
+vn 0.7730 0.0000 -0.6344
+vn 0.8819 0.0000 -0.4714
+vn 0.9569 0.0000 -0.2903
+vn 0.9952 0.0000 -0.0980
+vn 0.9952 0.0000 0.0980
+vn 0.9569 0.0000 0.2903
+vn 0.8819 0.0000 0.4714
+vn 0.7730 0.0000 0.6344
+vn 0.6344 0.0000 0.7730
+vn 0.4714 0.0000 0.8819
+vn 0.2903 0.0000 0.9569
+vn 0.0980 0.0000 0.9952
+vn -0.0980 0.0000 0.9952
+vn -0.2903 0.0000 0.9569
+vn -0.4714 0.0000 0.8819
+vn -0.6344 0.0000 0.7730
+vn -0.7730 0.0000 0.6344
+vn -0.8819 0.0000 0.4714
+vn -0.9569 0.0000 0.2903
+vn -0.9952 0.0000 0.0980
+vn -0.9952 0.0000 -0.0980
+vn -0.9569 0.0000 -0.2903
+vn -0.8819 0.0000 -0.4714
+vn -0.7730 0.0000 -0.6344
+vn -0.6344 0.0000 -0.7730
+vn -0.4714 0.0000 -0.8819
+vn 0.0000 1.0000 0.0000
+vn -0.2903 0.0000 -0.9569
+vn -0.0980 0.0000 -0.9952
+vn 0.0000 -1.0000 -0.0000
+usemtl None
+s off
+f 9/15/7 10/16/7 12/17/7 11/18/7
+f 11/18/8 12/17/8 14/19/8 13/20/8
+f 13/20/9 14/19/9 16/21/9 15/22/9
+f 15/22/10 16/21/10 18/23/10 17/24/10
+f 17/24/11 18/23/11 20/25/11 19/26/11
+f 19/26/12 20/25/12 22/27/12 21/28/12
+f 21/28/13 22/27/13 24/29/13 23/30/13
+f 23/30/14 24/29/14 26/31/14 25/32/14
+f 25/32/15 26/31/15 28/33/15 27/34/15
+f 27/34/16 28/33/16 30/35/16 29/36/16
+f 29/36/17 30/35/17 32/37/17 31/38/17
+f 31/38/18 32/37/18 34/39/18 33/40/18
+f 33/40/19 34/39/19 36/41/19 35/42/19
+f 35/42/20 36/41/20 38/43/20 37/44/20
+f 37/44/21 38/43/21 40/45/21 39/46/21
+f 39/46/22 40/45/22 42/47/22 41/48/22
+f 41/48/23 42/47/23 44/49/23 43/50/23
+f 43/50/24 44/49/24 46/51/24 45/52/24
+f 45/52/25 46/51/25 48/53/25 47/54/25
+f 47/54/26 48/53/26 50/55/26 49/56/26
+f 49/56/27 50/55/27 52/57/27 51/58/27
+f 51/58/28 52/57/28 54/59/28 53/60/28
+f 53/60/29 54/59/29 56/61/29 55/62/29
+f 55/62/30 56/61/30 58/63/30 57/64/30
+f 57/64/31 58/63/31 60/65/31 59/66/31
+f 59/66/32 60/65/32 62/67/32 61/68/32
+f 61/68/33 62/67/33 64/69/33 63/70/33
+f 63/70/34 64/69/34 66/71/34 65/72/34
+f 65/72/35 66/71/35 68/73/35 67/74/35
+f 67/74/36 68/73/36 70/75/36 69/76/36
+f 12/77/37 10/78/37 72/79/37 70/80/37 68/81/37 66/82/37 64/83/37 62/84/37 60/85/37 58/86/37 56/87/37 54/88/37 52/89/37 50/90/37 48/91/37 46/92/37 44/93/37 42/94/37 40/95/37 38/96/37 36/97/37 34/98/37 32/99/37 30/100/37 28/101/37 26/102/37 24/103/37 22/104/37 20/105/37 18/106/37 16/107/37 14/108/37
+f 69/76/38 70/75/38 72/109/38 71/110/38
+f 71/110/39 72/109/39 10/111/39 9/112/39
+f 9/113/40 11/114/40 13/115/40 15/116/40 17/117/40 19/118/40 21/119/40 23/120/40 25/121/40 27/122/40 29/123/40 31/124/40 33/125/40 35/126/40 37/127/40 39/128/40 41/129/40 43/130/40 45/131/40 47/132/40 49/133/40 51/134/40 53/135/40 55/136/40 57/137/40 59/138/40 61/139/40 63/140/40 65/141/40 67/142/40 69/143/40 71/144/40
+o Plane_Plane.001
+v -1.000000 0.000000 1.000000
+v 1.000000 0.000000 1.000000
+v -1.000000 0.000000 -1.000000
+v 1.000000 0.000000 -1.000000
+vt 0.000000 0.000000
+vt 1.000000 0.000000
+vt 1.000000 1.000000
+vt 0.000000 1.000000
+vn 0.0000 1.0000 0.0000
+usemtl None
+s off
+f 73/145/41 74/146/41 76/147/41 75/148/41
diff --git a/Comparison/src/test/resources/cz/fidentis/analyst/Plane.mtl b/Comparison/src/test/resources/cz/fidentis/analyst/Plane.mtl
new file mode 100644
index 00000000..f231bdf4
--- /dev/null
+++ b/Comparison/src/test/resources/cz/fidentis/analyst/Plane.mtl
@@ -0,0 +1,10 @@
+# Blender MTL File: 'None'
+# Material Count: 1
+
+newmtl None
+Ns 500
+Ka 0.8 0.8 0.8
+Kd 0.8 0.8 0.8
+Ks 0.8 0.8 0.8
+d 1
+illum 2
diff --git a/Comparison/src/test/resources/cz/fidentis/analyst/Plane.obj b/Comparison/src/test/resources/cz/fidentis/analyst/Plane.obj
new file mode 100644
index 00000000..ecdd5875
--- /dev/null
+++ b/Comparison/src/test/resources/cz/fidentis/analyst/Plane.obj
@@ -0,0 +1,16 @@
+# Blender v2.82 (sub 7) OBJ File: ''
+# www.blender.org
+mtllib Plane.mtl
+o Plane
+v -1.000000 0.000000 1.000000
+v 1.000000 0.000000 1.000000
+v -1.000000 0.000000 -1.000000
+v 1.000000 0.000000 -1.000000
+vt 0.000000 0.000000
+vt 1.000000 0.000000
+vt 1.000000 1.000000
+vt 0.000000 1.000000
+vn 0.0000 1.0000 0.0000
+usemtl None
+s off
+f 1/1/1 2/2/1 4/3/1 3/4/1
diff --git a/Comparison/src/test/resources/cz/fidentis/analyst/Tetrahedron.mtl b/Comparison/src/test/resources/cz/fidentis/analyst/Tetrahedron.mtl
new file mode 100644
index 00000000..f231bdf4
--- /dev/null
+++ b/Comparison/src/test/resources/cz/fidentis/analyst/Tetrahedron.mtl
@@ -0,0 +1,10 @@
+# Blender MTL File: 'None'
+# Material Count: 1
+
+newmtl None
+Ns 500
+Ka 0.8 0.8 0.8
+Kd 0.8 0.8 0.8
+Ks 0.8 0.8 0.8
+d 1
+illum 2
diff --git a/Comparison/src/test/resources/cz/fidentis/analyst/Tetrahedron.obj b/Comparison/src/test/resources/cz/fidentis/analyst/Tetrahedron.obj
new file mode 100644
index 00000000..f7543deb
--- /dev/null
+++ b/Comparison/src/test/resources/cz/fidentis/analyst/Tetrahedron.obj
@@ -0,0 +1,26 @@
+# Blender v2.82 (sub 7) OBJ File: ''
+# www.blender.org
+mtllib Tetrahedron.mtl
+o Cube_Cube.001
+v -1.000000 -1.000000 1.000000
+v -1.000000 -1.000000 -1.000000
+v -1.000000 1.000000 -1.000000
+v 1.000000 -1.000000 -1.000000
+vt 0.375000 0.000000
+vt 0.625000 0.250000
+vt 0.375000 0.250000
+vt 0.375000 0.500000
+vt 0.875000 0.500000
+vt 0.375000 1.000000
+vt 0.125000 0.500000
+vt 0.125000 0.750000
+vn -1.0000 0.0000 0.0000
+vn 0.0000 0.0000 -1.0000
+vn 0.5774 0.5774 0.5774
+vn 0.0000 -1.0000 0.0000
+usemtl None
+s off
+f 1/1/1 3/2/1 2/3/1
+f 2/3/2 3/2/2 4/4/2
+f 3/5/3 1/6/3 4/4/3
+f 2/7/4 4/4/4 1/8/4
diff --git a/MeshModel/jshell.history b/MeshModel/jshell.history
new file mode 100644
index 00000000..e69de29b
diff --git a/MeshModel/pom.xml b/MeshModel/pom.xml
index af64b9ad..d817f00a 100644
--- a/MeshModel/pom.xml
+++ b/MeshModel/pom.xml
@@ -19,7 +19,8 @@
                     <publicPackages> <!-- expose API/packages to other modules -->
                        <publicPackage>cz.fidentis.analyst.mesh.core.*</publicPackage>
                        <publicPackage>cz.fidentis.analyst.mesh.io.*</publicPackage>
-                       <publicPackage>cz.fidentis.analyst.mesh.visitors.*</publicPackage>
+                       <publicPackage>cz.fidentis.analyst.mesh.*</publicPackage>
+                       <publicPackage>cz.fidentis.analyst.kdtree.*</publicPackage>
                        <!--<publicPackage>cz.fidentis.analyst.mesh.core.MeshFacet</publicPackage>-->
                        <!--<publicPackage>cz.fidentis.analyst.mesh.core.MeshPoint</publicPackage>-->
                    </publicPackages>
diff --git a/MeshModel/src/main/java/cz/fidentis/analyst/mesh/visitors/MeshVisitor.java b/MeshModel/src/main/java/cz/fidentis/analyst/mesh/MeshVisitor.java
similarity index 95%
rename from MeshModel/src/main/java/cz/fidentis/analyst/mesh/visitors/MeshVisitor.java
rename to MeshModel/src/main/java/cz/fidentis/analyst/mesh/MeshVisitor.java
index 850ffeba..04ed6a53 100644
--- a/MeshModel/src/main/java/cz/fidentis/analyst/mesh/visitors/MeshVisitor.java
+++ b/MeshModel/src/main/java/cz/fidentis/analyst/mesh/MeshVisitor.java
@@ -1,4 +1,4 @@
-package cz.fidentis.analyst.mesh.visitors;
+package cz.fidentis.analyst.mesh;
 
 import cz.fidentis.analyst.mesh.core.MeshFacet;
 import cz.fidentis.analyst.mesh.core.MeshModel;
diff --git a/MeshModel/src/main/java/cz/fidentis/analyst/mesh/core/MeshFacet.java b/MeshModel/src/main/java/cz/fidentis/analyst/mesh/core/MeshFacet.java
index 35694362..31417b07 100644
--- a/MeshModel/src/main/java/cz/fidentis/analyst/mesh/core/MeshFacet.java
+++ b/MeshModel/src/main/java/cz/fidentis/analyst/mesh/core/MeshFacet.java
@@ -1,7 +1,7 @@
 package cz.fidentis.analyst.mesh.core;
 
 import java.util.List;
-import cz.fidentis.analyst.mesh.visitors.MeshVisitor;
+import cz.fidentis.analyst.mesh.MeshVisitor;
 
 /**
  * An ancapsulated mesh plate (with shared vertices).
diff --git a/MeshModel/src/main/java/cz/fidentis/analyst/mesh/core/MeshFacetImpl.java b/MeshModel/src/main/java/cz/fidentis/analyst/mesh/core/MeshFacetImpl.java
index 2c9ce081..53dfb144 100644
--- a/MeshModel/src/main/java/cz/fidentis/analyst/mesh/core/MeshFacetImpl.java
+++ b/MeshModel/src/main/java/cz/fidentis/analyst/mesh/core/MeshFacetImpl.java
@@ -6,7 +6,7 @@ import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
 import javax.vecmath.Vector3d;
-import cz.fidentis.analyst.mesh.visitors.MeshVisitor;
+import cz.fidentis.analyst.mesh.MeshVisitor;
 import java.util.Iterator;
 import java.util.NoSuchElementException;
 
diff --git a/MeshModel/src/main/java/cz/fidentis/analyst/mesh/core/MeshModel.java b/MeshModel/src/main/java/cz/fidentis/analyst/mesh/core/MeshModel.java
index 01b745ba..9f323778 100644
--- a/MeshModel/src/main/java/cz/fidentis/analyst/mesh/core/MeshModel.java
+++ b/MeshModel/src/main/java/cz/fidentis/analyst/mesh/core/MeshModel.java
@@ -2,7 +2,7 @@ package cz.fidentis.analyst.mesh.core;
 
 import java.util.ArrayList;
 import java.util.List;
-import cz.fidentis.analyst.mesh.visitors.MeshVisitor;
+import cz.fidentis.analyst.mesh.MeshVisitor;
 
 /**
  * MeshModel is a root node of the hierarchy
diff --git a/preferences.fip b/preferences.fip
new file mode 100644
index 00000000..7f3a24ad
--- /dev/null
+++ b/preferences.fip
@@ -0,0 +1 @@
+/home/oslejsek/GIT/HCI/analyst-data/multi-scan-models-anonymized/average-girl-17-20
\ No newline at end of file
-- 
GitLab