Sets the attributes of the "Presentation State Module".
Syntax
Parameters
- presentationStateInformation
- "Presentation State Module" attributes
Example
This example will initialize a new DICOM dataset and update its presentation state information.
Visual Basic | Copy Code |
---|
Public Sub DicomPresStateSample()
DicomEngine.Startup()
Dim dicomDataset As DicomDataSet = New DicomDataSet()
Using (dicomDataset)
dicomDataset.Initialize(DicomClassType.GrayscaleSoftcopyPresentationState, DicomDataSetInitializeType.ExplicitVRLittleEndian)
Dim presentationStateInfo As DicomPresentationStateInformation = New DicomPresentationStateInformation()
presentationStateInfo.InstanceNumber = 1
presentationStateInfo.PresentationLabel = "Label"
presentationStateInfo.PresentationDescription = "Description"
presentationStateInfo.PresentationCreator = "Creator"
Dim presentationCreationDate As DicomDateValue = New DicomDateValue()
presentationCreationDate.Year = 2004
presentationCreationDate.Month = 1
presentationCreationDate.Day = 8
Dim presentationCreationTime As DicomTimeValue = New DicomTimeValue()
presentationCreationTime.Hours = 2
presentationCreationTime.Minutes = 3
presentationCreationTime.Seconds = 5
presentationStateInfo.PresentationCreationDate = presentationCreationDate
presentationStateInfo.PresentationCreationTime = presentationCreationTime
dicomDataset.SetPresentationStateInformation(presentationStateInfo)
Dim presentationStateInfo1 As DicomPresentationStateInformation = dicomDataset.GetPresentationStateInformation()
Debug.Assert(Not presentationStateInfo1 Is Nothing)
Debug.Assert(presentationStateInfo1.InstanceNumber = 1)
dicomDataset.RemoveAllPresentationStateImageReferences()
Debug.Assert(dicomDataset.GetPresentationStateImageReferenceCount(Nothing) = 0)
dicomDataset.AddPresentationStateImageReference(LeadtoolsExamples.Common.ImagesPath.Path + "IMAGE3.dic", Nothing, 0)
Dim item As DicomElement = dicomDataset.FindFirstPresentationStateReferencedSeriesItem()
Dim imageRefSOPInstanceUID As String = dicomDataset.GetPresentationStateImageReferenceSOPInstance(item, 0)
Debug.Assert(Not imageRefSOPInstanceUID Is Nothing)
Dim item1 As DicomElement = dicomDataset.GetPresentationStateImageReference(imageRefSOPInstanceUID)
Debug.Assert(Not item1 Is Nothing)
dicomDataset.Save(LeadtoolsExamples.Common.ImagesPath.Path + "PresentationState.dic", DicomDataSetSaveFlags.None)
End Using
DicomEngine.Shutdown()
End Sub |
C# | Copy Code |
---|
public void DicomPresStateSample() { //Make sure to initialize the DICOM engine, this needs to be done only once //In the whole application DicomEngine.Startup(); using (DicomDataSet dicomDataset = new DicomDataSet()) { dicomDataset.Initialize(DicomClassType.GrayscaleSoftcopyPresentationState, DicomDataSetInitializeType.ExplicitVRLittleEndian); DicomPresentationStateInformation presentationStateInfo = new DicomPresentationStateInformation(); presentationStateInfo.InstanceNumber = 1; presentationStateInfo.PresentationLabel = "Label"; presentationStateInfo.PresentationDescription = "Description"; presentationStateInfo.PresentationCreator = "Creator"; DicomDateValue presentationCreationDate = new DicomDateValue(); presentationCreationDate.Year = 2004; presentationCreationDate.Month = 1; presentationCreationDate.Day = 8; DicomTimeValue presentationCreationTime = new DicomTimeValue(); presentationCreationTime.Hours = 2; presentationCreationTime.Minutes = 3; presentationCreationTime.Seconds = 5; presentationStateInfo.PresentationCreationDate = presentationCreationDate; presentationStateInfo.PresentationCreationTime = presentationCreationTime; dicomDataset.SetPresentationStateInformation(presentationStateInfo); DicomPresentationStateInformation presentationStateInfo1 = dicomDataset.GetPresentationStateInformation(); Debug.Assert(presentationStateInfo1 != null); Debug.Assert(presentationStateInfo1.InstanceNumber == 1); //RemovePresStateImageRefBySOPInstance can be used to remove indivual referened images dicomDataset.RemoveAllPresentationStateImageReferences(); Debug.Assert(dicomDataset.GetPresentationStateImageReferenceCount(null) == 0); // We can also load the dataset first and then call AddPresStateImageRefByDS dicomDataset.AddPresentationStateImageReference(LeadtoolsExamples.Common.ImagesPath.Path + "IMAGE3.dic", null, 0); //We can also use FindNextPresStateRefSeriesItem to itertate throgh all items DicomElement item = dicomDataset.FindFirstPresentationStateReferencedSeriesItem(); string imageRefSOPInstanceUID = dicomDataset.GetPresentationStateImageReferenceSOPInstance(item, 0); Debug.Assert(imageRefSOPInstanceUID != null); DicomElement item1 = dicomDataset.GetPresentationStateImageReference(imageRefSOPInstanceUID); Debug.Assert(item1 != null); dicomDataset.Save(LeadtoolsExamples.Common.ImagesPath.Path + "PresentationState.dic", DicomDataSetSaveFlags.None); } DicomEngine.Shutdown(); } |
Remarks
Requirements
Target Platforms: Microsoft .NET Framework 3.0, Windows XP, Windows Server 2003 family, Windows Server 2008 family
See Also