void App::VisZ(TUMDataSetVisualizer * viewer) { float const maxZ = max_element(Input_->begin(), Input_->end(), [] (PointType const& lft, PointType const& rgh) { if (pcl_isfinite(lft.z) && pcl_isfinite(rgh.z)) { return lft.z < rgh.z; } else { return ! pcl_isfinite(lft.z); } })->z; viewer->EasyAdd(Input_, "input", [this, &maxZ] (int i) { // #6 float const relZ = Input_->at(i).z / maxZ; return Color({static_cast<int>(relZ * 255), 0, static_cast<int>((1 - relZ) * 255)}); }); }