- else
- {
- for (idxX = 0; idxX < extX; idxX++)
- {
- if (*iptr <= lower)
- {
- result_val = lower_val;
- }
- else if (*iptr >= upper)
- {
- result_val = upper_val;
- }
- else
- {
- result_val = static_cast<unsigned char>((*iptr + shift)*scale);
- }
- *optr = result_val;
- switch (outputFormat)
- {
- case VTK_RGBA:
- *(optr+1) = result_val;
- *(optr+2) = result_val;
- *(optr+3) = 255;
- break;
- case VTK_RGB:
- *(optr+1) = result_val;
- *(optr+2) = result_val;
- break;
- case VTK_LUMINANCE_ALPHA:
- *(optr+1) = 255;
- break;
- }
- iptr += numberOfComponents;
- optr += numberOfOutputComponents;
- }
- }
- outPtr1 += outIncY + extX*numberOfOutputComponents;
- inPtr1 += inIncY + rowLength;
+ *optr = static_cast<unsigned char>((*optr * ushort_val) >> 8);
+ switch (outputFormat) {
+ case VTK_RGBA:
+ *(optr+1) = static_cast<unsigned char>(
+ (*(optr+1) * ushort_val) >> 8);
+ *(optr+2) = static_cast<unsigned char>(
+ (*(optr+2) * ushort_val) >> 8);
+ *(optr+3) = 255;
+ break;
+ case VTK_RGB:
+ *(optr+1) = static_cast<unsigned char>(
+ (*(optr+1) * ushort_val) >> 8);
+ *(optr+2) = static_cast<unsigned char>(
+ (*(optr+2) * ushort_val) >> 8);
+ break;
+ case VTK_LUMINANCE_ALPHA:
+ *(optr+1) = 255;
+ break;
+ }
+ iptr += numberOfComponents;
+ optr += numberOfOutputComponents;
+ }
+ }
+ } else {
+ for (idxX = 0; idxX < extX; idxX++) {
+ if (*iptr <= lower) {
+ result_val = lower_val;
+ } else if (*iptr >= upper) {
+ result_val = upper_val;
+ } else {
+ result_val = static_cast<unsigned char>((*iptr + shift)*scale);
+ }
+ *optr = result_val;
+ switch (outputFormat) {
+ case VTK_RGBA:
+ *(optr+1) = result_val;
+ *(optr+2) = result_val;
+ *(optr+3) = 255;
+ break;
+ case VTK_RGB:
+ *(optr+1) = result_val;
+ *(optr+2) = result_val;
+ break;
+ case VTK_LUMINANCE_ALPHA:
+ *(optr+1) = 255;
+ break;
+ }
+ iptr += numberOfComponents;
+ optr += numberOfOutputComponents;