The PhysicalTransform Property is available in LEADTOOLS Document and Medical Imaging toolkits.
Returns the current physical transformation System.Drawing.Drawing2D.Matrix of this AnnObject.Visual Basic (Declaration) | |
---|---|
Public Overridable ReadOnly Property PhysicalTransform As Matrix |
Visual Basic (Usage) | Copy Code |
---|---|
Dim instance As AnnObject Dim value As Matrix value = instance.PhysicalTransform |
C# | |
---|---|
public virtual Matrix PhysicalTransform {get;} |
Property Value
The current physical transformation matrix of this AnnObject.This example will perform various transformation on an annotation object then shows its transformation matrix.
Visual Basic | Copy Code |
---|---|
Private Sub AnnObject_PhysicalTransform(ByVal obj As AnnObject) ' this example only works with line objects If TypeOf obj Is AnnLineObject Then Dim line As AnnLineObject = CType(IIf(TypeOf obj Is AnnLineObject, obj, Nothing), AnnLineObject) ' show the logical coordinates of this line Dim pts As PointF() = {line.StartPoint.ConvertTo(line.Container.UnitConverter, AnnUnit.Pixel).ToPointF(), line.EndPoint.ConvertTo(line.Container.UnitConverter, AnnUnit.Pixel).ToPointF()} Console.WriteLine("Logical coordinates: {0}, {1}", pts(0), pts(1)) ' show the physical coordinates of this line Dim mat As Matrix = line.PhysicalTransform Try Dim transformer As AnnTransformer = New AnnTransformer(line.Container.UnitConverter, mat) pts = transformer.PointToPhysical(pts) Console.WriteLine("Physical coordinates: {0}, {1}", pts(0), pts(1)) Finally CType(mat, IDisposable).Dispose() End Try Else Console.WriteLine("Not an annotation line object!") End If End Sub |
C# | Copy Code |
---|---|
private void AnnObject_PhysicalTransform(AnnObject obj) { // this example only works with line objects if(obj is AnnLineObject) { AnnLineObject line = obj as AnnLineObject; // show the logical coordinates of this line PointF[] pts = { line.StartPoint.ConvertTo(line.Container.UnitConverter, AnnUnit.Pixel).ToPointF(), line.EndPoint.ConvertTo(line.Container.UnitConverter, AnnUnit.Pixel).ToPointF() }; Console.WriteLine("Logical coordinates: {0}, {1}", pts[0], pts[1]); // show the physical coordinates of this line using(Matrix mat = line.PhysicalTransform) { AnnTransformer transformer = new AnnTransformer(line.Container.UnitConverter, mat); pts = transformer.PointToPhysical(pts); Console.WriteLine("Physical coordinates: {0}, {1}", pts[0], pts[1]); } } else Console.WriteLine("Not an annotation line object!"); } |
(Read only) The physical transformation System.Drawing.Drawing2D.Matrix of an AnnObject is the result of multiplying the object Transform matrix by the AnnObject.ContainerTransform matrix.
This matrix can be used to transform points from logical (in the object coordinate) coordinates to physical coordinates. For example, the annotation toolkit uses this matrix during hit-testing.
Target Platforms: Microsoft .NET Framework 2.0, Windows 2000, Windows XP, Windows Server 2003 family, Windows Server 2008 family, Windows Vista, Windows 7