Esempio n. 1
0
 private void applyOverlay(
     int gg0000,
     WritableRaster raster,
     int frameIndex,
     ImageReadParam param,
     int outBits,
     byte[] ovlyData) {
   Attributes ovlyAttrs = metadata.getAttributes();
   int grayscaleValue = 0xffff;
   if (param instanceof DicomImageReadParam) {
     DicomImageReadParam dParam = (DicomImageReadParam) param;
     Attributes psAttrs = dParam.getPresentationState();
     if (psAttrs != null) {
       if (psAttrs.containsValue(Tag.OverlayData | gg0000)) ovlyAttrs = psAttrs;
       grayscaleValue = Overlays.getRecommendedDisplayGrayscaleValue(psAttrs, gg0000);
     } else grayscaleValue = dParam.getOverlayGrayscaleValue();
   }
   Overlays.applyOverlay(
       ovlyData != null ? 0 : frameIndex,
       raster,
       ovlyAttrs,
       gg0000,
       grayscaleValue >>> (16 - outBits),
       ovlyData);
 }