 vec4 cutPositions[18];
 int cutPositionCount = 0;
 
+/**
+ * \brief Emits the vertex position defined by matrix * pos
+ *
+ * This consists of setting the vertexPos and vertexColor
+ * as well as the gl_Position. The color is calculated
+ * from the position so that it can be used as texture coordinate.
+ */
 void emit(const mat4 matrix, const vec4 pos)
 {
   vertexPos = matrix * pos;

  cutPositions[cutPositionCount++] = newPos;
}

void processTriangle(const mat4 matrix, const vec4 nearPlane,
                     const vec4 triangle[3])
{

  EmitVertex();
}

/**
 * \brief Emits the given point, ends the primitive and starts a new one
 * with the given point if necessary
 */
int emitWithPrimitiveHandling(const mat4 matrix, const vec4 pos,
                              const bool triangleSplittingNecessary,
                              int emittedVertexCount)
