调整框选线色自适应算法

This commit is contained in:
walker 2023-09-01 16:59:27 +08:00
parent c66f841526
commit 530c01faa5

View File

@ -104,8 +104,21 @@ export class CommonMouseTool extends AppInteractionPlugin {
private updateBoxLineColor(cp: ICanvasProperties) { private updateBoxLineColor(cp: ICanvasProperties) {
// 根据画布背景调整线色 // 根据画布背景调整线色
const color = new Color(cp.backgroundColor); const color = new Color(cp.backgroundColor);
const cn = color.toNumber() ^ 0xffffff; const r = 1 - color.red;
this._boxLineColor.setValue(cn); const g = 1 - color.green;
const b = 1 - color.blue;
// const cn = 0xffffff - color.toNumber();
this._boxLineColor.setValue([r, g, b]);
console.log(
'框选线色',
color.red,
color.green,
color.blue,
this._boxLineColor.red,
this._boxLineColor.green,
this._boxLineColor.blue,
this._boxLineColor
);
} }
bind(): void { bind(): void {
@ -305,7 +318,7 @@ export class CommonMouseTool extends AppInteractionPlugin {
if (!this.drag) return; if (!this.drag) return;
// 绘制框选矩形框 // 绘制框选矩形框
this.box.clear(); this.box.clear();
this.box.lineStyle({ width: 1, color: this._boxLineColor }); this.box.lineStyle({ width: 2, color: this._boxLineColor });
const dsx = end.x - start.x; const dsx = end.x - start.x;
const dsy = end.y - start.y; const dsy = end.y - start.y;
let { x, y } = start; let { x, y } = start;