#
vincentlu
5 天以前 072fa343de3d15437ed6e46e75200fdde40a4497
#
3个文件已修改
67 ■■■■ 已修改文件
zy-acs-flow/src/map/constants.js 26 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
zy-acs-flow/src/map/player.js 32 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
zy-acs-flow/src/map/tool.js 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
zy-acs-flow/src/map/constants.js
@@ -27,6 +27,25 @@
    AREA_MODE: "4",
})
export const MAP_TONES = Object.freeze({
    light: {
        canvasBackground: '#f1f2f6',
        textPrimary: 0x333333,
        grid: {
            color: 0x000000,
            alpha: 0.08,
        },
    },
    dark: {
        canvasBackground: '#1c222b',
        textPrimary: 0xcfd6e3,
        grid: {
            color: 0x5f6773,
            alpha: 0.22,
        },
    },
});
export const DEVICE_TYPE = Object.freeze({
    SHELF: "SHELF",
    STATION: 'STATION',
@@ -72,7 +91,7 @@
    DIRECTION: null,
    AGV: 0xb2bec3,
    POINT: 0xdfe6e9,
    POINT: 0x555a68,
})
export const DEVICE_SELECTED_EFFECT_PADDING = Object.freeze({
@@ -111,3 +130,8 @@
    ORDER: 1,
    REVERSE_ORDER: 2,
})
export const ROUTE_COLORS = Object.freeze({
    light: 0x2f68ac,
    dark: 0x4a84c8,
});
zy-acs-flow/src/map/player.js
@@ -2,7 +2,9 @@
import * as TWEEDLE from 'tweedle.js';
import * as Tool from './tool';
import star from '/img/map/star.png';
import { DEVICE_TYPE, MAP_MIRROR } from './constants';
import { DEVICE_TYPE, MAP_MIRROR, MAP_TONES } from './constants';
const getMapTone = (mode) => mode === 'dark' ? MAP_TONES.dark : MAP_TONES.light;
export default class Player {
@@ -275,8 +277,9 @@
    }
    showCoordinates = () => {
        const tone = getMapTone(this.themeMode);
        this.coordinatesText = new PIXI.Text('{ X: 0, Y: 0 }', {
            fill: this.themeMode === 'dark' ? 0xdddddd : 0x333333,
            fill: tone.textPrimary,
            fontSize: 13,
            fontFamily: 'Microsoft YaHei',
            fontWeight: 'bold',
@@ -286,7 +289,7 @@
        this.app.stage.addChild(this.coordinatesText);
        this.rotationText = new PIXI.Text('ROTATION: 0°', {
            fill: this.themeMode === 'dark' ? 0xdddddd : 0x333333,
            fill: tone.textPrimary,
            fontSize: 13,
            fontFamily: 'Microsoft YaHei',
            fontWeight: 'bold',
@@ -310,8 +313,8 @@
        }
        const spacing = 30;
        const lineDefaultAlpha = .1;;
        const lineDefaultColor = 0x000000;
        const tone = getMapTone(this.themeMode);
        const { color: lineDefaultColor, alpha: lineDefaultAlpha } = tone.grid;
        for (let i = 0; i < this.app.view.width / spacing; i++) {
            const graphics = new PIXI.Graphics();
            graphics.lineStyle(1, lineDefaultColor, lineDefaultAlpha);
@@ -341,7 +344,8 @@
        }
    }
    showStarryBackground = (tint = 0x8395a7) => {
    showStarryBackground = (tint) => {
        const resolvedTint = tint ?? (this.themeMode === 'dark' ? 0x6f7d92 : 0x8395a7);
        if (!this.starryContainer) {
            this.starryContainer = generatePixiContainer('starryContainer');
            this.app.stage.addChild(this.starryContainer);
@@ -369,7 +373,7 @@
            };
            star.sprite.anchor.x = 0.5;
            star.sprite.anchor.y = 0.7;
            star.sprite.tint = tint; // filter
            star.sprite.tint = resolvedTint; // filter
            randomizeStar(star, true);
            this.starryContainer.addChild(star.sprite);
            stars.push(star);
@@ -449,20 +453,26 @@
    }
    setTheme = (themeMode) => {
        this.app.renderer.background.color = themeMode === 'dark' ? '#3a3f44' : '#f1f2f6';
        this.themeMode = themeMode;
        const tone = getMapTone(themeMode);
        this.app.renderer.background.color = tone.canvasBackground;
        if (this.coordinatesText) {
            this.coordinatesText.style.fill = themeMode === 'dark' ? 0xdddddd : 0x333333;
            this.coordinatesText.style.fill = tone.textPrimary;
        }
        if (this.rotationText) {
            this.rotationText.style.fill = themeMode === 'dark' ? 0xdddddd : 0x333333;
            this.rotationText.style.fill = tone.textPrimary;
        }
        if (this.gridLineContainer) {
            this.showGridLines();
        }
    }
}
const generateApp = (dom, themeMode) => {
    const tone = getMapTone(themeMode);
    const app = new PIXI.Application({
        background: themeMode === 'dark' ? '#3b4148' : '#f1f2f6',
        background: tone.canvasBackground,
        antialias: true,
        // resizeTo: dom,
    })
zy-acs-flow/src/map/tool.js
@@ -13,6 +13,7 @@
    POINT_ROUTE_DIRECTION,
    ANIMATE_DURING_TIME,
    AGV_ANGLE_OFFSET_VAL,
    ROUTE_COLORS,
} from './constants';
import { getRouteList, fetchAreaList } from './http';
import PointRoute from "./PointRoute";
@@ -140,7 +141,9 @@
    tintType[deviceType] != null && (sprite.tint = tintType[deviceType]);
    if (sprite && deviceType !== DEVICE_TYPE.AGV) {
        sprite.blendMode = PIXI.BLEND_MODES.MULTIPLY;
        sprite.blendMode = themeMode === 'dark'
            ? PIXI.BLEND_MODES.NORMAL
            : PIXI.BLEND_MODES.MULTIPLY;
    }
    return sprite;
}
@@ -932,8 +935,8 @@
    agvPath.name = agvPathName;
    agvPath.lineStyle(
        Math.max(200, 4 * (1 / mapContainer?.scale.x || 1)),
        themeMode === 'dark' ? 0x40739e : 0x2f68ac,
        0.8,
        ROUTE_COLORS[themeMode === 'dark' ? 'dark' : 'light'],
        themeMode === 'dark' ? 0.75 : 0.8,
    );
    agvPath.zIndex = DEVICE_Z_INDEX.DYNAMIC_ROUTE;
    // agvPath.blendMode = PIXI.BLEND_MODES.NORMAL;