/*
THIS INFRAGISTICS ULTIMATE SOFTWARE LICENSE  AGREEMENT ("AGREEMENT") LOCATED HERE:
https://www.infragistics.com/legal/license/igultimate-la
https://www.infragistics.com/legal/license/igultimate-eula
GOVERNS THE LICENSING, INSTALLATION AND USE OF INFRAGISTICS SOFTWARE. BY DOWNLOADING AND/OR INSTALLING AND USING INFRAGISTICS SOFTWARE:  you are indicating that you have read and understand this Agreement, and agree to be legally bound by it on behalf of the yourself and your company.
*/
import { Base, Point_$type, markType } from "igniteui-angular-core";
import { List$1 } from "igniteui-angular-core";
import { DataAnnotationInfo } from "./DataAnnotationInfo";
import { Rect } from "igniteui-angular-core";
/**
 * @hidden
 */
export let DataAnnotationItem = /*@__PURE__*/ (() => {
    class DataAnnotationItem extends Base {
        constructor() {
            super();
            this._dataIndex = 0;
            this._startLabelX = null;
            this._startLabelY = null;
            this._endLabelX = null;
            this._endLabelY = null;
            this._centerLabelY = null;
            this._centerLabelX = null;
            this._shapeStartX = 0;
            this._shapeStartY = 0;
            this._shapeEndX = 0;
            this._shapeEndY = 0;
            this._shapeCenterX = 0;
            this._shapeCenterY = 0;
            this._shapeBrush = null;
            this._shapeOutline = null;
            this._shapeThickness = 0;
            this.a = false;
            this.b = null;
            this.c = null;
            this.h = 0;
            this.f = 0;
            this.g = 0;
            this.d = 0;
            this.shapeStartX = NaN;
            this.shapeStartY = NaN;
            this.shapeCenterX = NaN;
            this.shapeCenterY = NaN;
            this.shapeEndX = NaN;
            this.shapeEndY = NaN;
            this.shapeThickness = NaN;
            this.a = true;
            this.b = new List$1(DataAnnotationInfo.$, 0);
            this.c = new List$1(DataAnnotationInfo.$, 0);
            this.dataIndex = 0;
        }
        get dataIndex() {
            return this._dataIndex;
        }
        set dataIndex(a) {
            this._dataIndex = a;
        }
        get startLabelX() {
            return this._startLabelX;
        }
        set startLabelX(a) {
            this._startLabelX = a;
        }
        get startLabelY() {
            return this._startLabelY;
        }
        set startLabelY(a) {
            this._startLabelY = a;
        }
        get endLabelX() {
            return this._endLabelX;
        }
        set endLabelX(a) {
            this._endLabelX = a;
        }
        get endLabelY() {
            return this._endLabelY;
        }
        set endLabelY(a) {
            this._endLabelY = a;
        }
        get centerLabelY() {
            return this._centerLabelY;
        }
        set centerLabelY(a) {
            this._centerLabelY = a;
        }
        get centerLabelX() {
            return this._centerLabelX;
        }
        set centerLabelX(a) {
            this._centerLabelX = a;
        }
        get shapeStartX() {
            return this._shapeStartX;
        }
        set shapeStartX(a) {
            this._shapeStartX = a;
        }
        get shapeStartY() {
            return this._shapeStartY;
        }
        set shapeStartY(a) {
            this._shapeStartY = a;
        }
        get shapeEndX() {
            return this._shapeEndX;
        }
        set shapeEndX(a) {
            this._shapeEndX = a;
        }
        get shapeEndY() {
            return this._shapeEndY;
        }
        set shapeEndY(a) {
            this._shapeEndY = a;
        }
        get shapeCenterX() {
            return this._shapeCenterX;
        }
        set shapeCenterX(a) {
            this._shapeCenterX = a;
        }
        get shapeCenterY() {
            return this._shapeCenterY;
        }
        set shapeCenterY(a) {
            this._shapeCenterY = a;
        }
        get z() {
            return { $type: Point_$type, x: this.shapeCenterX, y: this.shapeCenterY };
        }
        get ab() {
            return { $type: Point_$type, x: this.shapeStartX, y: this.shapeStartY };
        }
        get aa() {
            return { $type: Point_$type, x: this.shapeEndX, y: this.shapeEndY };
        }
        get shapeBrush() {
            return this._shapeBrush;
        }
        set shapeBrush(a) {
            this._shapeBrush = a;
        }
        get shapeOutline() {
            return this._shapeOutline;
        }
        set shapeOutline(a) {
            this._shapeOutline = a;
        }
        get shapeThickness() {
            return this._shapeThickness;
        }
        set shapeThickness(a) {
            this._shapeThickness = a;
        }
        get i() {
            return this.g - this.f;
        }
        get e() {
            return this.d - this.h;
        }
        get ac() {
            return new Rect(0, this.f, this.h, this.i, this.e);
        }
    }
    DataAnnotationItem.$t = markType(DataAnnotationItem, 'DataAnnotationItem');
    return DataAnnotationItem;
})();
