Ejemplo n.º 1
0
        public static AutoImageVoiDataLut CreateFrom(IDicomVoiLutsProvider provider, int lutIndex)
        {
            IDicomVoiLuts      luts = provider.DicomVoiLuts;
            IList <VoiDataLut> dataLuts;

            if (luts.ImageVoiDataLuts.Count > lutIndex)
            {
                dataLuts = luts.ImageVoiDataLuts;
            }
            else
            {
                return(null);
            }

            foreach (VoiDataLut lut in dataLuts)
            {
                lut.CorrectMinMaxOutput();                 //see the comment for this method.
            }
            string keyPrefix = string.Format("{0}:{1}", luts.ImageSopInstanceUid, luts.ImageSopFrameNumber);

            return(new AutoImageVoiDataLut(dataLuts, keyPrefix)
            {
                Index = lutIndex
            });
        }
Ejemplo n.º 2
0
        public static AutoPresentationVoiLutLinear CreateFrom(IDicomVoiLutsProvider provider)
        {
            IDicomVoiLuts luts = provider.DicomVoiLuts;

            if (luts.PresentationVoiLinearLuts.Count > 0)
            {
                return(new AutoPresentationVoiLutLinear(luts.PresentationVoiLinearLuts));
            }
            return(null);
        }
Ejemplo n.º 3
0
        public static AutoPresentationVoiDataLut CreateFrom(IDicomVoiLutsProvider provider)
        {
            IDicomVoiLuts      luts = provider.DicomVoiLuts;
            IList <VoiDataLut> dataLuts;

            if (luts.PresentationVoiDataLuts.Count > 0)
            {
                dataLuts = luts.PresentationVoiDataLuts;
            }
            else
            {
                return(null);
            }

            foreach (VoiDataLut lut in dataLuts)
            {
                lut.CorrectMinMaxOutput();                 //see the comment for this method.
            }
            return(new AutoPresentationVoiDataLut(dataLuts, provider.DicomVoiLuts.PresentationStateSopInstanceUid));
        }