Leadtools.Windows.Annotations Requires Document/Medical license. | Send comments on this topic. | Back to Introduction - All Topics | Help Version 16.5.9.25
AnnCrossProductObject Class
See Also  Members   Example 
Leadtools.Windows.Annotations Namespace : AnnCrossProductObject Class





Defines an annotation cross product object.

Object Model



Syntax

Visual Basic (Declaration) 
<SerializableAttribute()>
Public Class AnnCrossProductObject 
   Inherits AnnObjectBase
   Implements IAnnRulerObject 
Visual Basic (Usage)Copy Code
Dim instance As AnnCrossProductObject
C# 
[SerializableAttribute()]
public class AnnCrossProductObject : AnnObjectBase, IAnnRulerObject  
C++/CLI 
[SerializableAttribute()]
public ref class AnnCrossProductObject : public AnnObjectBase, IAnnRulerObject  
XAML Object Element Usage 

<AnnCrossProductObject .../>

XAML Object Element Usage 

<AnnCrossProductObject .../>

Example

This example creates a cross product object.

Visual BasicCopy Code
'''<!--This example creates a cross product object.-->
Private Sub AnnCrossProductObject_AnnCrossProductObject(ByVal container As AnnContainer)
   Dim crossProduct As AnnCrossProductObject = New AnnCrossProductObject()
   crossProduct.Stroke = Brushes.Red
   crossProduct.StrokeThickness = 1.0
   crossProduct.FontFamily = New FontFamily("Arial")
   crossProduct.FontSize = 10.0
   crossProduct.FirstStartPoint = New System.Windows.Point(DirectCast(New LengthConverter().ConvertFrom("5in"), Double), DirectCast(New LengthConverter().ConvertFrom("5in"), Double))
   crossProduct.FirstEndPoint = New System.Windows.Point(DirectCast(New LengthConverter().ConvertFrom("10in"), Double), DirectCast(New LengthConverter().ConvertFrom("10in"), Double))
   ' make this cross product symmetrical
   crossProduct.UpdateSecondPoints()
   ' update the intersection point
   crossProduct.UpdateIntersectionPoint()
   crossProduct.MeasurementUnit = AnnUnit.Inch
   crossProduct.TickMarksLength = DirectCast(New LengthConverter().ConvertFrom("0.25in"), Double)
   crossProduct.ShowTickMarks = True
   crossProduct.GaugeLength = DirectCast(New LengthConverter().ConvertFrom("1.0in"), Double)
   crossProduct.ShowGauge = True
   crossProduct.ShowLength = True
   crossProduct.Precision = 2
   container.Children.Add(crossProduct)

   ' show the intersection point
   MessageBox.Show(String.Format("Intersection point is at: {0}", crossProduct.IntersectionPoint))
End Sub
C#Copy Code
private void AnnCrossProductObject_AnnCrossProductObject(AnnContainer container) 

   AnnCrossProductObject crossProduct = new AnnCrossProductObject(); 
   crossProduct.Stroke = Brushes.Red; 
   crossProduct.StrokeThickness = 1.0; 
   crossProduct.FontFamily = new FontFamily("Arial"); 
   crossProduct.FontSize = 10.0; 
   crossProduct.FirstStartPoint = new Point((double)new LengthConverter().ConvertFrom("5in"), (double)new LengthConverter().ConvertFrom("5in")); 
   crossProduct.FirstEndPoint = new Point((double)new LengthConverter().ConvertFrom("10in"), (double)new LengthConverter().ConvertFrom("10in")); 
   // make this cross product symmetrical 
   crossProduct.UpdateSecondPoints(); 
   // update the intersection point 
   crossProduct.UpdateIntersectionPoint(); 
   crossProduct.MeasurementUnit = AnnUnit.Inch; 
   crossProduct.TickMarksLength = (double)new LengthConverter().ConvertFrom("0.25in"); 
   crossProduct.ShowTickMarks = true; 
   crossProduct.GaugeLength = (double)new LengthConverter().ConvertFrom("1.0in"); 
   crossProduct.ShowGauge = true; 
   crossProduct.ShowLength = true; 
   crossProduct.Precision = 2; 
   container.Children.Add(crossProduct); 
 
   // show the intersection point 
   MessageBox.Show(String.Format("Intersection point is at: {0}", crossProduct.IntersectionPoint)); 
}
XAMLCopy Code
<Window x:Class="WPFSamples.AnnCrossProductObject" Title="Leadtools.Windows.Annotations" Height="600" Width="800" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:Leadtools_Windows_Annotations="clr-namespace:Leadtools.Windows.Annotations;assembly=Leadtools.Windows.Annotations"> 
  <Leadtools_Windows_Annotations:AnnCrossProductObject FirstStartPoint="5in,5in" FirstEndPoint="10in,5in" SecondStartPoint="7.5in,2.5in" SecondEndPoint="7.5in,7.5in" IntersectionPoint="7.5in,5in" MeasurementUnit="Inch" TickMarksLength="0.25in" ShowTickMarks="True" GaugeLength="1.0in" ShowGauge="True" ShowLength="True" Precision="0" Stroke="Red" StrokeThickness="1.0" FontFamily="Arial" FontSize="10.0" /> 
</Window>

Remarks

The cross-product annotation object consists of two rulers intersecting at right angles. The intersection point of a cross product object updates dynamically and can be obtained through the IntersectionPoint property.

For more information about the crossproduct annotation object refer to AnnCrossProductObject for WPF. For more information about the automated crossproduct annotation object, refer to WPF Annotation Objects - Automated Features.

Inheritance Hierarchy

System.Object
   System.Windows.Threading.DispatcherObject
      System.Windows.DependencyObject
         System.Windows.Media.Visual
            System.Windows.UIElement
               System.Windows.FrameworkElement
                  Leadtools.Windows.Annotations.AnnObjectBase
                     Leadtools.Windows.Annotations.AnnCrossProductObject

Requirements

Target Platforms: Microsoft .NET Framework 3.0, Windows XP, Windows Vista, and Windows Server 2003 family

See Also

AnnCrossProductObject requires a Document/Medical product license and unlock key. For more information, refer to: Imaging Pro/Document/Medical Features and Unlocking Special LEAD Features.