←Select platform

FromAnnObjectToDataSet Method

Summary

Converts a LEAD Annotation object into one or more DICOM annotation objects, and (optionally) adds the new DICOM annotation objects into the dataset.

Syntax

C#
VB
C++
public void FromAnnObjectToDataSet( 
   DicomDataSet ds, 
   object annObject, 
   DicomElement graphicAnnSqItem 
) 
  
Public Sub FromAnnObjectToDataSet( _ 
   ByVal ds As Leadtools.Dicom.DicomDataSet, _ 
   ByVal annObject As Object, _ 
   ByVal graphicAnnSqItem As Leadtools.Dicom.DicomElement _ 
)  
public: 
void FromAnnObjectToDataSet(  
   Leadtools.Dicom.DicomDataSet^ ds, 
   Object^ annObject, 
   Leadtools.Dicom.DicomElement^ graphicAnnSqItem 
)  

Parameters

ds
The DicomDataSet where the annotation objects will be added

annObject
The LEAD annotation object that is being converted

graphicAnnSqItem
Pointer to an item element under the "Graphic Annotation Sequence" (0070,0001) in the "Graphic Annotation Module". If this parameter is not null then the resulting DICOM annotation objects will be added to the dataset under the item pointed to by this parameter. Pass null if you dont want the resulting objects to be added to the dataset.

Remarks

The paramater annObject is of type AnnObject This function will convert a LEAD Annotation object into one or more DICOM annotation objects (text and graphic).

If the parameter graphicAnnSqItem is not null, then the function will automatically add the resulting DICOM annotation objects into the ds.

If the resulting DICOM annotation object is a "Text Object" then it will be added under the "Text Object Sequence" under the item pointed to by graphicAnnSqItem.

If the resulting DICOM annotation object is a "Graphic Object" then it will be added under the "Graphic Object Sequence" under the item pointed to by graphicAnnSqItem.

Note: for Silverlight users, the System.Object is of type Leadtools.Windows.Annotations.AnnObject

Example

This sample does the following:

  1. Creates a LEAD Leadtools.Annotations.AnnRectangleObject annotation
  2. Creates a converter
  3. Converts to a Leadtools.Dicom.DicomAnnotationObject annotation
  4. Converts back to a LEAD AnnObject
    C#
    VB
    Silverlight C#
    Silverlight VB
    using Leadtools; 
    using Leadtools.Annotations; 
    using Leadtools.Dicom; 
    using Leadtools.Dicom.Annotations; 
     
    public void DicomAnnotationsUtilities_FromAnnObject() 
    { 
       // Create an AnnRectangleObject 
       AnnRectangleObject annObject = new AnnRectangleObject(); 
       annObject.Pen = new AnnPen(Color.Purple, new AnnLength(5, AnnUnit.Pixel)); 
       annObject.Brush = new AnnSolidBrush(Color.White); 
       annObject.Bounds = new AnnRectangle(400, 100, 500, 200); 
     
       // Create an instance of the converter, and set some properties 
       DicomAnnotationsUtilities du = new DicomAnnotationsUtilities(); 
       du.LayerName = "Test Layer Name"; 
     
       AnnTextObject defaultAnnObject = new AnnTextObject(); 
       defaultAnnObject.Pen = annObject.Pen; 
       defaultAnnObject.Brush = annObject.Brush; 
       du.DefaultObject = defaultAnnObject; 
     
       // Convert to a DicomAnnotationObject 
       // Note that there is no DicomAnnotationObject rectangle type, so it is converted to a polyline 
       DicomAnnotationObject dicomAnnotationObject = du.FromAnnObject(annObject); 
     
       // Convert back to a LEAD AnnObject 
       // Now the LEAD object will be a polyline, even though the original object was a rectangle 
       AnnObject annObjectNew = du.ToAnnObject(dicomAnnotationObject) as AnnObject; 
     
       if (annObjectNew != null) 
       { 
          string msg = string.Format("Original type [{0}]     New type [{1}]", annObject.GetType(), annObjectNew.GetType()); 
          MessageBox.Show(msg); 
       } 
    } 
    Imports Leadtools 
    Imports Leadtools.Annotations 
    Imports Leadtools.Dicom 
    Imports Leadtools.Dicom.Annotations 
     
    Public Sub DicomAnnotationsUtilities_FromAnnObject() 
       ' Create an AnnRectangleObject 
       Dim annObject As New AnnRectangleObject() 
       annObject.Pen = New AnnPen(Color.Purple, New AnnLength(5, AnnUnit.Pixel)) 
       annObject.Brush = New AnnSolidBrush(Color.White) 
       annObject.Bounds = New AnnRectangle(400, 100, 500, 200) 
     
       ' Create an instance of the converter, and set some properties 
       Dim du As New DicomAnnotationsUtilities() 
       du.LayerName = "Test Layer Name" 
     
       Dim defaultAnnObject As New AnnTextObject() 
       defaultAnnObject.Pen = annObject.Pen 
       defaultAnnObject.Brush = annObject.Brush 
       du.DefaultObject = defaultAnnObject 
     
       ' Convert to a DicomAnnotationObject 
       ' Note that there is no DicomAnnotationObject rectangle type, so it is converted to a polyline 
       Dim dicomAnnotationObject As DicomAnnotationObject = du.FromAnnObject(annObject) 
     
       ' Convert back to a LEAD AnnObject 
       ' Now the LEAD object will be a polyline, even though the original object was a rectangle 
       Dim annObjectNew As AnnObject = TryCast(du.ToAnnObject(dicomAnnotationObject), AnnObject) 
     
       If annObjectNew IsNot Nothing Then 
          Dim msg As String = String.Format("Original type [{0}]     New type [{1}]", annObject.GetType(), annObjectNew.GetType()) 
          MessageBox.Show(msg) 
       End If 
    End Sub 
    using Leadtools; 
    using Leadtools.Dicom; 
    using Leadtools.Dicom.Annotations; 
    using Leadtools.Windows.Annotations; 
    using Leadtools.Examples; 
     
    public void DicomAnnotationsUtilities_FromAnnObject() 
    { 
       // Create an AnnRectangleObject 
       AnnRectangleObject annObject = new AnnRectangleObject(); 
       annObject.Stroke = Color.FromArgb(0xFF, 0x80, 0x00, 0x80); // purple 
       annObject.StrokeThickness = 5; 
     
       annObject.Fill = Color.FromArgb(0xFF, 0xFF, 0xFF, 0xFF); // white 
       annObject.Rect = new Rect(400, 100, 500, 200); 
     
       // Create an instance of the converter, and set some properties 
       DicomAnnotationsUtilities du = new DicomAnnotationsUtilities(); 
       AnnTextObject defaultAnnObject = new AnnTextObject(); 
       defaultAnnObject.Stroke = annObject.Stroke; 
       defaultAnnObject.StrokeThickness = annObject.StrokeThickness; 
       defaultAnnObject.Fill = annObject.Fill; 
     
       du.DefaultObject = defaultAnnObject; 
       du.LayerName = "Test Layer Name"; 
     
       // Convert to a DicomAnnotationObject 
       DicomAnnotationObject dicomAnnotationObject = du.FromAnnObject(annObject); 
     
       // Convert back to a LEAD AnnObject 
       AnnObject annObjectNew = du.ToAnnObject(dicomAnnotationObject) as AnnObject; 
     
       string msg = string.Format("Original type [{0}]     New type [{1}]", annObject.GetType(), annObjectNew.GetType()); 
       Console.WriteLine(msg); 
    } 
    Imports Leadtools 
    Imports Leadtools.Dicom 
    Imports Leadtools.Dicom.Annotations 
    Imports Leadtools.Windows.Annotations 
     
    Public Sub DicomAnnotationsUtilities_FromAnnObject() 
       ' Create an AnnRectangleObject 
       Dim annObject As AnnRectangleObject = New AnnRectangleObject() 
       annObject.Stroke = Color.FromArgb(&HFF, &H80, &H0, &H80) ' purple 
       annObject.StrokeThickness = 5 
     
       annObject.Fill = Color.FromArgb(&HFF, &HFF, &HFF, &HFF) ' white 
       annObject.Rect = New Rect(400, 100, 500, 200) 
     
       ' Create an instance of the converter, and set some properties 
       Dim du As DicomAnnotationsUtilities = New DicomAnnotationsUtilities() 
       Dim defaultAnnObject As AnnTextObject = New AnnTextObject() 
       defaultAnnObject.Stroke = annObject.Stroke 
       defaultAnnObject.StrokeThickness = annObject.StrokeThickness 
       defaultAnnObject.Fill = annObject.Fill 
     
       du.DefaultObject = defaultAnnObject 
       du.LayerName = "Test Layer Name" 
     
       ' Convert to a DicomAnnotationObject 
       Dim dicomAnnotationObject As DicomAnnotationObject = du.FromAnnObject(annObject) 
     
       ' Convert back to a LEAD AnnObject 
       Dim annObjectNew As AnnObject = TryCast(du.ToAnnObject(dicomAnnotationObject), AnnObject) 
     
       Dim msg As String = String.Format("Original type [{0}]     New type [{1}]", annObject.GetType(), annObjectNew.GetType()) 
       Console.WriteLine(msg) 
    End Sub 
Requirements

Target Platforms

Help Version 19.0.2017.10.27
Products | Support | Contact Us | Copyright Notices
© 1991-2017 LEAD Technologies, Inc. All Rights Reserved.