function Leadtools.Annotations.Core.AnnPolyRulerObject()
An AnnPolyrulerObject annotation object is an array of points that creates a sequence of joined rulers. The polyruler can be used to measure the distance of an irregularly shaped object. As ruler segments are added, removed, or changed in length, a running total of the distance is displayed.
With the automated functions, on systems with mouse support, each line segment is formed with a mouse click, and the object is completed on a double-click.
With the automated functions, on systems with touch support, the first line segment starts with the first tap and hold. Each successive tap and hold for 1.5 seconds results in a new line segment. The object is completed by the user removing the finger from the device.
Programmatically, the boundaries and location of the polyruler object can be controlled using the following properties:
Each object can be transformed with the following methods:
The AnnPolyRulerObject class inherits a number of properties from the AnnObject class, providing support for font, stroke and fill characteristics. These properties are listed below:
The name of the polyruler object can be controlled using Labels property, inherited from the AnnObject class.
An object can be part of a group annotation object or part of a container object. It cannot be part of both a group and a container at the same time.
Since the polyruler object consists of a sequence of rulers, it has certain ruler characteristics pertaining to the length, tick marks and gauge. The following properties may be used to customize these ruler characteristics and determine what exactly is displayed when the cross-product object is drawn:
The following properties can also be used to programmatically set characteristics of an AnnPolyRulerObject:
This example creates a polyruler object and adds it to the automation container.
example: function SiteLibrary_DefaultPage$example() { // assumes _automation is valid var inch = 720.0; // Add a freehand hotspot object var polyRulerObj = new lt.Annotations.Core.AnnPolyRulerObject(); // Set the points for the freehand hotspot polyRulerObj.get_points().add(lt.LeadPointD.create(1 * inch, 1 * inch)); polyRulerObj.get_points().add(lt.LeadPointD.create(2 * inch, 2 * inch)); polyRulerObj.get_points().add(lt.LeadPointD.create(1 * inch, 5 * inch)); // Set the stroke polyRulerObj.set_stroke(lt.Annotations.Core.AnnStroke.create(lt.Annotations.Core.AnnSolidColorBrush.create("red"), lt.LeadLengthD.create(2))); // Add the object to the automation container this._automation.get_container().get_children().add(polyRulerObj); // Select the object this._automation.selectObject(polyRulerObj); },