Полдня пытаюсь понять, как работает этот кусок из ic2 (мой эклипс так же когнитивнj диссонирует, как и я):
Что за знаки доллара и почему это все идет из null.
весь метод:
Код:
null.$SwitchMap$ic2$core$util$AabbUtil$Edge[edge.ordinal()]
Что за знаки доллара и почему это все идет из null.
весь метод:
Код:
private static double[] getEdgeRay(AabbUtil.Edge edge, AxisAlignedBB bbox) {
switch(null.$SwitchMap$ic2$core$util$AabbUtil$Edge[edge.ordinal()]) {
case 1:
return new double[]{-bbox.minY, -bbox.minZ, -1.0D, 0.0D, 0.0D, 0.0D};
case 2:
return new double[]{bbox.minX, 0.0D, 0.0D, -bbox.minZ, 0.0D, 1.0D};
case 3:
return new double[]{0.0D, bbox.minX, 0.0D, bbox.minY, -1.0D, 0.0D};
case 4:
return new double[]{bbox.maxX, 0.0D, 0.0D, -bbox.minZ, 0.0D, 1.0D};
case 5:
return new double[]{0.0D, bbox.maxX, 0.0D, bbox.minY, -1.0D, 0.0D};
case 6:
return new double[]{-bbox.maxY, -bbox.minZ, -1.0D, 0.0D, 0.0D, 0.0D};
case 7:
return new double[]{0.0D, bbox.minX, 0.0D, bbox.maxY, -1.0D, 0.0D};
case 8:
return new double[]{-bbox.minY, -bbox.maxZ, -1.0D, 0.0D, 0.0D, 0.0D};
case 9:
return new double[]{bbox.minX, 0.0D, 0.0D, -bbox.maxZ, 0.0D, 1.0D};
case 10:
return new double[]{0.0D, bbox.maxX, 0.0D, bbox.maxY, -1.0D, 0.0D};
case 11:
return new double[]{-bbox.maxY, -bbox.maxZ, -1.0D, 0.0D, 0.0D, 0.0D};
case 12:
return new double[]{bbox.maxX, 0.0D, 0.0D, -bbox.maxZ, 0.0D, 1.0D};
default:
return new double[0];
}
}