diff --git a/GUI/src/main/java/cz/fidentis/analyst/gui/canvas/MouseRotationListener.java b/GUI/src/main/java/cz/fidentis/analyst/gui/canvas/MouseRotationListener.java
index a92a50994cb1b6dfae58f2b4c12b7a86fa9f561d..2a9ecd90239a937f08f0be6fb58e3907ede4571e 100644
--- a/GUI/src/main/java/cz/fidentis/analyst/gui/canvas/MouseRotationListener.java
+++ b/GUI/src/main/java/cz/fidentis/analyst/gui/canvas/MouseRotationListener.java
@@ -38,6 +38,7 @@ public class MouseRotationListener extends MouseAdapter {
      * Left mouse button dragging rotates
      * Right mouse button dragging moves
      * Middle mouse button dragging resets rotation and zoom
+     * @param evt Mouse position info
      */
     @Override
     public void mouseDragged(MouseEvent evt) {
@@ -66,6 +67,7 @@ public class MouseRotationListener extends MouseAdapter {
 
     /**
      * Actualize mouse movement
+     * @param evt Mouse position info
      */
     @Override
     public void mouseMoved(MouseEvent e) {
@@ -75,6 +77,7 @@ public class MouseRotationListener extends MouseAdapter {
 
     /**
      * Zoom in or out based on mouse wheel movement
+     * @param evt Mouse wheel info
      */
     @Override
     public void mouseWheelMoved(MouseWheelEvent evt) {
@@ -88,6 +91,7 @@ public class MouseRotationListener extends MouseAdapter {
     
     /**
      * Middle mouse button click resets rotation and zoom
+     * @param evt Mouse position info
      */
     @Override
     public void mouseClicked(MouseEvent evt) {
@@ -97,18 +101,32 @@ public class MouseRotationListener extends MouseAdapter {
         }
     }
     
+    /**
+     * @return Rotation speed
+     */
     public static double getRotationSpeed() {
         return rotationSpeed;
     }
 
+    /**
+     * Sets rotation speed
+     * @param rotationSpeed 
+     */
     public static void setRotationSpeed(double rotationSpeed) {
         MouseRotationListener.rotationSpeed = rotationSpeed;
     }
 
+    /**
+     * @return Move speed
+     */
     public static double getMoveSpeed() {
         return moveSpeed;
     }
 
+    /**
+     * Sets move speed
+     * @param moveSpeed 
+     */
     public static void setMoveSpeed(double moveSpeed) {
         MouseRotationListener.moveSpeed = moveSpeed;
     }
diff --git a/GUI/src/main/java/cz/fidentis/analyst/gui/scene/DrawableMesh.java b/GUI/src/main/java/cz/fidentis/analyst/gui/scene/DrawableMesh.java
index 05b630742639a5aad23dc08e6f2dbd9633da05a1..2355656c9962671e75fa993f96f9401dfca7b11d 100644
--- a/GUI/src/main/java/cz/fidentis/analyst/gui/scene/DrawableMesh.java
+++ b/GUI/src/main/java/cz/fidentis/analyst/gui/scene/DrawableMesh.java
@@ -15,6 +15,7 @@ import javax.vecmath.Vector3d;
  * This class encapsulates rendering state and parameters,
  * 
  * @author Radek Oslejsek
+ * @author Richard Pajersky
  */
 public class DrawableMesh {
     
@@ -22,20 +23,56 @@ public class DrawableMesh {
     
     private boolean display = true;
     
-    // material info
+    /* material info */
+    /**
+     * {@link Color} of mesh
+     */
     private Color color = new Color(255, 255, 255);
+    /**
+     * {@link Color} of highlights
+     */
     private Color highlights = new Color(0, 0, 0, 1);
+    /**
+     * Transparency of mesh
+     */
     private float transparency = 1;
-    // transformation info
+    
+    /* transformation info */
+    /**
+     * Translation
+     */
     private Vector3d translation = new Vector3d(0, 0, 0);
+    /**
+     * Rotation
+     */
     private Vector3d rotation = new Vector3d(0, 0, 0);
+    /**
+     * Scale
+     */
     private Vector3d scale = new Vector3d(0, 0, 0);
-    // render mode
+    
+    /* render mode */
+    /**
+     * Render mode to use, one from {@code GL_FILL}, {@code GL_LINE}, {@code GL_POINT}
+     */
     private int renderMode = GL2.GL_FILL;
+    /**
+     * Flag if back should be rendered
+     */
     private boolean showBackface = true;
-    // feature points
+    
+    /* feature points */
+    /**
+     * {@link List} of feature points
+     */
     private List<FeaturePoint> featurePoints = new ArrayList<>();
+    /**
+     * {@link List} of feature points color
+     */
     private List<Color> featurePointsColor = new ArrayList<>();
+    /**
+     * Flag if feature points should be rendered
+     */
     private boolean renderFeaturePoints = false;
     
     /**
@@ -82,70 +119,135 @@ public class DrawableMesh {
         return display;
     }
     
+    /**
+     * Sets color
+     * @param color Color
+     */
     public void setColor(Color color) {
         this.color = color;
     }
 
+    /**
+     * @return {@link Color}
+     */
     public Color getColor() {
         return color;
     }
     
+    /**
+     * @return Current value of transparency
+     */
     public float getTransparency() {
         return transparency;
     }
 
+    /**
+     * Sets transparency
+     * @param transparency Transparency
+     */
     public void setTransparency(float transparency) {
         this.transparency = transparency;
     }
     
+    /**
+     * @return Current translation
+     */
     public Vector3d getTranslation() {
         return translation;
     }
 
+    /**
+     * Sets tranlation
+     * @param translation Translation
+     */
     public void setTranslation(Vector3d translation) {
         this.translation = translation;
     }
 
+    /**
+     * @return Current rotation
+     */
     public Vector3d getRotation() {
         return rotation;
     }
 
+    /**
+     * Sets rotation
+     * @param rotation 
+     */
     public void setRotation(Vector3d rotation) {
         this.rotation = rotation;
     }
 
+    /**
+     * @return Current scale
+     */
     public Vector3d getScale() {
         return scale;
     }
 
+    /**
+     * Sets scale
+     * @param scale Scale
+     */
     public void setScale(Vector3d scale) {
         this.scale = scale;
     }
     
+    /**
+     * @return {@link MeshModel}
+     */
     public MeshModel getModel() {
         return this.model;
     }
 
+    /**
+     * @return {@link Color} of highlights
+     */
     public Color getHighlights() {
         return highlights;
     }
 
+    /**
+     * Sets {@link Color} of highlights
+     * @param highlights 
+     */
     public void setHighlights(Color highlights) {
         this.highlights = highlights;
     }
     
+    /**
+     * @return Value of {@link #renderMode}
+     */
     public int getRenderMode() {
         return renderMode;
     }
 
+    /**
+     * Sets render mode
+     * @param renderMode Render mode
+     * @throws IllegalArgumentException if renderMode isn't {@code GL_FILL}, {@code GL_LINE} or {@coed GL_POINT}
+     */
     public void setRenderMode(int renderMode) {
+        if (renderMode != GL2.GL_FILL && 
+                renderMode != GL2.GL_LINE &&
+                renderMode != GL2.GL_POINT) {
+            throw new IllegalArgumentException("invalid mode");
+        }
         this.renderMode = renderMode;
     }
 
+    /**
+     * @return {@link List} of {@link FeaturePoint}
+     */
     public List<FeaturePoint> getFeaturePoints() {
         return featurePoints;
     }
 
+    /**
+     * Sets feature points
+     * @param featurePoints Feature points
+     */
     public void setFeaturePoints(List<FeaturePoint> featurePoints) {
         this.featurePoints = featurePoints;
         List<Color> colors = new ArrayList<>();
@@ -155,26 +257,47 @@ public class DrawableMesh {
         this.setFeaturePointsColor(colors);
     }   
     
+    /**
+     * @return {@link List} of feature points {@link Color}
+     */
     public List<Color> getFeaturePointsColor() {
         return featurePointsColor;
     }
 
+    /**
+     * Sets colors of feature points
+     * @param featurePointsColor Colors of feature points
+     */
     public void setFeaturePointsColor(List<Color> featurePointsColor) {
         this.featurePointsColor = featurePointsColor;
     } 
     
+    /**
+     * @return {@code true} if feature points should be rendered
+     */
     public boolean isRenderFeaturePoints() {
         return renderFeaturePoints;
     }
 
+    /**
+     * Sets if feature points should be renderred or not
+     * @param renderFeaturePoints 
+     */
     public void setRenderFeaturePoints(boolean renderFeaturePoints) {
         this.renderFeaturePoints = renderFeaturePoints;
     }
 
+    /**
+     * @return {@code true} if back face shoud be shown
+     */
     public boolean isShowBackface() {
         return showBackface;
     }
 
+    /**
+     * Sets if back face should be shown or not
+     * @param showBackface 
+     */
     public void setShowBackface(boolean showBackface) {
         this.showBackface = showBackface;
     }
diff --git a/GUI/src/main/java/cz/fidentis/analyst/gui/scene/SceneRenderer.java b/GUI/src/main/java/cz/fidentis/analyst/gui/scene/SceneRenderer.java
index 25538f94afc39831b959ff71ae1f50e307793daa..e334a1dbc8fdc0b3e5d75b039dba21ffdac4ae7b 100644
--- a/GUI/src/main/java/cz/fidentis/analyst/gui/scene/SceneRenderer.java
+++ b/GUI/src/main/java/cz/fidentis/analyst/gui/scene/SceneRenderer.java
@@ -19,6 +19,7 @@ import javax.vecmath.Vector3d;
  * 
  * @author Natalia Bebjakova
  * @author Radek Oslejsek
+ * @author Richard Pajersky
  */
 public class SceneRenderer {
 
diff --git a/GUI/src/main/java/cz/fidentis/analyst/gui/tab/PostRegistrationCP.form b/GUI/src/main/java/cz/fidentis/analyst/gui/tab/PostRegistrationCP.form
index 05b84ea2288e60a766ae6045d503ec4ebd6ece92..b263fb3124f20b47dac5c55d5fcade6c740535d7 100644
--- a/GUI/src/main/java/cz/fidentis/analyst/gui/tab/PostRegistrationCP.form
+++ b/GUI/src/main/java/cz/fidentis/analyst/gui/tab/PostRegistrationCP.form
@@ -2031,8 +2031,8 @@
               <Group type="103" groupAlignment="0" attributes="0">
                   <Group type="102" attributes="0">
                       <Group type="103" groupAlignment="0" attributes="0">
-                          <Component id="highShiftRB" alignment="0" min="-2" max="-2" attributes="0"/>
-                          <Component id="lowShiftRB" min="-2" max="-2" attributes="0"/>
+                          <Component id="lowShiftRB" alignment="0" min="-2" max="-2" attributes="0"/>
+                          <Component id="highShiftRB" min="-2" max="-2" attributes="0"/>
                       </Group>
                       <EmptySpace min="0" pref="8" max="32767" attributes="0"/>
                   </Group>
@@ -2048,9 +2048,9 @@
                   <Group type="102" alignment="0" attributes="0">
                       <Component id="shiftLabel" min="-2" max="-2" attributes="0"/>
                       <EmptySpace max="-2" attributes="0"/>
-                      <Component id="highShiftRB" min="-2" max="-2" attributes="0"/>
-                      <EmptySpace max="-2" attributes="0"/>
                       <Component id="lowShiftRB" min="-2" max="-2" attributes="0"/>
+                      <EmptySpace max="-2" attributes="0"/>
+                      <Component id="highShiftRB" min="-2" max="-2" attributes="0"/>
                       <EmptySpace max="32767" attributes="0"/>
                   </Group>
               </Group>
@@ -2070,38 +2070,38 @@
                 </Property>
               </Properties>
             </Component>
-            <Component class="javax.swing.JRadioButton" name="highShiftRB">
+            <Component class="javax.swing.JRadioButton" name="lowShiftRB">
               <Properties>
                 <Property name="buttonGroup" type="javax.swing.ButtonGroup" editor="org.netbeans.modules.form.RADComponent$ButtonGroupPropertyEditor">
                   <ComponentRef name="precisionGroup"/>
                 </Property>
                 <Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
-                  <ResourceString bundle="cz/fidentis/analyst/gui/tab/Bundle.properties" key="PostRegistrationCP.highShiftRB.text" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
+                  <ResourceString bundle="cz/fidentis/analyst/gui/tab/Bundle.properties" key="PostRegistrationCP.lowShiftRB.text" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
                 </Property>
                 <Property name="toolTipText" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
-                  <ResourceString bundle="cz/fidentis/analyst/gui/tab/Bundle.properties" key="PostRegistrationCP.highShiftRB.toolTipText" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
+                  <ResourceString bundle="cz/fidentis/analyst/gui/tab/Bundle.properties" key="PostRegistrationCP.lowShiftRB.toolTipText" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
                 </Property>
                 <Property name="opaque" type="boolean" value="false"/>
               </Properties>
               <Events>
-                <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="highShiftRBActionPerformed"/>
+                <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="lowShiftRBActionPerformed"/>
               </Events>
             </Component>
-            <Component class="javax.swing.JRadioButton" name="lowShiftRB">
+            <Component class="javax.swing.JRadioButton" name="highShiftRB">
               <Properties>
                 <Property name="buttonGroup" type="javax.swing.ButtonGroup" editor="org.netbeans.modules.form.RADComponent$ButtonGroupPropertyEditor">
                   <ComponentRef name="precisionGroup"/>
                 </Property>
                 <Property name="text" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
-                  <ResourceString bundle="cz/fidentis/analyst/gui/tab/Bundle.properties" key="PostRegistrationCP.lowShiftRB.text" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
+                  <ResourceString bundle="cz/fidentis/analyst/gui/tab/Bundle.properties" key="PostRegistrationCP.highShiftRB.text" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
                 </Property>
                 <Property name="toolTipText" type="java.lang.String" editor="org.netbeans.modules.i18n.form.FormI18nStringEditor">
-                  <ResourceString bundle="cz/fidentis/analyst/gui/tab/Bundle.properties" key="PostRegistrationCP.lowShiftRB.toolTipText" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
+                  <ResourceString bundle="cz/fidentis/analyst/gui/tab/Bundle.properties" key="PostRegistrationCP.highShiftRB.toolTipText" replaceFormat="org.openide.util.NbBundle.getMessage({sourceFileName}.class, &quot;{key}&quot;)"/>
                 </Property>
                 <Property name="opaque" type="boolean" value="false"/>
               </Properties>
               <Events>
-                <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="lowShiftRBActionPerformed"/>
+                <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="highShiftRBActionPerformed"/>
               </Events>
             </Component>
           </SubComponents>
diff --git a/GUI/src/main/java/cz/fidentis/analyst/gui/tab/PostRegistrationCP.java b/GUI/src/main/java/cz/fidentis/analyst/gui/tab/PostRegistrationCP.java
index 6b3e97591321d2a45f42be3417b2e15b6d9addbf..7d3f176f43f169c1adc323d0d2d530451cddd009 100644
--- a/GUI/src/main/java/cz/fidentis/analyst/gui/tab/PostRegistrationCP.java
+++ b/GUI/src/main/java/cz/fidentis/analyst/gui/tab/PostRegistrationCP.java
@@ -18,10 +18,13 @@ public class PostRegistrationCP extends javax.swing.JPanel {
      * into {@link cz.fidentis.analyst.gui.scene.DrawableMesh}
      */
     private RegistrationCPEventListener listener;
+    /**
+     * Animator which animates transformations
+     */
     private final ModelRotationAnimator animator = new ModelRotationAnimator();
     
     /**
-     * Creates new form PostRegistrationPanel
+     * Creates new form {@link PostRegistrationPanel}
      * 
      * @param listener Listener
      */
@@ -39,7 +42,7 @@ public class PostRegistrationCP extends javax.swing.JPanel {
         secondaryColorPanel.setBackground(RegistrationCPEventListener.DEFAULT_SECONDARY_COLOR);
         primaryFillRB.setSelected(true);
         secondaryFillRB.setSelected(true);
-        highShiftRB.setSelected(true);
+        lowShiftRB.setSelected(true);
         thersholdFTF.setValue(listener.getFeaturePointsThreshold());
         resetAllButtonActionPerformed(null);
     }
@@ -49,6 +52,7 @@ public class PostRegistrationCP extends javax.swing.JPanel {
      * by updating specific formatted field
      * 
      * @param dir Transformation direction
+     * @throws UnsupportedOperationException if {@code dir} is invalid
      */
     public void transform(Direction dir) {
         double newValue;
@@ -213,8 +217,8 @@ public class PostRegistrationCP extends javax.swing.JPanel {
         jSeparator9 = new javax.swing.JSeparator();
         shiftPanel = new javax.swing.JPanel();
         shiftLabel = new javax.swing.JLabel();
-        highShiftRB = new javax.swing.JRadioButton();
         lowShiftRB = new javax.swing.JRadioButton();
+        highShiftRB = new javax.swing.JRadioButton();
         jSeparator10 = new javax.swing.JSeparator();
         applyButton = new javax.swing.JButton();
         jSeparator5 = new javax.swing.JSeparator();
@@ -1276,16 +1280,6 @@ public class PostRegistrationCP extends javax.swing.JPanel {
         org.openide.awt.Mnemonics.setLocalizedText(shiftLabel, org.openide.util.NbBundle.getMessage(PostRegistrationCP.class, "PostRegistrationCP.shiftLabel.text")); // NOI18N
         shiftLabel.setToolTipText(org.openide.util.NbBundle.getMessage(PostRegistrationCP.class, "PostRegistrationCP.shiftLabel.toolTipText")); // NOI18N
 
-        precisionGroup.add(highShiftRB);
-        org.openide.awt.Mnemonics.setLocalizedText(highShiftRB, org.openide.util.NbBundle.getMessage(PostRegistrationCP.class, "PostRegistrationCP.highShiftRB.text")); // NOI18N
-        highShiftRB.setToolTipText(org.openide.util.NbBundle.getMessage(PostRegistrationCP.class, "PostRegistrationCP.highShiftRB.toolTipText")); // NOI18N
-        highShiftRB.setOpaque(false);
-        highShiftRB.addActionListener(new java.awt.event.ActionListener() {
-            public void actionPerformed(java.awt.event.ActionEvent evt) {
-                highShiftRBActionPerformed(evt);
-            }
-        });
-
         precisionGroup.add(lowShiftRB);
         org.openide.awt.Mnemonics.setLocalizedText(lowShiftRB, org.openide.util.NbBundle.getMessage(PostRegistrationCP.class, "PostRegistrationCP.lowShiftRB.text")); // NOI18N
         lowShiftRB.setToolTipText(org.openide.util.NbBundle.getMessage(PostRegistrationCP.class, "PostRegistrationCP.lowShiftRB.toolTipText")); // NOI18N
@@ -1296,14 +1290,24 @@ public class PostRegistrationCP extends javax.swing.JPanel {
             }
         });
 
+        precisionGroup.add(highShiftRB);
+        org.openide.awt.Mnemonics.setLocalizedText(highShiftRB, org.openide.util.NbBundle.getMessage(PostRegistrationCP.class, "PostRegistrationCP.highShiftRB.text")); // NOI18N
+        highShiftRB.setToolTipText(org.openide.util.NbBundle.getMessage(PostRegistrationCP.class, "PostRegistrationCP.highShiftRB.toolTipText")); // NOI18N
+        highShiftRB.setOpaque(false);
+        highShiftRB.addActionListener(new java.awt.event.ActionListener() {
+            public void actionPerformed(java.awt.event.ActionEvent evt) {
+                highShiftRBActionPerformed(evt);
+            }
+        });
+
         javax.swing.GroupLayout shiftPanelLayout = new javax.swing.GroupLayout(shiftPanel);
         shiftPanel.setLayout(shiftPanelLayout);
         shiftPanelLayout.setHorizontalGroup(
             shiftPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
             .addGroup(shiftPanelLayout.createSequentialGroup()
                 .addGroup(shiftPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
-                    .addComponent(highShiftRB)
-                    .addComponent(lowShiftRB))
+                    .addComponent(lowShiftRB)
+                    .addComponent(highShiftRB))
                 .addGap(0, 8, Short.MAX_VALUE))
             .addGroup(shiftPanelLayout.createSequentialGroup()
                 .addContainerGap()
@@ -1315,9 +1319,9 @@ public class PostRegistrationCP extends javax.swing.JPanel {
             .addGroup(shiftPanelLayout.createSequentialGroup()
                 .addComponent(shiftLabel)
                 .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
-                .addComponent(highShiftRB)
-                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                 .addComponent(lowShiftRB)
+                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
+                .addComponent(highShiftRB)
                 .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
         );
 
@@ -1426,6 +1430,10 @@ public class PostRegistrationCP extends javax.swing.JPanel {
         );
     }// </editor-fold>//GEN-END:initComponents
 
+    /**
+     * Creates color chooser to change primary color
+     * @param evt 
+     */
     private void primaryColorPanelMouseClicked(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_primaryColorPanelMouseClicked
         if (transparencySlider.getValue() == 0) {
             return;
@@ -1437,7 +1445,11 @@ public class PostRegistrationCP extends javax.swing.JPanel {
             listener.setPrimaryColor(newColor);
         }
     }//GEN-LAST:event_primaryColorPanelMouseClicked
-
+    
+    /**
+     * Creates color chooser to change secondary color
+     * @param evt 
+     */
     private void secondaryColorPanelMouseClicked(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_secondaryColorPanelMouseClicked
         if (transparencySlider.getValue() == 2*RegistrationCPEventListener.TRANSPARENCY_RANGE) {
             return;
@@ -1450,12 +1462,21 @@ public class PostRegistrationCP extends javax.swing.JPanel {
         }
     }//GEN-LAST:event_secondaryColorPanelMouseClicked
 
+    /**
+     * Resets transparency slider to default position
+     * @param evt 
+     */
     private void transparencyButtonActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_transparencyButtonActionPerformed
-        transparencySlider.setValue(10);
+        transparencySlider.setValue(RegistrationCPEventListener.TRANSPARENCY_RANGE);
         transparencySlider.repaint();
-        listener.setTransparency(10);
+        listener.setTransparency(RegistrationCPEventListener.TRANSPARENCY_RANGE);
     }//GEN-LAST:event_transparencyButtonActionPerformed
 
+    /**
+     * Disables buttons if set to maximum or minimum
+     * Sets transparency
+     * @param evt 
+     */
     private void transparencySliderStateChanged(javax.swing.event.ChangeEvent evt) {//GEN-FIRST:event_transparencySliderStateChanged
         int transparency = transparencySlider.getValue();
         if (transparency == 0) {
@@ -1490,14 +1511,26 @@ public class PostRegistrationCP extends javax.swing.JPanel {
         listener.setTransparency(transparency);
     }//GEN-LAST:event_transparencySliderStateChanged
 
+    /**
+     * Sets front facing
+     * @param evt 
+     */
     private void frontButtonActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_frontButtonActionPerformed
         listener.setFrontFacing();
     }//GEN-LAST:event_frontButtonActionPerformed
 
+    /**
+     * Sets side facing
+     * @param evt 
+     */
     private void profileButtonActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_profileButtonActionPerformed
         listener.setSideFacing();
     }//GEN-LAST:event_profileButtonActionPerformed
 
+    /**
+     * Resets translation
+     * @param evt 
+     */
     private void translationButtonActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_translationButtonActionPerformed
         translationXFTF.setValue(0);
         translationYFTF.setValue(0);
@@ -1505,6 +1538,10 @@ public class PostRegistrationCP extends javax.swing.JPanel {
         listener.resetTranslation();
     }//GEN-LAST:event_translationButtonActionPerformed
 
+    /**
+     * Resets rotation
+     * @param evt 
+     */
     private void rotationButtonActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_rotationButtonActionPerformed
         rotationXFTF.setValue(0);
         rotationYFTF.setValue(0);
@@ -1512,101 +1549,185 @@ public class PostRegistrationCP extends javax.swing.JPanel {
         listener.resetRotation();
     }//GEN-LAST:event_rotationButtonActionPerformed
 
+    /**
+     * Resets scale
+     * @param evt 
+     */
     private void scaleButtonActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_scaleButtonActionPerformed
         scaleFTF.setValue(0);
         listener.resetScale();
     }//GEN-LAST:event_scaleButtonActionPerformed
 
+    /**
+     * Resetes all transformations
+     * @param evt 
+     */
     private void resetAllButtonActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_resetAllButtonActionPerformed
         translationButtonActionPerformed(evt);
         rotationButtonActionPerformed(evt);
         scaleButtonActionPerformed(evt);
     }//GEN-LAST:event_resetAllButtonActionPerformed
 
+    /**
+     * Sets new translation on X-axis
+     * @param evt 
+     */
     private void translationXFTFPropertyChange(java.beans.PropertyChangeEvent evt) {//GEN-FIRST:event_translationXFTFPropertyChange
         double value = ((Number)translationXFTF.getValue()).doubleValue();
         listener.setXTranslation(value);
     }//GEN-LAST:event_translationXFTFPropertyChange
 
+    /**
+     * Sets new translation on Y-axis
+     * @param evt 
+     */
     private void translationYFTFPropertyChange(java.beans.PropertyChangeEvent evt) {//GEN-FIRST:event_translationYFTFPropertyChange
         double value = ((Number)translationYFTF.getValue()).doubleValue();
         listener.setYTranslation(value);
     }//GEN-LAST:event_translationYFTFPropertyChange
 
+    /**
+     * Sets new translation on Z-axis
+     * @param evt 
+     */
     private void translationZFTFPropertyChange(java.beans.PropertyChangeEvent evt) {//GEN-FIRST:event_translationZFTFPropertyChange
         double value = ((Number)translationZFTF.getValue()).doubleValue();
         listener.setZTranslation(value);
     }//GEN-LAST:event_translationZFTFPropertyChange
 
+    /**
+     * Sets new rotation on X-axis
+     * @param evt 
+     */
     private void rotationXFTFPropertyChange(java.beans.PropertyChangeEvent evt) {//GEN-FIRST:event_rotationXFTFPropertyChange
         double value = ((Number)rotationXFTF.getValue()).doubleValue();
         listener.setXRotation(value);
     }//GEN-LAST:event_rotationXFTFPropertyChange
 
+    /**
+     * Sets new rotation on Y-axis
+     * @param evt 
+     */
     private void rotationYFTFPropertyChange(java.beans.PropertyChangeEvent evt) {//GEN-FIRST:event_rotationYFTFPropertyChange
         double value = ((Number)rotationYFTF.getValue()).doubleValue();
         listener.setYRotation(value);
     }//GEN-LAST:event_rotationYFTFPropertyChange
 
+    /**
+     * Sets new rotation o Z-axis
+     * @param evt 
+     */
     private void rotationZFTFPropertyChange(java.beans.PropertyChangeEvent evt) {//GEN-FIRST:event_rotationZFTFPropertyChange
         double value = ((Number)rotationZFTF.getValue()).doubleValue();
         listener.setZRotation(value);
     }//GEN-LAST:event_rotationZFTFPropertyChange
 
+    /**
+     * Sets new scale
+     * @param evt 
+     */
     private void scaleFTFPropertyChange(java.beans.PropertyChangeEvent evt) {//GEN-FIRST:event_scaleFTFPropertyChange
         double value = ((Number)scaleFTF.getValue()).doubleValue();
         listener.setScale(value);
     }//GEN-LAST:event_scaleFTFPropertyChange
 
+    /**
+     * Adds or removes highlights of primary face
+     * @param evt 
+     */
     private void primaryHighlightsCBActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_primaryHighlightsCBActionPerformed
-        if (primaryHighlightsCB.isSelected())
+        if (primaryHighlightsCB.isSelected()) {
             listener.setPrimaryHighlights();
-        else
+        }
+        else {
             listener.removePrimaryHighlights();
+        }
     }//GEN-LAST:event_primaryHighlightsCBActionPerformed
 
+    /**
+     * Adds or removes highlights of secondary face
+     * @param evt 
+     */
     private void secondaryHighlightsCBActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_secondaryHighlightsCBActionPerformed
-        if (secondaryHighlightsCB.isSelected())
+        if (secondaryHighlightsCB.isSelected()) {
             listener.setSecondaryHighlights();
-        else
+        }
+        else {
             listener.removeSecondaryHighlights();
+        }
     }//GEN-LAST:event_secondaryHighlightsCBActionPerformed
 
+    /**
+     * Sets primary face to render solid
+     * @param evt 
+     */
     private void primaryFillRBActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_primaryFillRBActionPerformed
         listener.setPrimaryFill();
     }//GEN-LAST:event_primaryFillRBActionPerformed
 
+    /**
+     * Sets primary face to render as lines
+     * @param evt 
+     */
     private void primaryLinesRBActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_primaryLinesRBActionPerformed
         listener.setPrimaryLines();
     }//GEN-LAST:event_primaryLinesRBActionPerformed
 
+    /**
+     * Sets primary face to render as points
+     * @param evt 
+     */
     private void primaryPointsRBActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_primaryPointsRBActionPerformed
         listener.setPrimaryPoints();
     }//GEN-LAST:event_primaryPointsRBActionPerformed
 
+    /**
+     * Sets secondary face to render solid
+     * @param evt 
+     */
     private void secondaryFillRBActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_secondaryFillRBActionPerformed
         listener.setSecondaryFill();
     }//GEN-LAST:event_secondaryFillRBActionPerformed
 
+    /**
+     * Sets secondary face to render as lines
+     * @param evt 
+     */
     private void secondaryLinesRBActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_secondaryLinesRBActionPerformed
         listener.setSecondaryLines();
     }//GEN-LAST:event_secondaryLinesRBActionPerformed
 
+    /**
+     * Sets secondary face to render as points
+     * @param evt 
+     */
     private void secondaryPointsRBActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_secondaryPointsRBActionPerformed
         listener.setSecondaryPoints();
     }//GEN-LAST:event_secondaryPointsRBActionPerformed
 
+    /**
+     * Resets colors to default
+     * @param evt 
+     */
     private void colorButtonActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_colorButtonActionPerformed
         primaryColorPanel.setBackground(RegistrationCPEventListener.DEFAULT_PRIMARY_COLOR);
         secondaryColorPanel.setBackground(RegistrationCPEventListener.DEFAULT_SECONDARY_COLOR);
         listener.setDeafultColor();
     }//GEN-LAST:event_colorButtonActionPerformed
 
+    /**
+     * Applies performed transformations
+     * @param evt 
+     */
     private void applyButtonActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_applyButtonActionPerformed
         listener.transformFace();
         resetAllButtonActionPerformed(evt);
     }//GEN-LAST:event_applyButtonActionPerformed
 
+    /**
+     * Disables or enables feature points options and shows/hides feature points
+     * @param evt 
+     */
     private void featurePointsButtonActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_featurePointsButtonActionPerformed
         if (listener.isFeaturePointsActive()) {
             featurePointsButton.setText("show");
@@ -1625,144 +1746,284 @@ public class PostRegistrationCP extends javax.swing.JPanel {
         }
     }//GEN-LAST:event_featurePointsButtonActionPerformed
 
+    /**
+     * Sets new feature points thershold value
+     * @param evt 
+     */
     private void thersholdFTFPropertyChange(java.beans.PropertyChangeEvent evt) {//GEN-FIRST:event_thersholdFTFPropertyChange
         listener.setFeaturePointsThreshold(((Number)thersholdFTF.getValue()).doubleValue());
     }//GEN-LAST:event_thersholdFTFPropertyChange
 
+    /**
+     * Starts animation of negative translation on X-axis
+     * @param evt 
+     */
     private void leftTranslationXButtonMousePressed(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_leftTranslationXButtonMousePressed
         animator.startModelAnimation(Direction.TRANSLATE_LEFT, this);
     }//GEN-LAST:event_leftTranslationXButtonMousePressed
 
+    /**
+     * Stops animation of negative translation on X-axis
+     * @param evt 
+     */
     private void leftTranslationXButtonMouseReleased(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_leftTranslationXButtonMouseReleased
         animator.stopModelAnimation(this);
     }//GEN-LAST:event_leftTranslationXButtonMouseReleased
 
+    /**
+     * Starts animation of positive translation on X-axis
+     * @param evt 
+     */
     private void rightTranslationXButtonMousePressed(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_rightTranslationXButtonMousePressed
         animator.startModelAnimation(Direction.TRANSLATE_RIGHT, this);
     }//GEN-LAST:event_rightTranslationXButtonMousePressed
 
+    /**
+     * Stops animation of positive translation on X-axis
+     * @param evt 
+     */
     private void rightTranslationXButtonMouseReleased(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_rightTranslationXButtonMouseReleased
         animator.stopModelAnimation(this);
     }//GEN-LAST:event_rightTranslationXButtonMouseReleased
-
+    
+    /**
+     * Starts animation of negative translation on Y-axis
+     * @param evt 
+     */
     private void leftTranslationYButtonMousePressed(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_leftTranslationYButtonMousePressed
         animator.startModelAnimation(Direction.TRANSLATE_UP, this);
     }//GEN-LAST:event_leftTranslationYButtonMousePressed
 
+    /**
+     * Stops animation of negative translation on Y-axis
+     * @param evt 
+     */
     private void leftTranslationYButtonMouseReleased(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_leftTranslationYButtonMouseReleased
         animator.stopModelAnimation(this);
     }//GEN-LAST:event_leftTranslationYButtonMouseReleased
 
+    /**
+     * Starts animation of positive translation on Y-axis
+     * @param evt 
+     */
     private void rightTranslationYButtonMousePressed(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_rightTranslationYButtonMousePressed
         animator.startModelAnimation(Direction.TRANSLATE_DOWN, this);
     }//GEN-LAST:event_rightTranslationYButtonMousePressed
 
+    /**
+     * Stops animation of positive translation on Y-axis
+     * @param evt 
+     */
     private void rightTranslationYButtonMouseReleased(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_rightTranslationYButtonMouseReleased
         animator.stopModelAnimation(this);
     }//GEN-LAST:event_rightTranslationYButtonMouseReleased
 
+    /**
+     * Starts animation of negative translation on Z-axis
+     * @param evt 
+     */
     private void leftTranslationZButtonMousePressed(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_leftTranslationZButtonMousePressed
         animator.startModelAnimation(Direction.TRANSLATE_IN, this);
     }//GEN-LAST:event_leftTranslationZButtonMousePressed
 
+    /**
+     * Stops animation of negative translation on Z-axis
+     * @param evt 
+     */
     private void leftTranslationZButtonMouseReleased(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_leftTranslationZButtonMouseReleased
         animator.stopModelAnimation(this);
     }//GEN-LAST:event_leftTranslationZButtonMouseReleased
 
+    /**
+     * Starts animation of positive translation on Z-axis
+     * @param evt 
+     */
     private void rightTranslationZButtonMousePressed(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_rightTranslationZButtonMousePressed
         animator.startModelAnimation(Direction.TRANSLATE_OUT, this);
     }//GEN-LAST:event_rightTranslationZButtonMousePressed
 
+    /**
+     * Stops animation of positive translation on Z-axis
+     * @param evt 
+     */
     private void rightTranslationZButtonMouseReleased(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_rightTranslationZButtonMouseReleased
         animator.stopModelAnimation(this);
     }//GEN-LAST:event_rightTranslationZButtonMouseReleased
 
+    /**
+     * Starts animation of negative rotation on X-axis
+     * @param evt 
+     */
     private void leftRotationXButtonMousePressed(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_leftRotationXButtonMousePressed
         animator.startModelAnimation(Direction.ROTATE_LEFT, this);
     }//GEN-LAST:event_leftRotationXButtonMousePressed
 
+    /**
+     * Stops animation of negative rotation on X-axis
+     * @param evt 
+     */
     private void leftRotationXButtonMouseReleased(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_leftRotationXButtonMouseReleased
         animator.stopModelAnimation(this);
     }//GEN-LAST:event_leftRotationXButtonMouseReleased
 
+    /**
+     * Starts animation of positive rotation on X-axis
+     * @param evt 
+     */
     private void rightRotationXButtonMousePressed(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_rightRotationXButtonMousePressed
         animator.startModelAnimation(Direction.ROTATE_RIGHT, this);
     }//GEN-LAST:event_rightRotationXButtonMousePressed
 
+    /**
+     * Stops animation of positive rotation on X-axis
+     * @param evt 
+     */
     private void rightRotationXButtonMouseReleased(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_rightRotationXButtonMouseReleased
         animator.stopModelAnimation(this);
     }//GEN-LAST:event_rightRotationXButtonMouseReleased
 
+    /**
+     * Starts animation of negative rotation on Y-axis
+     * @param evt 
+     */
     private void leftRotationYButtonMousePressed(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_leftRotationYButtonMousePressed
         animator.startModelAnimation(Direction.ROTATE_UP, this);
     }//GEN-LAST:event_leftRotationYButtonMousePressed
 
+    /**
+     * Stops animation of negative rotation on Y-axis
+     * @param evt 
+     */
     private void leftRotationYButtonMouseReleased(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_leftRotationYButtonMouseReleased
         animator.stopModelAnimation(this);
     }//GEN-LAST:event_leftRotationYButtonMouseReleased
 
+    /**
+     * Starts animation of positive rotation on Y-axis
+     * @param evt 
+     */
     private void rightRotationYButtonMousePressed(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_rightRotationYButtonMousePressed
         animator.startModelAnimation(Direction.ROTATE_DOWN, this);
     }//GEN-LAST:event_rightRotationYButtonMousePressed
 
+    /**
+     * Stops animation of positive rotation on Y-axis
+     * @param evt 
+     */
     private void rightRotationYButtonMouseReleased(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_rightRotationYButtonMouseReleased
         animator.stopModelAnimation(this);
     }//GEN-LAST:event_rightRotationYButtonMouseReleased
 
+    /**
+     * Starts animation of negative rotation on Z-axis
+     * @param evt 
+     */
     private void leftRotationZButtonMousePressed(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_leftRotationZButtonMousePressed
         animator.startModelAnimation(Direction.ROTATE_IN, this);
     }//GEN-LAST:event_leftRotationZButtonMousePressed
 
+    /**
+     * Stops animation of negative rotation on Z-axis
+     * @param evt 
+     */
     private void leftRotationZButtonMouseReleased(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_leftRotationZButtonMouseReleased
         animator.stopModelAnimation(this);
     }//GEN-LAST:event_leftRotationZButtonMouseReleased
 
+    /**
+     * Starts animation of positive rotation on Z-axis
+     * @param evt 
+     */
     private void rightRotationZButtonMousePressed(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_rightRotationZButtonMousePressed
         animator.startModelAnimation(Direction.ROTATE_OUT, this);
     }//GEN-LAST:event_rightRotationZButtonMousePressed
 
+    /**
+     * Stops animation of positive rotation on Z-axis
+     * @param evt 
+     */
     private void rightRotationZButtonMouseReleased(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_rightRotationZButtonMouseReleased
         animator.stopModelAnimation(this);
     }//GEN-LAST:event_rightRotationZButtonMouseReleased
 
+    /**
+     * Starts animation of scaling down
+     * @param evt 
+     */
     private void scaleMinusButtonMousePressed(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_scaleMinusButtonMousePressed
         animator.startModelAnimation(Direction.ZOOM_OUT, this);
     }//GEN-LAST:event_scaleMinusButtonMousePressed
 
+    /**
+     * Stops animation of scaling down
+     * @param evt 
+     */
     private void scaleMinusButtonMouseReleased(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_scaleMinusButtonMouseReleased
         animator.stopModelAnimation(this);
     }//GEN-LAST:event_scaleMinusButtonMouseReleased
 
+    /**
+     * Starts animation of scaling up
+     * @param evt 
+     */
     private void scalePlusButtonMousePressed(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_scalePlusButtonMousePressed
         animator.startModelAnimation(Direction.ZOOM_IN, this);
     }//GEN-LAST:event_scalePlusButtonMousePressed
 
+    /**
+     * Stops animation of scaling up
+     * @param evt 
+     */
     private void scalePlusButtonMouseReleased(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_scalePlusButtonMouseReleased
         animator.stopModelAnimation(this);
     }//GEN-LAST:event_scalePlusButtonMouseReleased
 
+    /**
+     * Lowers feature points thershold
+     * @param evt 
+     */
     private void thresholdDownButtonActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_thresholdDownButtonActionPerformed
         double newValue = ((Number)thersholdFTF.getValue()).doubleValue() - 0.1;
         thersholdFTF.setValue(newValue);
     }//GEN-LAST:event_thresholdDownButtonActionPerformed
 
+    /**
+    * Increases feature points thershold
+    * @param evt 
+    */
     private void thersholdUpButtonActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_thersholdUpButtonActionPerformed
         double newValue = ((Number)thersholdFTF.getValue()).doubleValue() + 0.1;
         thersholdFTF.setValue(newValue);
     }//GEN-LAST:event_thersholdUpButtonActionPerformed
 
+    /**
+     * Resets feature poitns thershold
+     * @param evt 
+     */
     private void thersholdButtonActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_thersholdButtonActionPerformed
-        thersholdFTF.setValue(listener.getFeaturePointsThreshold());
+        thersholdFTF.setValue(RegistrationCPEventListener.LOW_SHIFT_QUOTIENT);
     }//GEN-LAST:event_thersholdButtonActionPerformed
 
-    private void highShiftRBActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_highShiftRBActionPerformed
+    /**
+     * Sets transformation shifting amount to low
+     * @param evt 
+     */
+    private void lowShiftRBActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_lowShiftRBActionPerformed
         listener.setMoveModifier(RegistrationCPEventListener.LOW_SHIFT_QUOTIENT);
-    }//GEN-LAST:event_highShiftRBActionPerformed
+    }//GEN-LAST:event_lowShiftRBActionPerformed
 
-    private void lowShiftRBActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_lowShiftRBActionPerformed
+    /**
+     * Sets transformation shifting amount to high
+     * @param evt 
+     */
+    private void highShiftRBActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_highShiftRBActionPerformed
         listener.setMoveModifier(RegistrationCPEventListener.HIGH_SHIFT_QUOTIENT);
-    }//GEN-LAST:event_lowShiftRBActionPerformed
+    }//GEN-LAST:event_highShiftRBActionPerformed
 
+    /**
+     * Toggles rendering of back face on and off
+     * @param evt 
+     */
     private void backfaceButtonActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_backfaceButtonActionPerformed
         if (listener.isShowBackfaceActive()) {
             backfaceButton.setText("show backface");
diff --git a/GUI/src/main/java/cz/fidentis/analyst/registration/ModelRotationAnimator.java b/GUI/src/main/java/cz/fidentis/analyst/registration/ModelRotationAnimator.java
index 4fb24fe09ac94f18fc1a55bec1392f5aac933aa5..87a6d7011af5d8e3d28e3f4042c42678fcd45d9e 100644
--- a/GUI/src/main/java/cz/fidentis/analyst/registration/ModelRotationAnimator.java
+++ b/GUI/src/main/java/cz/fidentis/analyst/registration/ModelRotationAnimator.java
@@ -1,8 +1,3 @@
-/*
- * To change this license header, choose License Headers in Project Properties.
- * To change this template file, choose Tools | Templates
- * and open the template in the editor.
- */
 package cz.fidentis.analyst.registration;
 
 import cz.fidentis.analyst.gui.canvas.Direction;
@@ -30,7 +25,7 @@ public class ModelRotationAnimator {
     private final FPSAnimator animator;
     
     /*
-     * Animatio timer
+     * Animation timer
      */
     private long startClickTime = 0;
     private TimerTask task;
diff --git a/GUI/src/main/java/cz/fidentis/analyst/registration/RegistrationCPEventListener.java b/GUI/src/main/java/cz/fidentis/analyst/registration/RegistrationCPEventListener.java
index e48e793ad99a7cb0f736c079db73cb302ec598fa..5b56c55a1323c3298bc9a5c48b6cb5b701e4afec 100644
--- a/GUI/src/main/java/cz/fidentis/analyst/registration/RegistrationCPEventListener.java
+++ b/GUI/src/main/java/cz/fidentis/analyst/registration/RegistrationCPEventListener.java
@@ -1,8 +1,3 @@
-/*
- * To change this license header, choose License Headers in Project Properties.
- * To change this template file, choose Tools | Templates
- * and open the template in the editor.
- */
 package cz.fidentis.analyst.registration;
 
 import com.jogamp.opengl.GL2;
@@ -18,10 +13,11 @@ import javax.vecmath.Point3d;
 import javax.vecmath.Vector3d;
 
 /**
- * Updates primary resp. secondary DrawableMesh
+ * Updates primary resp. secondary {@link DrawableMesh}
  * 
  * @author Richard Pajersky
  */
+
 public class RegistrationCPEventListener {
     
     /**
@@ -92,9 +88,10 @@ public class RegistrationCPEventListener {
      * First initialize {@link #canvas} then 
      * {@link #primaryFace} and {@link #secondaryFace}
      * Then computes movement amounts based on 
-     * {@link cz.fidentis.analyst.visitors.mesh.BoundingBox} of secondary face
+     * {@link BoundingBox} of secondary face
      * 
      * @param canvas Canvas with two faces
+     * @throws IllegalArgumentException if the canvas is {@code null}
      */
     public RegistrationCPEventListener(Canvas canvas) {
         if (canvas == null) {
@@ -518,7 +515,7 @@ public class RegistrationCPEventListener {
     }
     
     /**
-     * @return true if feature points are being renderes
+     * @return {@code true} if feature points are being rendered
      */
     public boolean isFeaturePointsActive() {
         return primaryFace.isRenderFeaturePoints();
@@ -576,7 +573,7 @@ public class RegistrationCPEventListener {
     }
     
     /**
-     * @return true if back face is beaing shown
+     * @return {@code true} if back face is being shown
      */
     public boolean isShowBackfaceActive() {
         return primaryFace.isShowBackface();
diff --git a/GUI/src/main/java/cz/fidentis/analyst/registration/RegistrationTestTopComponent.java b/GUI/src/main/java/cz/fidentis/analyst/registration/RegistrationTestTopComponent.java
index 151fb88002cc740790a68a7946b46d2e60c4eb1c..77c580a12978fe31ef5b7e179fde6997717c84d7 100644
--- a/GUI/src/main/java/cz/fidentis/analyst/registration/RegistrationTestTopComponent.java
+++ b/GUI/src/main/java/cz/fidentis/analyst/registration/RegistrationTestTopComponent.java
@@ -1,25 +1,13 @@
-/*
- * To change this license header, choose License Headers in Project Properties.
- * To change this template file, choose Tools | Templates
- * and open the template in the editor.
- */
 package cz.fidentis.analyst.registration;
 
 import cz.fidentis.analyst.registration.RegistrationCPEventListener;
 import cz.fidentis.analyst.face.HumanFace;
 import cz.fidentis.analyst.feature.FeaturePoint;
-import cz.fidentis.analyst.feature.services.FeaturePointImportExportService;
 import cz.fidentis.analyst.gui.scene.DrawableMesh;
-import cz.fidentis.analyst.gui.tab.PostRegistrationCP;
 import cz.fidentis.analyst.mesh.io.ModelFileFilter;
-import java.awt.Color;
 import java.awt.Dimension;
-import java.io.File;
-import java.io.IOException;
-import java.util.AbstractMap;
 import java.util.ArrayList;
 import javax.swing.JFileChooser;
-import javax.vecmath.Point3d;
 import org.netbeans.api.settings.ConvertAsProperties;
 import org.openide.awt.ActionID;
 import org.openide.awt.ActionReference;
@@ -27,7 +15,7 @@ import org.openide.windows.TopComponent;
 import org.openide.util.NbBundle.Messages;
 
 /**
- * Top component which displays something.
+ * Top component used to test registration adjustment
  */
 @ConvertAsProperties(
         dtd = "-//cz.fidentis.analyst.gui//RegistrationTest//EN",
@@ -59,12 +47,12 @@ public final class RegistrationTestTopComponent extends TopComponent {
         
         HumanFace primary = null;
         HumanFace secondary = null;
-        // choose models
+        
+        /* choose models */
         String[] extensions = new String[2];
         extensions[0] = "obj";
         extensions[1] = "OBJ";
         ModelFileFilter filter = new ModelFileFilter(extensions, "*.obj");
-        
         JFileChooser jFileChooser1 = new JFileChooser();
         jFileChooser1.setPreferredSize(new Dimension (800,500));
         jFileChooser1.addChoosableFileFilter(filter);
@@ -79,10 +67,9 @@ public final class RegistrationTestTopComponent extends TopComponent {
             secondary = new HumanFace(jFileChooser1.getSelectedFile());
         } catch (Exception ex) {}
 
+        canvas1.initScene(primary, secondary); // init canvas
         
-        
-        canvas1.initScene(primary, secondary);
-        // feature points test
+        /* feature points test */
         ArrayList<DrawableMesh> drawables = new ArrayList<>(canvas1.getScene().getDrawables());
         DrawableMesh primaryFace = drawables.get(0);
         DrawableMesh secondaryFace = drawables.get(1);
@@ -113,7 +100,6 @@ public final class RegistrationTestTopComponent extends TopComponent {
         
         postRegistrationCP1.initPostRegistrationCP(new RegistrationCPEventListener(canvas1));
         
-
     }
 
     /**
diff --git a/GUI/src/main/resources/cz/fidentis/analyst/gui/tab/Bundle.properties b/GUI/src/main/resources/cz/fidentis/analyst/gui/tab/Bundle.properties
index 6fc5165c1776d1d145d310fd83c57e09a6ecf012..f0cbcd4f6b094696fce5c33177b5fa6788ec2e8a 100644
--- a/GUI/src/main/resources/cz/fidentis/analyst/gui/tab/Bundle.properties
+++ b/GUI/src/main/resources/cz/fidentis/analyst/gui/tab/Bundle.properties
@@ -82,9 +82,9 @@ PostRegistrationCP.registrationAdjustmentLabel.text=Registration adjustment
 PostRegistrationCP.resetAllButton.toolTipText=reset all transformations
 PostRegistrationCP.applyButton.toolTipText=apply transformations
 PostRegistrationCP.shiftLabel.text=shift
-PostRegistrationCP.highShiftRB.toolTipText=set low shifting amount
-PostRegistrationCP.highShiftRB.text=low
-PostRegistrationCP.lowShiftRB.toolTipText=set high shifting amount
-PostRegistrationCP.lowShiftRB.text=high
 PostRegistrationCP.backfaceButton.text=hide backface
 PostRegistrationCP.shiftLabel.toolTipText=transformation amount
+PostRegistrationCP.highShiftRB.text=high
+PostRegistrationCP.highShiftRB.toolTipText=set high shifting amount
+PostRegistrationCP.lowShiftRB.text=low
+PostRegistrationCP.lowShiftRB.toolTipText=set low shifting amount