←Select platform

SetOverlayImages Method

Summary
Sets the "Overlay Data" (60xx,3000) for the specified overlay index.
Syntax
C#
C++/CLI
Java
public void SetOverlayImages( 
   int index, 
   RasterImage overlayImages 
) 
public void setOverlayImages(int index, RasterImage images) 
public: 
void SetOverlayImages(  
   int index, 
   RasterImage^ overlayImages 
)  

Parameters

index
The zero-based index of the overlay being affected.

overlayImages
Images which will be used to update the overlay data. Cannot be null.

Remarks

This method will update the stream of bytes under the "Overlay Data" (60xx, 3000) element with the data of the images included in overlayImages. Before calling this method, you must call SetOverlayAttributes to set the attributes of the image you are trying to update. Make sure that the number of images in overlayImages does not exceed the value of the "Number of Frames in Overlay" (60xx,0015) element.

Example
C#
using Leadtools; 
using Leadtools.Dicom; 
 
 
public void TestOverlay() 
{ 
   string dicomFileName = Path.Combine(LEAD_VARS.ImagesDir, "DICOM", "Overlay.dcm"); 
   //Make sure to initialize the DICOM engine, this needs to be done only once  
   //In the whole application 
   DicomEngine.Startup(); 
   using (DicomDataSet ds = new DicomDataSet()) 
   { 
      //Load DICOM File 
      ds.Load(dicomFileName, DicomDataSetLoadFlags.None); 
 
      if (ds.OverlayCount > 0) 
      { 
         RasterOverlayAttributes attributes = ds.GetOverlayAttributes(0); 
         if (attributes != null) 
         { 
            // We can call in here methods like GetOverlayGroupNumber, IsOverlayInDataset  
            // and GetOverlayActivationLayer to get some further infromation about the overlay 
 
            //Let's get the overlay Image, If RasterOverlayAttributes.NumFramesInOverlay  
            //Is greater than 1 we can call GetOverlayImages to extract all the frames 
            RasterImage overlayImage = ds.GetOverlayImage(0); 
            if (overlayImage != null) 
            { 
               using (DicomDataSet ds1 = new DicomDataSet()) 
               { 
                  ds1.Initialize(DicomClassType.DXImageStoragePresentation, DicomDataSetInitializeType.ExplicitVRLittleEndian); 
                  ds1.SetOverlayAttributes(0, attributes, DicomSetOverlayFlags.None); 
                  ds1.SetOverlayImage(0, overlayImage);//We can call SetOverlayImages if the overlay has more than one frame 
                  ds1.Save(Path.Combine(LEAD_VARS.ImagesDir, "DICOM", "NewOverlay.dcm"), DicomDataSetSaveFlags.None); 
               } 
            } 
         } 
      } 
   } 
   DicomEngine.Shutdown(); 
} 
 
static class LEAD_VARS 
{ 
   public const string ImagesDir = @"C:\LEADTOOLS22\Resources\Images"; 
} 
Requirements

Target Platforms

Help Version 22.0.2023.1.29
Products | Support | Contact Us | Intellectual Property Notices
© 1991-2023 LEAD Technologies, Inc. All Rights Reserved.

Leadtools.Dicom Assembly

Products | Support | Contact Us | Intellectual Property Notices
© 1991-2023 LEAD Technologies, Inc. All Rights Reserved.