diff --git a/graf3d/g3d/src/TView3D.cxx b/graf3d/g3d/src/TView3D.cxx
index 7f9c6b280a991dfbac6a32e908c9628ba0cda32e..20218f20394a3482a59b84445bf057abb471e26a 100644
--- a/graf3d/g3d/src/TView3D.cxx
+++ b/graf3d/g3d/src/TView3D.cxx
@@ -564,7 +564,7 @@ void TView3D::DefinePerspectiveView()
 ///  - C(3)    - centre of scope
 ///  - COSPHI  - longitude COS
 ///  - SINPHI  - longitude SIN
-///  - COSTHE  - latitude COS (angle between +Z and view direc.)
+///  - COSTHE  - latitude COS (angle between +Z and view direction.)
 ///  - SINTHE  - latitude SIN
 ///  - COSPSI  - screen plane rotation angle COS
 ///  - SINPSI  - screen plane rotation angle SIN
@@ -1127,9 +1127,10 @@ Bool_t TView3D::IsClippedNDC(Double_t *p) const
 
 void TView3D::NDCtoWC(const Float_t* pn, Float_t* pw)
 {
-   pw[0] = fTback[0]*pn[0] + fTback[1]*pn[1] + fTback[2]*pn[2]  + fTback[3];
-   pw[1] = fTback[4]*pn[0] + fTback[5]*pn[1] + fTback[6]*pn[2]  + fTback[7];
-   pw[2] = fTback[8]*pn[0] + fTback[9]*pn[1] + fTback[10]*pn[2] + fTback[11];
+   Float_t x = pn[0], y = pn[1], z = pn[2];
+   pw[0] = fTback[0]*x + fTback[1]*y + fTback[2]*z  + fTback[3];
+   pw[1] = fTback[4]*x + fTback[5]*y + fTback[6]*z  + fTback[7];
+   pw[2] = fTback[8]*x + fTback[9]*y + fTback[10]*z + fTback[11];
 }
 
 ////////////////////////////////////////////////////////////////////////////////
@@ -1141,9 +1142,10 @@ void TView3D::NDCtoWC(const Float_t* pn, Float_t* pw)
 
 void TView3D::NDCtoWC(const Double_t* pn, Double_t* pw)
 {
-   pw[0] = fTback[0]*pn[0] + fTback[1]*pn[1] + fTback[2]*pn[2]  + fTback[3];
-   pw[1] = fTback[4]*pn[0] + fTback[5]*pn[1] + fTback[6]*pn[2]  + fTback[7];
-   pw[2] = fTback[8]*pn[0] + fTback[9]*pn[1] + fTback[10]*pn[2] + fTback[11];
+   Double_t x = pn[0], y = pn[1], z = pn[2];
+   pw[0] = fTback[0]*x + fTback[1]*y + fTback[2]*z  + fTback[3];
+   pw[1] = fTback[4]*x + fTback[5]*y + fTback[6]*z  + fTback[7];
+   pw[2] = fTback[8]*x + fTback[9]*y + fTback[10]*z + fTback[11];
 }
 
 ////////////////////////////////////////////////////////////////////////////////
@@ -1534,10 +1536,13 @@ void TView3D::ResetView(Double_t longitude, Double_t latitude, Double_t psi, Int
 
 void TView3D::WCtoNDC(const Float_t *pw, Float_t *pn)
 {
+   Float_t x = pw[0], y = pw[1], z = pw[2];
+
    // perspective view
    if (IsPerspective()) {
-      for (Int_t i=0; i<3; i++)
-         pn[i] = pw[0]*fTnorm[i]+pw[1]*fTnorm[i+4]+pw[2]*fTnorm[i+8]+fTnorm[i+12];
+      for (Int_t i=0; i<3; i++) {
+         pn[i] = fTnorm[i]*x + fTnorm[i+4]*y + fTnorm[i+8]*z + fTnorm[i+12];
+      }
       if (pn[2]>0) {
          pn[0] /= pn[2];
          pn[1] /= pn[2];
@@ -1547,10 +1552,11 @@ void TView3D::WCtoNDC(const Float_t *pw, Float_t *pn)
       }
       return;
    }
+
    // parallel view
-   pn[0] = fTnorm[0]*pw[0] + fTnorm[1]*pw[1] + fTnorm[2]*pw[2]  + fTnorm[3];
-   pn[1] = fTnorm[4]*pw[0] + fTnorm[5]*pw[1] + fTnorm[6]*pw[2]  + fTnorm[7];
-   pn[2] = fTnorm[8]*pw[0] + fTnorm[9]*pw[1] + fTnorm[10]*pw[2] + fTnorm[11];
+   pn[0] = fTnorm[0]*x + fTnorm[1]*y + fTnorm[2]*z  + fTnorm[3];
+   pn[1] = fTnorm[4]*x + fTnorm[5]*y + fTnorm[6]*z  + fTnorm[7];
+   pn[2] = fTnorm[8]*x + fTnorm[9]*y + fTnorm[10]*z + fTnorm[11];
 }
 
 ////////////////////////////////////////////////////////////////////////////////
@@ -1562,10 +1568,13 @@ void TView3D::WCtoNDC(const Float_t *pw, Float_t *pn)
 
 void TView3D::WCtoNDC(const Double_t *pw, Double_t *pn)
 {
+   Double_t x = pw[0], y = pw[1], z = pw[2];
+
    // perspective view
    if (IsPerspective()) {
-      for (Int_t i=0; i<3; i++)
-         pn[i] = pw[0]*fTnorm[i]+pw[1]*fTnorm[i+4]+pw[2]*fTnorm[i+8]+fTnorm[i+12];
+      for (Int_t i=0; i<3; i++) {
+         pn[i] = fTnorm[i]*x + fTnorm[i+4]*y + fTnorm[i+8]*z + fTnorm[i+12];
+      }
       if (pn[2]>0) {
          pn[0] /= pn[2];
          pn[1] /= pn[2];
@@ -1577,9 +1586,9 @@ void TView3D::WCtoNDC(const Double_t *pw, Double_t *pn)
    }
 
    // parallel view
-   pn[0] = fTnorm[0]*pw[0] + fTnorm[1]*pw[1] + fTnorm[2]*pw[2]  + fTnorm[3];
-   pn[1] = fTnorm[4]*pw[0] + fTnorm[5]*pw[1] + fTnorm[6]*pw[2]  + fTnorm[7];
-   pn[2] = fTnorm[8]*pw[0] + fTnorm[9]*pw[1] + fTnorm[10]*pw[2] + fTnorm[11];
+   pn[0] = fTnorm[0]*x + fTnorm[1]*y + fTnorm[2]*z  + fTnorm[3];
+   pn[1] = fTnorm[4]*x + fTnorm[5]*y + fTnorm[6]*z  + fTnorm[7];
+   pn[2] = fTnorm[8]*x + fTnorm[9]*y + fTnorm[10]*z + fTnorm[11];
 }
 
 ////////////////////////////////////////////////////////////////////////////////
diff --git a/hist/histpainter/src/THistPainter.cxx b/hist/histpainter/src/THistPainter.cxx
index 0e0c87ce8b4ee42b7aa10af0c806695453f9c9b5..ab5b4be109a22aaa4378817df66ee3dbf26d3ffe 100644
--- a/hist/histpainter/src/THistPainter.cxx
+++ b/hist/histpainter/src/THistPainter.cxx
@@ -6956,11 +6956,7 @@ void THistPainter::PaintH3Box()
                }
             }
             for (Int_t k=0; k<8; ++k) { // transform to normalized space
-               Double_t p[3];
-               view->WCtoNDC(&sxyz[k][0],p);
-               sxyz[k][0] = p[0];
-               sxyz[k][1] = p[1];
-               sxyz[k][2] = p[2];
+               view->WCtoNDC(&sxyz[k][0],&sxyz[k][0]);
             }
             Double_t x[5], y[5]; // draw bin box faces
             for (Int_t k=0; k<6; ++k) {