Exemple #1
0
        private void LoadImage(RasterImage image)
        {
            int count = 0;

            Clear();
            if (image == null)
            {
                count = _DataSet.GetImageCount(null);
                if (count > 0)
                {
#if !LEADTOOLS_V20_OR_LATER
                    DicomGetImageFlags getImageFlags =
                        DicomGetImageFlags.AutoApplyModalityLut |
                        DicomGetImageFlags.AutoApplyVoiLut |
                        DicomGetImageFlags.AutoScaleModalityLut |
                        DicomGetImageFlags.AutoScaleVoiLut |
                        DicomGetImageFlags.AutoDectectInvalidRleCompression;
#else
                    DicomGetImageFlags getImageFlags =
                        DicomGetImageFlags.AutoApplyModalityLut |
                        DicomGetImageFlags.AutoApplyVoiLut |
                        DicomGetImageFlags.AutoScaleModalityLut |
                        DicomGetImageFlags.AutoScaleVoiLut |
                        DicomGetImageFlags.AutoDetectInvalidRleCompression;
#endif // #if !LEADTOOLS_V20_OR_LATER

                    image = _DataSet.GetImages(null, 0, count, 0, RasterByteOrder.Rgb | RasterByteOrder.Gray,
                                               getImageFlags);
                }

                animationToolStripMenuItem.Enabled = count > 1;
            }

            if (image != null)
            {
                MedicalViewerCell cell = _MedicalViewer.Cells[0] as MedicalViewerCell;

                cell.Image          = image;
                cell.FitImageToCell = true;
                if (image.GrayscaleMode != RasterGrayscaleMode.None)
                {
                    cell.SetTag(2, MedicalViewerTagAlignment.BottomLeft, MedicalViewerTagType.WindowLevelData);
                    cell.SetTag(0, MedicalViewerTagAlignment.TopRight, MedicalViewerTagType.Frame);
                }

                animationToolStripMenuItem.Enabled = image.PageCount > 1;
            }
        }