123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990 |
- /*
- * ********************************************************************************************************************
- *
- * :*$@@%$*: ;: ;; ;;
- * :@@%! :!@@%: %! ;%%@@%$ =@@@@@@@%; @%@@@%%%%@@@@@
- * :@%; :$= %%$$$%$$ ;$$ ;$@= !@$
- * =@! %! @ $=;% !@@@%: !$$$$$$$$$$$$$$=
- * =@* %! @ $= % %@= =%@! %=
- * *$%%! @@= ;=$%%%$*: %! @ $= % =%%%%%%@$ *%: =%
- * %@@!: !@@@%=$@@@@%! :*@@$: %! @ $= % $* ;@ @* :%*
- * ;@@! ;!!!;: ;@%: =======@%========* @ $$ % $%*****$@ :@$=*********=@$
- * $@* ;@@@%=!: *@*
- * =@$ ;;;!=%@@@@=! =@!
- * %@$: =@%: :*@@@* %@= Copyright (c) 2016-2019. 北京上格云技术有限公司
- * ;%@@$=$@@%* *@@@$=%@@%;
- * ::;:: ::;:: All rights reserved.
- *
- * ********************************************************************************************************************
- */
- import { SGraphyItem } from "@sybotan-web/graphy/lib";
- import { SPainter, SRect } from "@sybotan-web/draw/lib";
- import { Marker } from "../types/Marker";
- import { SMouseEvent } from "@sybotan-web/base/lib";
- /**
- * 标志item
- *
- * @author 郝建龙
- */
- export class MarkerItem extends SGraphyItem {
- /** 标志宽度 */
- private width: number = 28;
- /** 标志高度 */
- private height: number = 37;
- /** 标志 */
- data: Marker;
- /** 标志路径 */
- static imgSource: string =
- // eslint-disable-next-line max-len
- "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABwAAAAlCAYAAABReInxAAAEaElEQVRYhd2XTWhdRRTHf+clgb7XRbCK6MZSiS5SrVRsq6tiX1AI2LV0UejSneJGqaFFiTtxJ+7UgFCLgqJQCC+oFT/eixKhASGBSuHFiIVKbD5fX96RuXdm7ty59wbduPCEy5t7Z+b8z//M+ZjwvxcJCW40jyW/gqAoIgKafLgP5XngGeARRe+VdOsfii4KMgtcqrfav5c5LNHjxuHEZvN48qsJSiKjInIB5QVgn5tzhiRjp0LYRnlX0YuNVmetCrAWWxMoOSKwgPKSAVM0m1OHIaSvCbpZ8yKwsDlx/EiBZhlgxkzHBbkKHHJAztLwPVmpmhkqiQmHzN6tiROHC2hlDIEDCp8Zd6pj4dyi6bs7Yw9iHxLwZG5U0U+3Jk4c2BMwUSUyJchYyNtS8cxihv7xehIZA52KAeMoPSiwrDASTqof+wBJAHw0h1Gds1PvKDy0f27+hvs8HKGfBRkhUJKzSmoMNZ9l6Ogx2N2l//Ucg59+yLncAVtDRlKdvFEKCNLEbdAs5BNgEfa9Nk3t5Cm/emjyNP0P36f33juI5tllZ0ozBIyjdFztueSTVRh+6mQOzFt85iy1Bx706eEDSlMjQcbD9XGU3h26JzSl9tjjBTDv5kePZqwCI23K3FMJKMi2T2wJH0HX1wtY3pyNdZf8EFQfSb22VQkIrOAyLAh3o2jw5Sz07xTB/rzFbvvbwBdkxSEpBLJSCajoPC6R7Z+TQfcGvdfPw1pWJgerK+ycfxndWkfyGRa86Xz4PYpSvgDO2OhKLcySkP53X9H/8XuGHj6M9nvo0i8wGGQIthL5EpHq+bgSUEQ+QVkFuT+01aVIorO3w2BxIatAbiYXZH7mN0U/r3QpSg/0FV+kNB/qucIkEr1nZxe489VGq9OvBLRKZ4DLao8/rDhBX/Jdwu9TX4vdqsv1VmcmZl3WLYycE6RNUCtdoIddIyMb9MV0VVuQcwWtJXnohpvAc8ByxiLwYKAcstSxZ7lk9tZb7c0CWoGhbwYJs5sIpwS6WadPFefdabele7umdtZb7ZsFpFJAcm6xCmRSRNYIklqCsi62JKnqmqKT9Va7W0CpBNR8g7RMrln3bmf90YWU98y2iJxutDrXCgh7AubOSsOP3yh6IXflCMaqOqWqVwvaS6QAmGK5rBMPLCJvAZ30oibhgXcEebuoulwKgGR5lDFOI3FXkKkwYKw9U4ru5q4Xe0gEqMQlSvIGzAqy4C9Tqj/bb7nI3UuiShPdpvEF2PE0rGbI1n0Q3Kv+PWDcYlzzjVrVFec+Ra+ovz5K/o5aIYVaGhQxTzusq7aSrInI7Td/XV0uV1stcT+0geC6hdCY6xijRoG6/Ydm+NbTT5guLtPXu2PT17umIe6YPAX+suNKie6lQbEUaLQ6Q8DBeN3SxvZHwzXvnZo1xjx3gemn3P5HgDE7K4N405OdxUsFTXZX2foYIlsdRGRw8GawH2hYl5p/Awwr890oNw3WuNHczszVLmm4Fbr+YwH+Bv+IBpdT6d7pAAAAAElFTkSuQmCC";
- /** 标志dom */
- Img: CanvasImageSource;
- /**
- * 构造函数
- *
- * @param parent 指向父对象
- * @param data 标志数据
- */
- constructor(parent: SGraphyItem | null, data: Marker) {
- super(parent);
- this.data = data;
- this.Img = new Image();
- this.Img.src = MarkerItem.imgSource;
- this.isTransform = false;
- } // Constructor
- /**
- * Item对象边界区域
- *
- * @return SRect
- */
- boundingRect(): SRect {
- return new SRect(-14, -33, this.width, this.height);
- } // Function boundingRect()
- /**
- * 鼠标单击事件
- *
- * @param event 事件参数
- * @return boolean
- */
- onClick(event: SMouseEvent): boolean {
- this.$emit("click", event);
- return true;
- } // Function onClick()
- /**
- * Item绘制操作
- *
- * @param painter painter对象
- * @param rect 绘制区域
- */
- onDraw(painter: SPainter, rect?: SRect): void {
- if (this.visible) {
- painter.drawImage(this.Img, -14, -33, this.width, this.height);
- }
- } // Function onDraw()
- } // Class MarkerItem
|