import { SGraphItem } from "@saga-web/graph/lib"; import { SPoint } from "@saga-web/draw/lib"; import { SPolylineItem } from '@saga-web/big/lib'; import { Legend } from '../types/Legend'; /** * 图例节点Item(线类型) * * * @author 张宇(taohuzy@163.com) */ export class SLineLegendItem extends SPolylineItem { /** 图例节点对象数据 */ data: Legend; /** x轴缩放属性 */ // _scaleX: number = 1; // get scaleX(): number { // return this._scaleX; // } // set scaleX(v: number) { // this._scaleX = v; // if (this.data.Scale) { // this.data.Scale.X = v; // } // this.update(); // } /** y轴缩放属性 */ // _scaleY: number = 1; // get scaleY(): number { // return this._scaleY; // } // set scaleY(v: number) { // this._scaleY = v; // if (this.data.Scale) { // this.data.Scale.Y = v; // } // this.update(); // } /** y轴旋转属性 */ // _rolate: number = 0; // get rolate(): number { // return this._rolate; // } // set rolate(v: number) { // this._rolate = v; // if (this.data.Rolate) { // this.data.Rolate.Z = v; // } // this.update(); // } set name(v: string) { this.data.Name = v; } set line(arr: SPoint[]) { if (this.data.Properties) { this.data.Properties.Line = arr; } } set x(v: number) { this.data.Pos.X = v; } set y(v: number) { this.data.Pos.Y = v; } set width(v: number) { if (this.data.Size) { this.data.Size.Width = v; } } set height(v: number) { if (this.data.Size) { this.data.Size.Height = v; } } /** * 构造函数 * * @param parent 指向父对象 * @param data 图例节点对象数据 */ constructor(parent: SGraphItem | null, data: Legend) { super(parent,[]); this.data = data; this.id = data.ID; this.moveTo(data.Pos.X, data.Pos.Y); // if (data.Scale) { // this.scaleX = data.Scale.X; // this.scaleY = data.Scale.Y; // } // if (data.Rolate && this.data.Rolate.Z) { // this.rolate = data.Rolate.Z; // } if (data.Size) { this.width = data.Size.Width; this.height = data.Size.Height; } if (data.Properties && data.Properties.Line) { this.line = data.Properties.Line; } } } // Class SLineLegendItem