String jvxlGetDefinitionLine(Mesh mesh) {
		String definitionLine = mesh.cutoff + " ";

		// cutoff param1 param2 param3
		// | | |
		// when | | > 0 ==> jvxlDataIsColorMapped
		// when | | == -1 ==> not color mapped
		// when | | < -1 ==> jvxlDataIsPrecisionColor
		// when == -1 && == -1 ==> noncontoured plane
		// when == -1 && == -2 ==> contourable plane
		// when < -1 && > 0 ==> contourable functionXY
		// when > 0 && < 0 ==> jvxlDataisBicolorMap

		int nSurfaceData = mesh.jvxlSurfaceData.length();
		int nEdgeData = (mesh.jvxlEdgeData.length() - 1);
		int nColorData = (mesh.jvxlColorData.length() - 1);
		if (mesh.jvxlPlane == null) {
			if (mesh.isContoured)
				definitionLine += (-nSurfaceData) + " " + nEdgeData;
			else if (mesh.isBicolorMap)
				definitionLine += (nSurfaceData) + " " + (-nEdgeData);
			else definitionLine += nSurfaceData + " " + nEdgeData;
			definitionLine += " " + (mesh.isJvxlPrecisionColor && nColorData != -1 ? -nColorData : nColorData);
		}
		else {
			definitionLine += "-1 -2 " + (-nColorData) + " " + mesh.jvxlPlane.x + " " + mesh.jvxlPlane.y + " "
					+ mesh.jvxlPlane.z + " " + mesh.jvxlPlane.w;
		}
		if (mesh.isContoured)
			definitionLine += " " + mesh.nContours;

		// ... mappedDataMin mappedDataMax valueMappedToRed valueMappedToBlue ...
		definitionLine += " " + mesh.mappedDataMin + " " + mesh.mappedDataMax + " " + mesh.valueMappedToRed + " "
				+ mesh.valueMappedToBlue;
		// ... information only ...
		if (mesh.jvxlPlane != null)
			definitionLine += " CONTOUR PLANE " + mesh.jvxlPlane;
		if (mesh.jvxlCompressionRatio > 0)
			definitionLine += " approximate compressionRatio=" + mesh.jvxlCompressionRatio + ":1";
		return definitionLine;
	}