|
|
@ -180,22 +180,13 @@
|
|
|
|
z2 = z_values[cell_dest_xi ][cell_dest_yi + 1] + xratio *
|
|
|
|
z2 = z_values[cell_dest_xi ][cell_dest_yi + 1] + xratio *
|
|
|
|
(z_values[cell_dest_xi + 1][cell_dest_yi + 1] - z_values[cell_dest_xi][cell_dest_yi + 1]);
|
|
|
|
(z_values[cell_dest_xi + 1][cell_dest_yi + 1] - z_values[cell_dest_xi][cell_dest_yi + 1]);
|
|
|
|
|
|
|
|
|
|
|
|
if ( cell_dest_xi >= GRID_MAX_POINTS_X-1) {
|
|
|
|
if (cell_dest_xi >= GRID_MAX_POINTS_X - 1) z1 = z2 = 0.0;
|
|
|
|
z1 = 0.0;
|
|
|
|
|
|
|
|
z2 = 0.0;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// we are done with the fractional X distance into the cell. Now with the two Z-Heights we have calculated, we
|
|
|
|
// we are done with the fractional X distance into the cell. Now with the two Z-Heights we have calculated, we
|
|
|
|
// are going to apply the Y-Distance into the cell to interpolate the final Z correction.
|
|
|
|
// are going to apply the Y-Distance into the cell to interpolate the final Z correction.
|
|
|
|
|
|
|
|
|
|
|
|
const float yratio = (RAW_Y_POSITION(end[Y_AXIS]) - mesh_index_to_ypos(cell_dest_yi)) * (1.0 / (MESH_Y_DIST));
|
|
|
|
const float yratio = (RAW_Y_POSITION(end[Y_AXIS]) - mesh_index_to_ypos(cell_dest_yi)) * (1.0 / (MESH_Y_DIST));
|
|
|
|
|
|
|
|
float z0 = cell_dest_yi < GRID_MAX_POINTS_Y - 1 ? z1 + (z2 - z1) * yratio * fade_scaling_factor_for_z(end[Z_AXIS]) : 0.0;
|
|
|
|
float z0 = z1 + (z2 - z1) * yratio;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if ( cell_dest_yi >= GRID_MAX_POINTS_Y-1)
|
|
|
|
|
|
|
|
z0 = 0.0;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
z0 *= fade_scaling_factor_for_z(end[Z_AXIS]);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
/**
|
|
|
|
* If part of the Mesh is undefined, it will show up as NAN
|
|
|
|
* If part of the Mesh is undefined, it will show up as NAN
|
|
|
|