The FromAnnObject Method is available in LEADTOOLS Medical Imaging toolkits.
Converts a LEADTOOLS AnnObject
System.Object to a
Leadtools.Dicom.DicomAnnotationObject.
Supported in Silverlight, Windows Phone 7
Syntax
Example
This sample does the following:
- Creates a LEAD Leadtools.Annotations.AnnRectangleObject annotation
- Creates a converter
- Converts to a Leadtools.Dicom.DicomAnnotationObject annotation
- Converts back to a LEAD AnnObject
Visual Basic | Copy Code |
---|
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 |
C# | Copy Code |
---|
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);
}
} |
SilverlightCSharp | Copy Code |
---|
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);
} |
SilverlightVB | Copy Code |
---|
Public Sub DicomAnnotationsUtilities_FromAnnObject()
' Create an AnnRectangleObject
Dim annObject As AnnRectangleObject = New AnnRectangleObject()
annObject.Stroke = Color.FromArgb(&HFF, &H80, &H00, &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 |
Remarks
Requirements
Target Platforms: Silverlight 3.0, Windows XP, Windows Server 2003 family, Windows Server 2008 family, Windows Vista, Windows 7, MAC OS/X (Intel Only)
See Also