GetOverlayActivationLayer Method (original) (raw)

Summary

Retrieves the "Overlay Activation Layer".

Syntax

public string GetOverlayActivationLayer( int _index_ )

public String getOverlayActivationLayer(int index) 

public: String^ GetOverlayActivationLayer( int _index_ )

Parameters

index
The zero-based index of the overlay whose "Overlay Activation Layer" is required.

Return Value

The "Activation Layer" string.

Example

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"; }