Retrieves the first item under the "Graphic Annotation Sequence" (0070,0001) in the "Graphic Annotation Module".
            
            
            
            
 Syntax
Syntax
| Visual Basic (Declaration) |  | 
|---|
| Public Function FindFirstGraphicAnnSQItem() As DicomElement | 
| Visual Basic (Usage) |  Copy Code | 
|---|
| Dim instance As DicomDataSet
Dim value As DicomElement
 
value = instance.FindFirstGraphicAnnSQItem()
 | 
| Managed Extensions for C++ |  | 
|---|
| public: DicomElement* FindFirstGraphicAnnSQItem();  | 
Return Value
             The first item under the "Graphic Annotation Sequence" (0070,0001) in the "Graphic Annotation Module". null if No items were found.
            
 Example
Example
This example will initialize a new DICOM dataset, cerate a graphic annotation sequence and add a graphic object and text object under that sequence.
             | Visual Basic |  Copy Code | 
|---|
| Public Sub GraphicAnnSequenceSample()
 
 DicomEngine.Startup()
 
 Dim dicomDataset As DicomDataSet = New DicomDataSet()
 Using (dicomDataset)
 
 dicomDataset.Initialize(DicomClassType.Undefined, DicomDataSetInitializeType.ExplicitVRLittleEndian)
 
 dicomDataset.CreateGraphicAnnSQItem(0, "Layer0")
 Dim firstGraphicAnnSQItem As DicomElement = dicomDataset.FindFirstGraphicAnnSQItem()
 Debug.Assert(Not firstGraphicAnnSQItem Is Nothing)
 
 
 
 dicomDataset.SetLayerName(firstGraphicAnnSQItem, "Layer1")
 Debug.Assert(dicomDataset.GetLayerName(firstGraphicAnnSQItem) = "Layer1")
 
 
 
 
 
 dicomDataset.RemoveAllImageReferencesFromLayer(firstGraphicAnnSQItem)
 
 dicomDataset.AddPresentationStateImageReference("C:\Program Files\LEAD Technologies, Inc\LEADTOOLS 14.5\Images\IMAGE2.dic", Nothing, 0)
 
 
 dicomDataset.AddLayerImageReference(firstGraphicAnnSQItem, "1.2.840.114257.3.6.5.5.18900282")
 Debug.Assert(dicomDataset.GetLayerImageReferenceCount(firstGraphicAnnSQItem) = 1)
 Debug.Assert(dicomDataset.GetLayerImageReferenceSOPInstance(firstGraphicAnnSQItem, 0) = "1.2.840.114257.3.6.5.5.18900282")
 Debug.Assert(Not dicomDataset.GetLayerImageReferenceElement(firstGraphicAnnSQItem, "1.2.840.114257.3.6.5.5.18900282") Is Nothing)
 
 
 
 Dim graphicObject As DicomGraphicObject = New DicomGraphicObject()
 Dim annotationPoints As DicomAnnotationPoint() = New DicomAnnotationPoint(4) {}
 annotationPoints(0).X = 480.0F
 annotationPoints(0).Y = 226.0F
 annotationPoints(1).X = 480.0F
 annotationPoints(1).Y = 418.0F
 annotationPoints(2).X = 488.0F
 annotationPoints(2).Y = 418.0F
 annotationPoints(3).X = 488.0F
 annotationPoints(3).Y = 226.0F
 annotationPoints(4).X = 480.0F
 annotationPoints(4).Y = 226.0F
 graphicObject.SetAnnotationPoints(annotationPoints, 5)
 graphicObject.Filled = False
 graphicObject.Type = DicomAnnotationType.Polyline
 graphicObject.LayerName = "Layer1"
 graphicObject.Units = DicomAnnotationUnitsRelativityType.Pixel
 Debug.Assert(graphicObject.AnnotationPointCount = 5)
 
 
 
 dicomDataset.RemoveAllGraphicObjects(firstGraphicAnnSQItem)
 
 dicomDataset.CreateGraphicObject(firstGraphicAnnSQItem, graphicObject, False)
 Debug.Assert(dicomDataset.GetGraphicObjectCount(firstGraphicAnnSQItem) = 1)
 Debug.Assert(Not dicomDataset.GetGraphicObjElement(firstGraphicAnnSQItem, 0) Is Nothing)
 Debug.Assert(dicomDataset.GetGraphicObjPointCount(firstGraphicAnnSQItem, 0) = 5)
 
 Dim graphicObject1 As DicomGraphicObject = dicomDataset.GetGraphicObjectInformation(firstGraphicAnnSQItem, 0)
 Debug.Assert(Not graphicObject1 Is Nothing)
 graphicObject1.Filled = True
 dicomDataset.SetGraphicObjectInformation(firstGraphicAnnSQItem, 0, graphicObject1)
 
 
 
 
 dicomDataset.RemoveAllTextObjects(firstGraphicAnnSQItem)
 
 Dim textObject As DicomTextObject = New DicomTextObject()
 textObject.AnchorPointVisible = True
 textObject.AnchorPoint = New DicomAnnotationPoint(1.1F, 1.1F)
 textObject.BRHCorner = New DicomAnnotationPoint(521.251343F, 328.190216F)
 textObject.TLHCorner = New DicomAnnotationPoint(466.642242F, 300.443268F)
 textObject.TextValue = "Text Value 1"
 textObject.AnchorPointUnits = DicomAnnotationUnitsRelativityType.Pixel
 textObject.BoundingBoxUnits = DicomAnnotationUnitsRelativityType.Pixel
 textObject.LayerName = "Layer1"
 textObject.TextJustification = TextAnnotationJustificationType.Left
 
 dicomDataset.CreateTextObject(firstGraphicAnnSQItem, textObject, False)
 Debug.Assert(dicomDataset.GetTextObjectCount(firstGraphicAnnSQItem) = 1)
 Debug.Assert(Not dicomDataset.GetTextObjElement(firstGraphicAnnSQItem, 0) Is Nothing)
 
 Dim textObject1 As DicomTextObject = dicomDataset.GetTextObjectInformation(firstGraphicAnnSQItem, 0)
 Debug.Assert(Not textObject1 Is Nothing)
 textObject1.TextJustification = TextAnnotationJustificationType.Right
 dicomDataset.SetTextObjectInformation(firstGraphicAnnSQItem, 0, textObject1)
 
 
 dicomDataset.Save("C:\GraphicAnnSequence.dic", DicomDataSetSaveFlags.None)
 End Using
 
 DicomEngine.Shutdown()
 End Sub
 | 
| C# |  Copy Code | 
|---|
| public void GraphicAnnSequenceSample() {
 //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())
 {
 // We can also initialize in here the "Grayscale Softcopy Presentation State" class
 dicomDataset.Initialize(DicomClassType.Undefined, DicomDataSetInitializeType.ExplicitVRLittleEndian);
 
 dicomDataset.CreateGraphicAnnSQItem(0, "Layer0");
 DicomElement firstGraphicAnnSQItem = dicomDataset.FindFirstGraphicAnnSQItem();
 Debug.Assert(firstGraphicAnnSQItem != null);
 //If there was more than one item we can use
 //FindNextGraphicAnnSQItem to enumerate these items
 
 dicomDataset.SetLayerName(firstGraphicAnnSQItem, "Layer1");
 Debug.Assert(dicomDataset.GetLayerName(firstGraphicAnnSQItem) == "Layer1");
 
 // We can also call RemoveAllImageRefFromAllLayers or call
 // RemoveImageRefFromLayer to remove the referenced images one by one.
 // In any case this is for demonstration purposes only, since the dataset
 // doesn�t have any referenced images right now.
 dicomDataset.RemoveAllImageReferencesFromLayer(firstGraphicAnnSQItem);
 
 dicomDataset.AddPresentationStateImageReference(@"C:\Program Files\LEAD Technologies, Inc\LEADTOOLS 14.5\Images\IMAGE2.dic", null, 0);
 // We know that the SOP instance UID for the dataset IMAGE2.dic is
 // 1.2.840.114257.3.6.5.5.18900282
 dicomDataset.AddLayerImageReference(firstGraphicAnnSQItem, "1.2.840.114257.3.6.5.5.18900282");
 Debug.Assert(dicomDataset.GetLayerImageReferenceCount(firstGraphicAnnSQItem) == 1);
 Debug.Assert(dicomDataset.GetLayerImageReferenceSOPInstance(firstGraphicAnnSQItem, 0) == "1.2.840.114257.3.6.5.5.18900282");
 Debug.Assert(dicomDataset.GetLayerImageReferenceElement(firstGraphicAnnSQItem, "1.2.840.114257.3.6.5.5.18900282") != null);
 
 ////////This section is for DICOM Graphic Object///////////////////
 
 DicomGraphicObject graphicObject = new DicomGraphicObject();
 DicomAnnotationPoint[] annotationPoints = new DicomAnnotationPoint[5];
 annotationPoints[0].X=  480.00F;
 annotationPoints[0].Y = 226.00F;
 annotationPoints[1].X = 480.00F;
 annotationPoints[1].Y = 418.00F;
 annotationPoints[2].X = 488.00F;
 annotationPoints[2].Y = 418.00F;
 annotationPoints[3].X = 488.00F;
 annotationPoints[3].Y = 226.00F;
 annotationPoints[4].X = 480.00F;
 annotationPoints[4].Y = 226.00F;
 graphicObject.SetAnnotationPoints(annotationPoints, 5);
 graphicObject.Filled = false;
 graphicObject.Type= DicomAnnotationType.Polyline;
 graphicObject.LayerName = "Layer1";
 graphicObject.Units = DicomAnnotationUnitsRelativityType.Pixel;
 Debug.Assert(graphicObject.AnnotationPointCount == 5);
 
 //Start Clean!
 //Can also call RemoveGraphicObject to remove individual objects
 dicomDataset.RemoveAllGraphicObjects(firstGraphicAnnSQItem);
 
 dicomDataset.CreateGraphicObject(firstGraphicAnnSQItem, graphicObject, false);
 Debug.Assert(dicomDataset.GetGraphicObjectCount(firstGraphicAnnSQItem) ==1);
 Debug.Assert(dicomDataset.GetGraphicObjElement(firstGraphicAnnSQItem, 0) != null);
 Debug.Assert(dicomDataset.GetGraphicObjPointCount(firstGraphicAnnSQItem, 0) ==5);
 
 DicomGraphicObject graphicObject1 = dicomDataset.GetGraphicObjectInformation(firstGraphicAnnSQItem, 0);
 Debug.Assert(graphicObject1 != null);
 graphicObject1.Filled = true;
 dicomDataset.SetGraphicObjectInformation(firstGraphicAnnSQItem, 0, graphicObject1);
 
 
 ////////This section is for DICOM Text Object///////////////////
 //Can also call RemoveTextObject to remove individual objects
 dicomDataset.RemoveAllTextObjects(firstGraphicAnnSQItem);
 
 DicomTextObject textObject = new DicomTextObject();
 textObject.AnchorPointVisible = true;
 textObject.AnchorPoint  = new DicomAnnotationPoint(1.1F, 1.1F);
 textObject.BRHCorner    = new DicomAnnotationPoint(521.251343F, 328.190216F);
 textObject.TLHCorner = new DicomAnnotationPoint(466.642242F, 300.443268F);
 textObject.TextValue = "Text Value 1";
 textObject.AnchorPointUnits = DicomAnnotationUnitsRelativityType.Pixel;
 textObject.BoundingBoxUnits = DicomAnnotationUnitsRelativityType.Pixel;
 textObject.LayerName = "Layer1";
 textObject.TextJustification = TextAnnotationJustificationType.Left;
 
 dicomDataset.CreateTextObject(firstGraphicAnnSQItem, textObject, false);
 Debug.Assert(dicomDataset.GetTextObjectCount(firstGraphicAnnSQItem) == 1);
 Debug.Assert(dicomDataset.GetTextObjElement(firstGraphicAnnSQItem, 0) != null);
 
 DicomTextObject textObject1 = dicomDataset.GetTextObjectInformation(firstGraphicAnnSQItem, 0);
 Debug.Assert(textObject1 != null);
 textObject1.TextJustification = TextAnnotationJustificationType.Right;
 dicomDataset.SetTextObjectInformation(firstGraphicAnnSQItem, 0, textObject1);
 
 
 dicomDataset.Save(@"C:\GraphicAnnSequence.dic", DicomDataSetSaveFlags.None);
 }
 DicomEngine.Shutdown();
 }
 | 
Remarks
             Requirements
Requirements
Target Platforms: Microsoft .NET Framework 2.0, Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 family
 See Also
See Also