diff --git a/hist/histpainter/src/TPainter3dAlgorithms.cxx b/hist/histpainter/src/TPainter3dAlgorithms.cxx index aa567c8121c67ddcc5342e46174de063540eba7c..e23d3b5c949c3bf0787757803299d23043fff8ff 100644 --- a/hist/histpainter/src/TPainter3dAlgorithms.cxx +++ b/hist/histpainter/src/TPainter3dAlgorithms.cxx @@ -16,8 +16,6 @@ \ingroup Histpainter \brief The Legos and Surfaces painter class. - - This package was originally written by Evgueni Tcherniaev from IHEP/Protvino. The original Fortran implementation was adapted to HIGZ/PAW by Olivier Couet @@ -267,57 +265,85 @@ TPainter3dAlgorithms::~TPainter3dAlgorithms() //////////////////////////////////////////////////////////////////////////////// /// Draw back surfaces of surrounding box /// -/// \param[in] ang is the angle between X and Y axis - +/// \param[in] ang angle between X and Y axis void TPainter3dAlgorithms::BackBox(Double_t ang) { + static Int_t iface1[4] = { 1, 4, 8, 5 }; + static Int_t iface2[4] = { 4, 3, 7, 8 }; - /* Initialized data */ - static Int_t iface1[4] = { 1,4,8,5 }; - static Int_t iface2[4] = { 4,3,7,8 }; TView *view = 0; - if (gPad) view = gPad->GetView(); if (!view) { Error("BackBox", "no TView in current pad"); return; } - /* Local variables */ - Double_t cosa, sina; - Int_t i; - Double_t r[24] /* was [3][8] */, av[24] /* was [3][8] */; - Int_t icodes[3]; - Double_t tt[4]; + // Get corners of surrounding box + Double_t r[3*8], av[3*8]; Int_t ix1, ix2, iy1, iy2, iz1, iz2; - - cosa = TMath::Cos(kRad*ang); - sina = TMath::Sin(kRad*ang); + Double_t cosa = TMath::Cos(kRad*ang); + Double_t sina = TMath::Sin(kRad*ang); view->AxisVertex(ang, av, ix1, ix2, iy1, iy2, iz1, iz2); - for (i = 1; i <= 8; ++i) { - r[i*3 - 3] = av[i*3 - 3] + av[i*3 - 2]*cosa; - r[i*3 - 2] = av[i*3 - 2]*sina; - r[i*3 - 1] = av[i*3 - 1]; - } - - // D R A W F O R W A R D F A C E S */ - icodes[0] = 0; - icodes[1] = 0; - icodes[2] = 0; - tt[0] = r[iface1[0]*3 - 1]; - tt[1] = r[iface1[1]*3 - 1]; - tt[2] = r[iface1[2]*3 - 1]; - tt[3] = r[iface1[3]*3 - 1]; + for (Int_t i = 0; i < 8; ++i) { + r[i*3 + 0] = av[i*3 + 0] + av[i*3 + 1]*cosa; + r[i*3 + 1] = av[i*3 + 1]*sina; + r[i*3 + 2] = av[i*3 + 2]; + } + + // Draw back faces + Int_t icodes[3] = { 0, 0, 0 }; + Double_t tt[4]; + tt[0] = r[(iface1[0]-1)*3 + 2]; + tt[1] = r[(iface1[1]-1)*3 + 2]; + tt[2] = r[(iface1[2]-1)*3 + 2]; + tt[3] = r[(iface1[3]-1)*3 + 2]; (this->*fDrawFace)(icodes, r, 4, iface1, tt); - tt[0] = r[iface2[0]*3 - 1]; - tt[1] = r[iface2[1]*3 - 1]; - tt[2] = r[iface2[2]*3 - 1]; - tt[3] = r[iface2[3]*3 - 1]; + tt[0] = r[(iface2[0]-1)*3 + 2]; + tt[1] = r[(iface2[1]-1)*3 + 2]; + tt[2] = r[(iface2[2]-1)*3 + 2]; + tt[3] = r[(iface2[3]-1)*3 + 2]; (this->*fDrawFace)(icodes, r, 4, iface2, tt); } +//////////////////////////////////////////////////////////////////////////////// +/// Draw front surfaces of surrounding box & axes +/// +/// \param[in] ang angle between X and Y axis + +void TPainter3dAlgorithms::FrontBox(Double_t ang) +{ + static Int_t iface1[4] = { 1, 2, 6, 5 }; + static Int_t iface2[4] = { 2, 3, 7, 6 }; + + TView *view = 0; + if (gPad) view = gPad->GetView(); + if (!view) { + Error("FrontBox", "no TView in current pad"); + return; + } + + // Get corners of surrounding box + Double_t r[3*8], av[3*8]; + Int_t ix1, ix2, iy1, iy2, iz1, iz2; + Double_t cosa = TMath::Cos(kRad*ang); + Double_t sina = TMath::Sin(kRad*ang); + view->AxisVertex(ang, av, ix1, ix2, iy1, iy2, iz1, iz2); + for (Int_t i = 0; i < 8; ++i) { + r[i*3 + 0] = av[i*3 + 0] + av[i*3 + 1]*cosa; + r[i*3 + 1] = av[i*3 + 1]*sina; + r[i*3 + 2] = av[i*3 + 2]; + } + + // Draw front faces + Int_t icodes[3] = { 0, 0, 0 }; + Double_t *fdummy = 0; + (this->*fDrawFace)(icodes, r, 4, iface1, fdummy); + (this->*fDrawFace)(icodes, r, 4, iface2, fdummy); +} + + //////////////////////////////////////////////////////////////////////////////// /// Clear screen @@ -348,7 +374,7 @@ void TPainter3dAlgorithms::ColorFunction(Int_t nl, Double_t *fl, Int_t *icl, Int return; } - // C H E C K P A R A M E T E R S + // Check parameters if (nl < 0 || nl > 256) { Error(where, "illegal number of levels (%d)", nl); irep = -1; @@ -371,7 +397,7 @@ void TPainter3dAlgorithms::ColorFunction(Int_t nl, Double_t *fl, Int_t *icl, Int } } - // S E T L E V E L S + // Set levels fNlevel = nl; for (Int_t i = 0; i < fNlevel; ++i) fFunLevel[i] = Hparam.factor*fl[i]; for (Int_t i = 0; i < fNlevel+1; ++i) fColorLevel[i] = icl[i]; @@ -384,17 +410,16 @@ void TPainter3dAlgorithms::ColorFunction(Int_t nl, Double_t *fl, Int_t *icl, Int void TPainter3dAlgorithms::DefineGridLevels(Int_t ndivz) { - Int_t i, nbins=0; - Double_t binLow = 0, binHigh = 0, binWidth = 0; TView *view = 0; - if (gPad) view = gPad->GetView(); if (!view) { Error("GridLevels", "no TView in current pad"); return; } - // Find the main tick marks positions. + // Find the main tick marks positions + Int_t nbins = 0; + Double_t binLow = 0, binHigh = 0, binWidth = 0; Double_t *rmin = view->GetRmin(); Double_t *rmax = view->GetRmax(); if (!rmin || !rmax) return; @@ -405,12 +430,14 @@ void TPainter3dAlgorithms::DefineGridLevels(Int_t ndivz) nbins = TMath::Abs(ndivz); binLow = rmin[2]; binHigh = rmax[2]; - binWidth = (binHigh-binLow)/nbins; + binWidth = (binHigh - binLow)/nbins; } - // Define the grid levels - fNlevel = nbins+1; - for (i = 0; i < fNlevel; ++i) fFunLevel[i] = binLow+i*binWidth; + // Define the grid levels + fNlevel = nbins + 1; + for (Int_t i = 0; i < fNlevel; ++i) { + fFunLevel[i] = binLow + i*binWidth; + } } @@ -643,16 +670,15 @@ void TPainter3dAlgorithms::DrawFaceMove1(Int_t *icodes, Double_t *xyz, Int_t np, //////////////////////////////////////////////////////////////////////////////// -/// Draw face - 3rd variant for "MOVING SCREEN" algorithm (draw level lines only) +/// Draw face - 2nd variant for "MOVING SCREEN" algorithm (draw face for stacked lego plot) /// /// \param[in] icodes set of codes for the line /// \param[in] xyz coordinates of nodes /// \param[in] np number of nodes /// \param[in] iface face -/// \param[in] tt additional function defined on this face +/// \param[in] tt additional function defined on this face (not used in this method) -void TPainter3dAlgorithms::DrawFaceMove3(Int_t *icodes, Double_t *xyz, Int_t np, - Int_t *iface, Double_t *tt) +void TPainter3dAlgorithms::DrawFaceMove2(Int_t *icodes, Double_t *xyz, Int_t np, Int_t *iface, Double_t *) { TView *view = 0; if (gPad) view = gPad->GetView(); @@ -667,12 +693,9 @@ void TPainter3dAlgorithms::DrawFaceMove3(Int_t *icodes, Double_t *xyz, Int_t np, p3[i*3 + 2] = xyz[(k-1)*3 + 2]; } - // Find level lines - FindLevelLines(np, p3, tt); - - // Draw level lines + // Draw face Double_t p1[3], p2[3], x[2], y[2]; - if (icodes[2] == 0) { // front and back boxes + if (icodes[2] == 0) { // front & back boxes SetLineColor(1); SetLineStyle(1); SetLineWidth(1); @@ -682,10 +705,12 @@ void TPainter3dAlgorithms::DrawFaceMove3(Int_t *icodes, Double_t *xyz, Int_t np, SetLineWidth(fEdgeWidth[fEdgeIdx]); } TAttLine::Modify(); - for (Int_t il = 0; il < fNlines; ++il) { - FindVisibleDraw(&fPlines[6*il + 0], &fPlines[6*il + 3]); - view->WCtoNDC(&fPlines[6*il + 0], p1); - view->WCtoNDC(&fPlines[6*il + 3], p2); + for (Int_t i = 0; i < np; ++i) { + Int_t i1 = i; + Int_t i2 = (i == np-1) ? 0 : i + 1; + FindVisibleDraw(&p3[i1*3], &p3[i2*3]); + view->WCtoNDC(&p3[i1*3], p1); + view->WCtoNDC(&p3[i2*3], p2); Double_t xdel = p2[0] - p1[0]; Double_t ydel = p2[1] - p1[1]; for (Int_t it = 0; it < fNT; ++it) { @@ -707,15 +732,16 @@ void TPainter3dAlgorithms::DrawFaceMove3(Int_t *icodes, Double_t *xyz, Int_t np, //////////////////////////////////////////////////////////////////////////////// -/// Draw face - 2nd variant for "MOVING SCREEN" algorithm (draw face for stacked lego plot) +/// Draw face - 3rd variant for "MOVING SCREEN" algorithm (draw level lines only) /// /// \param[in] icodes set of codes for the line /// \param[in] xyz coordinates of nodes /// \param[in] np number of nodes /// \param[in] iface face -/// \param[in] tt additional function defined on this face (not used in this method) +/// \param[in] tt additional function defined on this face -void TPainter3dAlgorithms::DrawFaceMove2(Int_t *icodes, Double_t *xyz, Int_t np, Int_t *iface, Double_t *) +void TPainter3dAlgorithms::DrawFaceMove3(Int_t *icodes, Double_t *xyz, Int_t np, + Int_t *iface, Double_t *tt) { TView *view = 0; if (gPad) view = gPad->GetView(); @@ -730,9 +756,12 @@ void TPainter3dAlgorithms::DrawFaceMove2(Int_t *icodes, Double_t *xyz, Int_t np, p3[i*3 + 2] = xyz[(k-1)*3 + 2]; } - // Draw face + // Find level lines + FindLevelLines(np, p3, tt); + + // Draw level lines Double_t p1[3], p2[3], x[2], y[2]; - if (icodes[2] == 0) { // front & back boxes + if (icodes[2] == 0) { // front and back boxes SetLineColor(1); SetLineStyle(1); SetLineWidth(1); @@ -742,12 +771,10 @@ void TPainter3dAlgorithms::DrawFaceMove2(Int_t *icodes, Double_t *xyz, Int_t np, SetLineWidth(fEdgeWidth[fEdgeIdx]); } TAttLine::Modify(); - for (Int_t i = 0; i < np; ++i) { - Int_t i1 = i; - Int_t i2 = (i == np-1) ? 0 : i + 1; - FindVisibleDraw(&p3[i1*3], &p3[i2*3]); - view->WCtoNDC(&p3[i1*3], p1); - view->WCtoNDC(&p3[i2*3], p2); + for (Int_t il = 0; il < fNlines; ++il) { + FindVisibleDraw(&fPlines[6*il + 0], &fPlines[6*il + 3]); + view->WCtoNDC(&fPlines[6*il + 0], p1); + view->WCtoNDC(&fPlines[6*il + 3], p2); Double_t xdel = p2[0] - p1[0]; Double_t ydel = p2[1] - p1[1]; for (Int_t it = 0; it < fNT; ++it) { @@ -771,47 +798,39 @@ void TPainter3dAlgorithms::DrawFaceMove2(Int_t *icodes, Double_t *xyz, Int_t np, //////////////////////////////////////////////////////////////////////////////// /// Draw face - 1st variant for "RASTER SCREEN" algorithm (draw face with level lines) /// -/// \param[in] icodes set of codes for the line (not used in this method) +/// \param[in] icodes set of codes for the line /// \param[in] xyz coordinates of nodes /// \param[in] np number of nodes /// \param[in] iface face -/// \param[in] t additional function defined on this face (not used in this method) +/// \param[in] tt additional function defined on this face void TPainter3dAlgorithms::DrawFaceRaster1(Int_t *icodes, Double_t *xyz, Int_t np, Int_t *iface, Double_t *tt) { - Double_t xdel, ydel; - - Int_t i, k, i1, i2, il, it; - Double_t x[2], y[2]; - Double_t p1[3], p2[3], p3[36] /* was [3][12] */; - Double_t pp[24] /* was [2][12] */; TView *view = 0; - if (gPad) view = gPad->GetView(); if (!view) return; - // C O P Y P O I N T S T O A R R A Y - /* Parameter adjustments */ - --tt; - --iface; - xyz -= 4; - --icodes; - - for (i = 1; i <= np; ++i) { - k = iface[i]; + // Copy vertices to array + Double_t p3[3*12], pp[2*12]; + for (Int_t i = 0; i < np; ++i) { + Int_t k = iface[i]; if (k < 0) k = -k; - p3[i*3 - 3] = xyz[k*3 + 1]; - p3[i*3 - 2] = xyz[k*3 + 2]; - p3[i*3 - 1] = xyz[k*3 + 3]; - view->WCtoNDC(&p3[i*3 - 3], &pp[2*i - 2]); + p3[i*3 + 0] = xyz[(k-1)*3 + 0]; + p3[i*3 + 1] = xyz[(k-1)*3 + 1]; + p3[i*3 + 2] = xyz[(k-1)*3 + 2]; + Double_t p[3]; + view->WCtoNDC(&p3[i*3], p); + pp[2*i + 0] = p[0]; + pp[2*i + 1] = p[1]; } - // F I N D L E V E L L I N E S - FindLevelLines(np, p3, &tt[1]); + // Find level lines + FindLevelLines(np, p3, tt); - // D R A W L E V E L L I N E S + // Draw level lines + Double_t p1[3], p2[3], x[2], y[2]; SetLineStyle(3); - if (icodes[3]==0) { // front & back boxes + if (icodes[2] == 0) { // front & back boxes SetLineColor(1); SetLineWidth(1); } else { @@ -819,23 +838,23 @@ void TPainter3dAlgorithms::DrawFaceRaster1(Int_t *icodes, Double_t *xyz, Int_t n SetLineWidth(fEdgeWidth[fEdgeIdx]); } TAttLine::Modify(); - for (il = 1; il <= fNlines; ++il) { - view->WCtoNDC(&fPlines[(2*il + 1)*3 - 9], p1); - view->WCtoNDC(&fPlines[(2*il + 2)*3 - 9], p2); + for (Int_t il = 0; il < fNlines; ++il) { + view->WCtoNDC(&fPlines[6*il + 0], p1); + view->WCtoNDC(&fPlines[6*il + 3], p2); FindVisibleLine(p1, p2, 100, fNT, fT); - xdel = p2[0] - p1[0]; - ydel = p2[1] - p1[1]; - for (it = 1; it <= fNT; ++it) { - x[0] = p1[0] + xdel*fT[2*it - 2]; - y[0] = p1[1] + ydel*fT[2*it - 2]; - x[1] = p1[0] + xdel*fT[2*it - 1]; - y[1] = p1[1] + ydel*fT[2*it - 1]; + Double_t xdel = p2[0] - p1[0]; + Double_t ydel = p2[1] - p1[1]; + for (Int_t it = 0; it < fNT; ++it) { + x[0] = p1[0] + xdel*fT[2*it + 0]; + y[0] = p1[1] + ydel*fT[2*it + 0]; + x[1] = p1[0] + xdel*fT[2*it + 1]; + y[1] = p1[1] + ydel*fT[2*it + 1]; gPad->PaintPolyLine(2, x, y); } } - // D R A W F A C E - if (icodes[3]==0) { // front & back boxes + // Draw face + if (icodes[2] == 0) { // front & back boxes SetLineColor(1); SetLineStyle(1); SetLineWidth(1); @@ -845,24 +864,23 @@ void TPainter3dAlgorithms::DrawFaceRaster1(Int_t *icodes, Double_t *xyz, Int_t n SetLineWidth(fEdgeWidth[fEdgeIdx]); } TAttLine::Modify(); - for (i = 1; i <= np; ++i) { + for (Int_t i = 0; i < np; ++i) { if (iface[i] < 0) continue; - i1 = i; - i2 = i + 1; - if (i == np) i2 = 1; - FindVisibleLine(&pp[2*i1 - 2], &pp[2*i2 - 2], 100, fNT, fT); - xdel = pp[2*i2 - 2] - pp[2*i1 - 2]; - ydel = pp[2*i2 - 1] - pp[2*i1 - 1]; - for (it = 1; it <= fNT; ++it) { - x[0] = pp[2*i1 - 2] + xdel*fT[2*it - 2]; - y[0] = pp[2*i1 - 1] + ydel*fT[2*it - 2]; - x[1] = pp[2*i1 - 2] + xdel*fT[2*it - 1]; - y[1] = pp[2*i1 - 1] + ydel*fT[2*it - 1]; + Int_t i1 = i; + Int_t i2 = (i == np-1) ? 0 : i + 1; + FindVisibleLine(&pp[2*i1], &pp[2*i2], 100, fNT, fT); + Double_t xdel = pp[2*i2 + 0] - pp[2*i1 + 0]; + Double_t ydel = pp[2*i2 + 1] - pp[2*i1 + 1]; + for (Int_t it = 0; it < fNT; ++it) { + x[0] = pp[2*i1 + 0] + xdel*fT[2*it + 0]; + y[0] = pp[2*i1 + 1] + ydel*fT[2*it + 0]; + x[1] = pp[2*i1 + 0] + xdel*fT[2*it + 1]; + y[1] = pp[2*i1 + 1] + ydel*fT[2*it + 1]; gPad->PaintPolyLine(2, x, y); } } - // M O D I F Y S C R E E N + // Modify raster screen FillPolygonBorder(np, pp); } @@ -876,55 +894,45 @@ void TPainter3dAlgorithms::DrawFaceRaster1(Int_t *icodes, Double_t *xyz, Int_t n /// \param[in] iface face /// \param[in] tt additional function defined on this face (not used in this method) -void TPainter3dAlgorithms::DrawFaceRaster2(Int_t *icodes, Double_t *xyz, Int_t np, Int_t *iface, Double_t *tt) +void TPainter3dAlgorithms::DrawFaceRaster2(Int_t *, Double_t *xyz, Int_t np, Int_t *iface, Double_t *) { - Double_t xdel, ydel; - Int_t i, k, i1, i2, it; - Double_t p[3], x[2], y[2]; - Double_t pp[24] /* was [2][12] */; TView *view = 0; - if (gPad) view = gPad->GetView(); if (!view) return; - // C O P Y P O I N T S T O A R R A Y - /* Parameter adjustments */ - --tt; - --iface; - xyz -= 4; - --icodes; - - for (i = 1; i <= np; ++i) { - k = iface[i]; + // Copy vertices to array + Double_t x[2], y[2], pp[2*12]; + for (Int_t i = 0; i < np; ++i) { + Int_t k = iface[i]; if (k < 0) k = -k; - view->WCtoNDC(&xyz[k*3 + 1], p); - pp[2*i - 2] = p[0]; - pp[2*i - 1] = p[1]; + Double_t p[3]; + view->WCtoNDC(&xyz[(k-1)*3], p); + pp[2*i + 0] = p[0]; + pp[2*i + 1] = p[1]; } - // D R A W F A C E + // Draw face SetLineColor(fEdgeColor[fEdgeIdx]); SetLineStyle(fEdgeStyle[fEdgeIdx]); SetLineWidth(fEdgeWidth[fEdgeIdx]); TAttLine::Modify(); - for (i = 1; i <= np; ++i) { + for (Int_t i = 0; i < np; ++i) { if (iface[i] < 0) continue; - i1 = i; - i2 = i + 1; - if (i == np) i2 = 1; - FindVisibleLine(&pp[2*i1 - 2], &pp[2*i2 - 2], 100, fNT, fT); - xdel = pp[2*i2 - 2] - pp[2*i1 - 2]; - ydel = pp[2*i2 - 1] - pp[2*i1 - 1]; - for (it = 1; it <= fNT; ++it) { - x[0] = pp[2*i1 - 2] + xdel*fT[2*it - 2]; - y[0] = pp[2*i1 - 1] + ydel*fT[2*it - 2]; - x[1] = pp[2*i1 - 2] + xdel*fT[2*it - 1]; - y[1] = pp[2*i1 - 1] + ydel*fT[2*it - 1]; + Int_t i1 = i; + Int_t i2 = (i == np-1) ? 0 : i + 1; + FindVisibleLine(&pp[2*i1], &pp[2*i2], 100, fNT, fT); + Double_t xdel = pp[2*i2 + 0] - pp[2*i1 + 0]; + Double_t ydel = pp[2*i2 + 1] - pp[2*i1 + 1]; + for (Int_t it = 0; it < fNT; ++it) { + x[0] = pp[2*i1 + 0] + xdel*fT[2*it + 0]; + y[0] = pp[2*i1 + 1] + ydel*fT[2*it + 0]; + x[1] = pp[2*i1 + 0] + xdel*fT[2*it + 1]; + y[1] = pp[2*i1 + 1] + ydel*fT[2*it + 1]; gPad->PaintPolyLine(2, x, y); } } - // M O D I F Y R A S T E R S C R E E N + // Modify raster screen FillPolygonBorder(np, pp); } @@ -1794,48 +1802,6 @@ L300: } -//////////////////////////////////////////////////////////////////////////////// -/// Draw forward faces of surrounding box & axes -/// -/// `ang`is the angle between X and Y axis - -void TPainter3dAlgorithms::FrontBox(Double_t ang) -{ - /* Initialized data */ - static Int_t iface1[4] = { 1,2,6,5 }; - static Int_t iface2[4] = { 2,3,7,6 }; - - Double_t cosa, sina; - Double_t r[24] /* was [3][8] */, av[24] /* was [3][8] */; - Int_t icodes[3]; - Double_t fdummy[1]; - Int_t i, ix1, ix2, iy1, iy2, iz1, iz2; - TView *view = 0; - - if (gPad) view = gPad->GetView(); - if (!view) { - Error("FrontBox", "no TView in current pad"); - return; - } - - cosa = TMath::Cos(kRad*ang); - sina = TMath::Sin(kRad*ang); - view->AxisVertex(ang, av, ix1, ix2, iy1, iy2, iz1, iz2); - for (i = 1; i <= 8; ++i) { - r[i*3 - 3] = av[i*3 - 3] + av[i*3 - 2] * cosa; - r[i*3 - 2] = av[i*3 - 2] * sina; - r[i*3 - 1] = av[i*3 - 1]; - } - - // D R A W F O R W A R D F A C E S - icodes[0] = 0; - icodes[1] = 0; - icodes[2] = 0; - (this->*fDrawFace)(icodes, r, 4, iface1, fdummy); - (this->*fDrawFace)(icodes, r, 4, iface2, fdummy); -} - - //////////////////////////////////////////////////////////////////////////////// /// Find part of surface with luminosity in the corners. This method is used for /// Gouraud shading @@ -4417,9 +4383,9 @@ L510: //////////////////////////////////////////////////////////////////////////////// /// Topological decider for "Marching Cubes" algorithm Find set of triangles -/// aproximating the isosurface F(x,y,z)=Fiso inside the cube +/// approximating the iso-surface F(x,y,z)=Fiso inside the cube /// -/// \param[in] fiso function value for isosurface +/// \param[in] fiso function value for iso-surface /// \param[in] p cube vertexes /// \param[in] f function values at the vertexes /// \param[in] g function gradients at the vertexes @@ -4618,7 +4584,7 @@ L560: //////////////////////////////////////////////////////////////////////////////// /// Consideration of trivial cases: 1,2,5,8,9,11,14 /// -/// \param[in] k1-k6 edges intersected with isosurface +/// \param[in] k1-k6 edges intersected with iso-surface void TPainter3dAlgorithms::MarchingCubeCase00(Int_t k1, Int_t k2, Int_t k3, Int_t k4, Int_t k5, Int_t k6, @@ -5565,10 +5531,10 @@ L998: //////////////////////////////////////////////////////////////////////////////// -/// Draw set of isosurfaces for a scalar function defined on a grid. +/// Draw set of iso-surfaces for a scalar function defined on a grid. /// -/// \param[in] ns number of isosurfaces -/// \param[in] s isosurface values +/// \param[in] ns number of iso-surfaces +/// \param[in] s iso-surface values /// \param[in] nx number of slices along X /// \param[in] ny number of slices along Y /// \param[in] nz number of slices along Z @@ -5614,7 +5580,7 @@ void TPainter3dAlgorithms::IsoSurface (Int_t ns, Double_t *s, Int_t nx, nsurf = ns; if (nsurf > kNiso) { - Warning("IsoSurface","Number of isosurfaces too large. Increase kNiso"); + Warning("IsoSurface","Number of iso-surfaces too large. Increase kNiso"); } iopt = 2; if (*chopt == 'B' || *chopt == 'b') iopt = 1;