@@ -761,7 +761,7 @@ Task<void> prepareTextureChannel(T* data, const Channel* chan, Box2i box, size_t
761761 const T defaultVal = isAlpha ? (T)1 .0f : (T)0 .0f ;
762762
763763 const auto size = box.size ();
764- const size_t numPixels = ( size_t ) size. x () * size. y ( );
764+ const size_t numPixels = posProd ( size);
765765
766766 if (chan) {
767767 const auto copyChannel = [&](const auto view) -> Task<void > {
@@ -771,7 +771,7 @@ Task<void> prepareTextureChannel(T* data, const Channel* chan, Box2i box, size_t
771771 numPixels,
772772 [view, &data, numTextureChannels, channelIdx, width = size.x (), pos = box.min ](int y) {
773773 for (int x = 0 ; x < width; ++x) {
774- size_t tileIdx = x + y * (size_t )width;
774+ const auto tileIdx = x + y * (size_t )width;
775775 data[tileIdx * numTextureChannels + channelIdx] = view[pos.x () + x, pos.y () + y];
776776 }
777777 },
@@ -1184,7 +1184,7 @@ Task<HeapArray<float>> Image::getRgbaHdrImageData(
11841184
11851185 const size_t nColorChannels = alphaChannel ? (channels.size () - 1 ) : channels.size ();
11861186
1187- const auto numPixels = ( size_t ) imageRegion.size (). x () * imageRegion. size (). y ();
1187+ const auto numPixels = imageRegion.area ();
11881188 const auto nColorChannelsToSave = std::min (nColorChannels, 3uz);
11891189
11901190 // Flatten image into vector
@@ -1394,7 +1394,7 @@ Task<nanogui::Vector2i> orientToTopLeft(PixelBuffer& data, nanogui::Vector2i siz
13941394 nanogui::Vector2i otherSize = swapAxes ? nanogui::Vector2i{size.y (), size.x ()} : size;
13951395
13961396 const size_t numBytesPerSample = nBytes (data.format ());
1397- const size_t numPixels = ( size_t ) size. x () * size. y ( );
1397+ const size_t numPixels = posProd ( size);
13981398
13991399 if (numPixels == 0 ) {
14001400 co_return size;
@@ -1412,10 +1412,10 @@ Task<nanogui::Vector2i> orientToTopLeft(PixelBuffer& data, nanogui::Vector2i siz
14121412 numPixels,
14131413 [&](int y) {
14141414 for (int x = 0 ; x < size.x (); ++x) {
1415- const size_t i = y * (size_t )size.x () + x;
1415+ const auto i = y * (size_t )size.x () + x;
14161416
14171417 const auto other = applyOrientation (orientation, nanogui::Vector2i{x, y}, size);
1418- const size_t j = other.y () * (size_t )otherSize.x () + other.x ();
1418+ const auto j = other.y () * (size_t )otherSize.x () + other.x ();
14191419
14201420 memcpy (reorientedData.dataBytes () + i * numBytesPerPixel, data.dataBytes () + j * numBytesPerPixel, numBytesPerPixel);
14211421 }
0 commit comments