protected void DeserializeGraphicAnnotation(GraphicAnnotationModuleIod module, RectangleF displayedArea, T image)
        {
            DicomGraphicsPlane graphic = DicomGraphicsPlane.GetDicomGraphicsPlane(image, true);

            var sqItems = module.GraphicAnnotationSequence;

            if (sqItems != null)
            {
                foreach (var annotation in sqItems.Select(sqItem =>
                                                          new
                {
                    LayerId = sqItem.GraphicLayer ?? string.Empty,
                    Graphic = DicomGraphicsFactory.CreateGraphicAnnotation(image.Frame, sqItem, displayedArea, DeserializeInteractiveAnnotations)
                }).Where(g => g.Graphic != null))
                {
                    graphic.Layers[annotation.LayerId].Graphics.Add(annotation.Graphic);
                }
            }
        }
        protected void DeserializeGraphicAnnotation(GraphicAnnotationModuleIod module, RectangleF displayedArea, T image)
        {
            DicomGraphicsPlane graphic = DicomGraphicsPlane.GetDicomGraphicsPlane(image, true);

            var sqItems = module.GraphicAnnotationSequence;

            if (sqItems != null)
            {
                var interactiveAnnotations   = DeserializeOptions.HasFlag(DicomSoftcopyPresentationStateDeserializeOptions.InteractiveAnnotations);
                var ignoreImageRelationships = DeserializeIgnoreImageRelationship;
                foreach (var annotation in sqItems.Select(sqItem =>
                                                          new
                {
                    LayerId = sqItem.GraphicLayer ?? string.Empty,
                    Graphic = DicomGraphicsFactory.CreateGraphicAnnotation(image.Frame, sqItem, displayedArea, interactiveAnnotations, ignoreImageRelationships)
                }).Where(g => g.Graphic != null))
                {
                    graphic.Layers[annotation.LayerId].Graphics.Add(annotation.Graphic);
                }
            }
        }