Merge branch 'magic_wall_' into master_v2

# Conflicts:
#	src/components/FusionSettings/DensityCorrection.vue
#	src/components/FusionSettings/FourPointCalibration.vue
#	src/components/FusionSettings/SurfaceCorrection.vue
#	src/components/FusionSettingsDialog.vue
This commit is contained in:
miao 2023-03-09 16:10:43 +08:00
commit 1379a257c7
10 changed files with 120 additions and 91 deletions

View File

@ -73,11 +73,6 @@ module.exports = configure(function (ctx) {
https: false, https: false,
port: 8080, port: 8080,
open: true, // opens browser window automatically open: true, // opens browser window automatically
proxy: {
"/get_websocket_port": "http://192.168.2.102",
"/media_control_client_product.js": "http://192.168.2.102",
"/media_control_client_language.js": "http://192.168.2.102",
},
}, },
// https://v2.quasar.dev/quasar-cli/quasar-conf-js#Property%3A-framework // https://v2.quasar.dev/quasar-cli/quasar-conf-js#Property%3A-framework

View File

@ -119,7 +119,7 @@ export default defineComponent({
console.log(e); console.log(e);
} }
EventBus.getInstance().on(EventNamesDefine.CheckDebug2, () => { EventBus.getInstance().on(EventNamesDefine.CheckDebug, () => {
const to_normal_url = () => { const to_normal_url = () => {
const p1 = window.location.href.indexOf("?debug"); const p1 = window.location.href.indexOf("?debug");
const p2 = window.location.href.indexOf("#"); const p2 = window.location.href.indexOf("#");

View File

@ -1457,8 +1457,7 @@ export default class ClientConnection {
column: number, column: number,
location: number, location: number,
enable: boolean, enable: boolean,
width: number, width: number
auto_sync: boolean,
) { ) {
return await this.doRpc<Protocol.NoneResponse>( return await this.doRpc<Protocol.NoneResponse>(
new Protocol.SetBlendingOverlapRequestEntity( new Protocol.SetBlendingOverlapRequestEntity(
@ -1466,8 +1465,7 @@ export default class ClientConnection {
column, column,
location, location,
enable, enable,
width, width
auto_sync
) )
); );
} }

View File

@ -77,7 +77,7 @@
<q-form @submit="onSubmit"> <q-form @submit="onSubmit">
<q-card-section class="q-ma-none q-pa-sm"> <q-card-section class="q-ma-none q-pa-sm">
<div class="row"> <div class="row">
<div class="col-auto text-h6"> <div class="col-auto text-h5">
{{ $t("magic wall") }} {{ $t("magic wall") }}
</div> </div>
<q-space /> <q-space />
@ -107,12 +107,12 @@
<q-card class="my-card" flat bordered> <q-card class="my-card" flat bordered>
<q-card-section horizontal> <q-card-section horizontal>
<q-card-section class="col-3" style=""> <q-card-section class="col-3" style="">
<div class="text-h5">{{ $t("angle") }}</div> <div style="font-size: 1.2rem;">{{ $t("angle") }}</div>
<q-separator /> <q-separator />
<br /> <br />
<div class="row no-wrap items-center"> <div class="no-wrap items-center">
<q-item> <q-item class="row">
<q-item-section avatar> <q-item-section avatar class="">
<span class="q-mb-md" style="font-size: 1rem"> <span class="q-mb-md" style="font-size: 1rem">
angle:</span angle:</span
> >
@ -162,17 +162,17 @@
</q-item> </q-item>
</div> </div>
<br /> <br />
<div class="text-h5"> <div style="font-size: 1.2rem;">
{{ $t("physical central location") }} {{ $t("physical central location") }}
</div> </div>
<q-separator /> <q-separator />
<br /> <br />
<div class="row no-wrap items-center"> <div class=" no-wrap items-center">
<q-item> <q-item class="row ">
<q-item-section avatar> <q-item-section avatar class="col-2">
<span class="q-mb-md">X:</span> <span class="q-mb-md">X:</span>
</q-item-section> </q-item-section>
<q-item-section> <q-item-section class="col">
<q-input <q-input
v-if="current_index > -1" v-if="current_index > -1"
type="number" type="number"
@ -215,12 +215,12 @@
</div> </div>
<br /> <br />
<div class="row"> <div >
<q-item> <q-item class="row">
<q-item-section avatar> <q-item-section avatar class="col-2">
<span class="q-mb-md">Y:</span> <span class="q-mb-md">Y:</span>
</q-item-section> </q-item-section>
<q-item-section> <q-item-section class="col">
<q-input <q-input
v-if="current_index > -1" v-if="current_index > -1"
:hint="''" :hint="''"
@ -644,7 +644,7 @@
no-caps no-caps
:label="$t('revert')" :label="$t('revert')"
color="primary" color="primary"
@click="refresh_all" @click="back_all"
/> />
<q-btn <q-btn
ref="accept" ref="accept"
@ -963,7 +963,8 @@ export default defineComponent({
}); });
} }
}); });
$store.commit("setShowMonitorList", monitorList); // $store.commit("setShowMonitorList", monitorList);
// console.log($store.state.show_monitor_list)
} }
if (!setMagic?.success) { if (!setMagic?.success) {
$q.notify({ $q.notify({
@ -981,8 +982,10 @@ export default defineComponent({
if (wall_dom) { if (wall_dom) {
lcm.value = (wall_dom.offsetWidth * 0.5) / 1214; lcm.value = (wall_dom.offsetWidth * 0.5) / 1214;
test_monitor_list.value.forEach((ele) => { test_monitor_list.value.forEach((ele) => {
ele.cmw = Math.round(ele.w / lcm.value); ele.cmw = 1214;
ele.cmh = Math.round(ele.h / lcm.value); ele.cmh = 684;
ele.w = wall_dom.offsetWidth * 0.5;
ele.h = wall_dom.offsetHeight * 0.5;
}); });
} }
}; };
@ -995,7 +998,13 @@ export default defineComponent({
} }
}; };
const close_magic_switch = () => { const close_magic_switch = () => {
let client = GlobalData.getInstance().getCurrentClient();
magic_switch.value = false; magic_switch.value = false;
if(client){
client.setMagicWallList(
JSON.parse(JSON.stringify(test_monitor_list.value))
);
}
upload_magic_switch(); upload_magic_switch();
}; };
const radians = (item: test_monitor) => { const radians = (item: test_monitor) => {
@ -1100,7 +1109,7 @@ export default defineComponent({
const wall_dom = wall.value; const wall_dom = wall.value;
if (wall_dom) { if (wall_dom) {
const point_list = four_point(item); const point_list = four_point(item);
if (item.angle != 0 && point_list) { if (item && item.angle != 0 && point_list) {
let minx = 0; let minx = 0;
point_list.forEach((element) => { point_list.forEach((element) => {
if (minx > element.x) { if (minx > element.x) {
@ -1357,7 +1366,7 @@ export default defineComponent({
test_monitor_list.value[index].isactive = true; test_monitor_list.value[index].isactive = true;
}; };
let test_delete_flag = false; let test_delete_flag = false;
const refresh_all = () => { const back_all = () => {
refresh_resize(2); refresh_resize(2);
current_index.value = -1; current_index.value = -1;
monitor_list_current_index.value = -1; monitor_list_current_index.value = -1;
@ -1365,7 +1374,14 @@ export default defineComponent({
multiple_select.value = []; multiple_select.value = [];
multiple.value = false; multiple.value = false;
loading.value = false; loading.value = false;
test_monitor_list.value = JSON.parse(list_magic); if (list_magic) {
JSON.parse(list_magic).forEach((element:any,index:number) => {
if(test_monitor_list.value[index].uuid==element.uuid){
test_monitor_list.value[index].cmw=element.cmw
test_monitor_list.value[index].cmh=element.cmh
}
});;
}
realtime_upload(last_wall.value, last_percenter.value, 2); realtime_upload(last_wall.value, last_percenter.value, 2);
}; };
let sort_index: any = ref([]); let sort_index: any = ref([]);
@ -1461,8 +1477,8 @@ export default defineComponent({
}); });
} }
test_monitor_list.value.forEach((ele) => { test_monitor_list.value.forEach((ele) => {
ele.isHide = false; ele.isHide = false;
}); });
const wall_dom = wall.value; const wall_dom = wall.value;
if (a && wall_dom) { if (a && wall_dom) {
test_monitor_wall.value = []; test_monitor_wall.value = [];
@ -1500,9 +1516,6 @@ export default defineComponent({
}); });
} }
if (a.length == 0) { if (a.length == 0) {
test_monitor_list.value.forEach((ele) => {
ele.isHide = false;
});
test_monitor_wall.value = []; test_monitor_wall.value = [];
} }
}; };
@ -1642,11 +1655,9 @@ export default defineComponent({
realtime_upload(); realtime_upload();
}; };
let list_magic: any = []; let list_magic: any = [];
const detect=(list:any)=>{ const detect = (list: any) => {
list.forEach((ele:any)=>{ list.forEach((ele: any) => {});
};
})
}
EventBus.getInstance().on( EventBus.getInstance().on(
EventNamesDefine.NotifyMessage, EventNamesDefine.NotifyMessage,
(notify: NotifyMessage) => { (notify: NotifyMessage) => {
@ -1689,7 +1700,7 @@ export default defineComponent({
upload_magic_switch, upload_magic_switch,
magic_switch, magic_switch,
magic_isbutton, magic_isbutton,
refresh_all, back_all,
getpx, getpx,
lcm, lcm,
model, model,
@ -1742,18 +1753,14 @@ export default defineComponent({
const SetMagicWallGridState = await client.setMagicWallGridState( const SetMagicWallGridState = await client.setMagicWallGridState(
magic_switch.value magic_switch.value
); );
list_magic = (await client.getApplicationSettins())?.config
?.magic_list;
if (list_magic) {
test_monitor_list.value = JSON.parse(list_magic);
}
if (wall_dom) { if (wall_dom) {
offsetHeight.value = wall_dom.offsetHeight; offsetHeight.value = wall_dom.offsetHeight;
offsetWidth.value = wall_dom.offsetWidth; offsetWidth.value = wall_dom.offsetWidth;
getpx(); getpx();
} }
test_monitor_list.value.forEach((element) => { test_monitor_list.value.forEach((element) => {
element.isHide = false; element.isHide = false;
}); });
if (response && settings) { if (response && settings) {
const a = response?.config.windows; const a = response?.config.windows;
@ -1772,6 +1779,14 @@ export default defineComponent({
} }
getpx(); getpx();
} }
list_magic = (await client.getApplicationSettins())?.config
?.magic_list;
if (list_magic) {
test_monitor_list.value = JSON.parse(list_magic);
}
test_monitor_list.value.forEach((element) => {
element.isHide = false;
});
if ( if (
output_length.value != output_length.value !=
response.config.col * response.config.row response.config.col * response.config.row
@ -1786,7 +1801,7 @@ export default defineComponent({
$store.commit("setShowMonitorList", []); $store.commit("setShowMonitorList", []);
loading.value = false; loading.value = false;
} else if (a && wall_dom) { } else if (a && wall_dom) {
a.forEach((element) => { a.forEach((element) => {
let item: test_monitor = new test_monitor(0, "0", 0, 0, 0); let item: test_monitor = new test_monitor(0, "0", 0, 0, 0);
extend(true, item, test_monitor_list.value[element.index]); extend(true, item, test_monitor_list.value[element.index]);
@ -1995,6 +2010,16 @@ export default defineComponent({
const wall_dom = wall.value; const wall_dom = wall.value;
item.isShow = true; item.isShow = true;
if (wall_dom) { if (wall_dom) {
if(item.cmw==1214){
item.w=wall_dom.offsetWidth*0.5
}else{
item.w=(item.cmw/1214) *(wall_dom.offsetWidth*0.5)
}
if(item.cmh==684){
item.h=wall_dom.offsetHeight*0.5
}else{
item.h=(item.cmh/684) *(wall_dom.offsetHeight*0.5)
}
item.InitialH = item.h; item.InitialH = item.h;
item.InitialW = item.w; item.InitialW = item.w;
item.resizew = item.w / wall_dom.offsetWidth; item.resizew = item.w / wall_dom.offsetWidth;
@ -2037,7 +2062,6 @@ export default defineComponent({
} }
} }
}, },
onDragEnter(e: DragEvent, index: string) { onDragEnter(e: DragEvent, index: string) {
e.stopPropagation(); e.stopPropagation();
let target: HTMLElement | null = e.target as HTMLElement; let target: HTMLElement | null = e.target as HTMLElement;
@ -2208,12 +2232,22 @@ export default defineComponent({
}, },
changewidth() { changewidth() {
const wall_dom = wall.value;
let item = test_monitor_list.value[monitor_list_current_index.value]; let item = test_monitor_list.value[monitor_list_current_index.value];
item.w = Number(item.cmw) * lcm.value; // if (wall_dom) {
// if(item.cmw==1214){
// item.w = 0.5 * wall_dom.offsetWidth;
// }
// }
}, },
changeHeight() { changeHeight() {
const wall_dom = wall.value;
let item = test_monitor_list.value[monitor_list_current_index.value]; let item = test_monitor_list.value[monitor_list_current_index.value];
item.h = item.cmh * lcm.value; // if (wall_dom) {
// if(item.cmh==684){
// item.h = 0.5 * wall_dom?.offsetHeight;
// }
// }
}, },
alignTop() { alignTop() {
let item = test_monitor_wall.value[multiple_select.value[0]]; let item = test_monitor_wall.value[multiple_select.value[0]];
@ -2223,7 +2257,7 @@ export default defineComponent({
tep_item.currenty = item.currenty; tep_item.currenty = item.currenty;
} }
}); });
multiple_select.value=[] multiple_select.value = [];
realtime_upload(); realtime_upload();
}, },
alignBottom() { alignBottom() {
@ -2234,7 +2268,7 @@ export default defineComponent({
tep_item.currenty = item.currenty + item.h - tep_item.h; tep_item.currenty = item.currenty + item.h - tep_item.h;
} }
}); });
multiple_select.value=[] multiple_select.value = [];
realtime_upload(); realtime_upload();
}, },
alignRight() { alignRight() {
@ -2245,7 +2279,7 @@ export default defineComponent({
tep_item.currentx = item.currentx + item.w - tep_item.w; tep_item.currentx = item.currentx + item.w - tep_item.w;
} }
}); });
multiple_select.value=[] multiple_select.value = [];
realtime_upload(); realtime_upload();
}, },
alignLeft() { alignLeft() {
@ -2256,7 +2290,7 @@ export default defineComponent({
tep_item.currentx = item.currentx; tep_item.currentx = item.currentx;
} }
}); });
multiple_select.value=[] multiple_select.value = [];
realtime_upload(); realtime_upload();
}, },
testLog(a: any) { testLog(a: any) {

View File

@ -4,8 +4,8 @@
<div class="row"> <div class="row">
<div class="col-12"> <div class="col-12">
<div class="row"> <div class="row">
<div class="col-4 col-sm-3"></div> <div class="col-4"></div>
<div class="col-4 col-sm-6 q-pt-sm"><q-select outlined v-model="model[0]" <div class="col-4 q-pt-sm"><q-select outlined v-model="model[0]"
@update:model-value="update_row_col(0, model[0])" :options="options" :dense="true" :options-dense="true" @update:model-value="update_row_col(0, model[0])" :options="options" :dense="true" :options-dense="true"
:label="$t('wall row')" /> </div><q-checkbox @update:model-value="send_off(0)" :label="$t('wall row')" /> </div><q-checkbox @update:model-value="send_off(0)"
v-model="RowsColumns[0]" /> v-model="RowsColumns[0]" />
@ -13,8 +13,8 @@
</div> </div>
<div class="col-12"> <div class="col-12">
<div class="row"> <div class="row">
<div class="col-4 col-sm-3"></div> <div class="col-4"></div>
<div class="col-4 col-sm-6 q-pt-sm"><q-select outlined v-model="model[1]" <div class="col-4 q-pt-sm"><q-select outlined v-model="model[1]"
@update:model-value="update_row_col(1, model[1])" :options="options" :dense="true" :options-dense="true" @update:model-value="update_row_col(1, model[1])" :options="options" :dense="true" :options-dense="true"
:label="$t('wall col')" /> </div><q-checkbox @update:model-value="send_off(1)" :label="$t('wall col')" /> </div><q-checkbox @update:model-value="send_off(1)"
v-model="RowsColumns[1]" /> v-model="RowsColumns[1]" />
@ -22,16 +22,16 @@
</div> </div>
<div class="col-12"> <div class="col-12">
<div class="row"> <div class="row">
<div class="col-4 col-sm-3"></div> <div class="col-4"></div>
<div class="col-4 col-sm-6 q-pt-sm"><q-select outlined v-model="model[2]" <div class="col-4 q-pt-sm"><q-select outlined v-model="model[2]"
@update:model-value="update_row_col(2, model[2])" :options="line_width_options" :dense="true" :options-dense="true" @update:model-value="update_row_col(2, model[2])" :options="line_width_options" :dense="true" :options-dense="true"
:label="$t('line width')" /> </div> :label="$t('line width')" /> </div>
</div> </div>
</div> </div>
<div class="col-12"> <div class="col-12">
<div class="row" style="min-height: 40px;"> <div class="row" style="min-height: 40px;">
<div class="col-4 col-sm-3"></div> <div class="col-4"></div>
<div class="col-4 col-sm-6 q-pt-sm"> <div class="col-4 q-pt-sm">
<q-item> <q-item>
<q-item-section avatar class="head_1"> <q-item-section avatar class="head_1">
{{ $t("line color") }} {{ $t("line color") }}
@ -51,11 +51,33 @@
</div> </div>
</div> </div>
</div> </div>
<div class="col-12"> <div class="col-12">
<div class="row" style="min-height: 40px;"> <div class="row" style="min-height: 40px;">
<div class="col-4 col-sm-3"></div> <div class="col-4"></div>
<div class="col-4 col-sm-6 q-pt-sm"> <div class="col-4 q-pt-sm">
<q-item>
<q-item-section avatar class="head_1">
{{ $t("background color") }}
</q-item-section>
<q-item-section>
<q-input v-model="color[1]" :rules="['anyColor']">
<template v-slot:append>
<q-icon name="colorize" class="cursor-pointer" @click="index = 1">
<q-popup-proxy cover transition-show="scale" transition-hide="scale">
<q-color v-model="color[1]" @change="submit" />
</q-popup-proxy>
</q-icon>
</template>
</q-input>
</q-item-section>
</q-item>
</div>
</div>
</div>
<div class="col-12">
<div class="row" style="min-height: 40px;">
<div class="col-4"></div>
<div class="col-4 q-pt-sm">
<q-item> <q-item>
<q-item-section avatar class="head_1"> <q-item-section avatar class="head_1">
{{ $t("center circle color") }} {{ $t("center circle color") }}

View File

@ -3460,7 +3460,6 @@ export namespace Protocol {
location: number, location: number,
enable: boolean, enable: boolean,
width: number, width: number,
auto_sync:boolean,
rpc_id = 0 rpc_id = 0
) { ) {
super(); super();
@ -3473,15 +3472,12 @@ export namespace Protocol {
this.location = location ?? 0; this.location = location ?? 0;
this.enable = enable ?? false; this.enable = enable ?? false;
this.width = width ?? 0; this.width = width ?? 0;
this.auto_sync = auto_sync ?? false;
} }
row = 0; row = 0;
column = 0; column = 0;
location = 0; //0左融合带1上融合带2右融合带3下融合带 location = 0; //0左融合带1上融合带2右融合带3下融合带
enable = false; enable = false;
width = 0; width = 0;
auto_sync=false;
} }
export class GetBlendingConfigResponseEntity extends PacketEntity { export class GetBlendingConfigResponseEntity extends PacketEntity {

View File

@ -417,7 +417,7 @@ export default {
FourPointCalibration: "Four Pint Calibration", FourPointCalibration: "Four Pint Calibration",
SurfaceCorrection: "Surface Correction", SurfaceCorrection: "Surface Correction",
DensityCorrection: "Density Correction", DensityCorrection: "Density Correction",
GridSettings: "Auxiliary Settings", GridSettings: "Grid Settings",
point: "dot", point: "dot",
reset: "reset", reset: "reset",
"upper fusion zone parameters": "Upper Fusion Zone Parameters", "upper fusion zone parameters": "Upper Fusion Zone Parameters",
@ -509,9 +509,5 @@ export default {
"Whether to change the projector layout to", "Whether to change the projector layout to",
"after upgrade, please clear browser cache Or refresh hard (Ctrl/Shift + F5 Or Ctrl + Shift + R)": "after upgrade, please clear browser cache Or refresh hard (Ctrl/Shift + F5 Or Ctrl + Shift + R)":
"After Upgrade, Please Clear Browser Cache Or Refresh Hard (Ctrl/Shift + F5 Or Ctrl + Shift + R)", "After Upgrade, Please Clear Browser Cache Or Refresh Hard (Ctrl/Shift + F5 Or Ctrl + Shift + R)",
"fusion zone":"fusion zone", "fusion zone":"fusion zone"
"up":"up",
"left":"left",
"right":"right",
"down":"down"
}; };

View File

@ -686,7 +686,7 @@ export default {
FourPointCalibration: "四点校正", FourPointCalibration: "四点校正",
SurfaceCorrection: "曲面校正", SurfaceCorrection: "曲面校正",
DensityCorrection: "疏密校正", DensityCorrection: "疏密校正",
GridSettings: "辅助设置", GridSettings: "网格设置",
point: "点", point: "点",
reset: "重置", reset: "重置",
"upper fusion zone parameters": "上融合带参数", "upper fusion zone parameters": "上融合带参数",
@ -776,9 +776,5 @@ export default {
"Whether to change the projector layout to": "是否更改投影机布局为", "Whether to change the projector layout to": "是否更改投影机布局为",
"after upgrade, please clear browser cache Or refresh hard (Ctrl/Shift + F5 Or Ctrl + Shift + R)": "after upgrade, please clear browser cache Or refresh hard (Ctrl/Shift + F5 Or Ctrl + Shift + R)":
"升级完成后请清空浏览器缓存或者进行硬刷新(Ctrl/Shift + F5 或者 CTRL + SHIFT + R)", "升级完成后请清空浏览器缓存或者进行硬刷新(Ctrl/Shift + F5 或者 CTRL + SHIFT + R)",
"fusion zone":"融合带", "fusion zone":"融合带"
"up":"上",
"left":"左",
"right":"右",
"down":"下"
}; };

View File

@ -314,10 +314,6 @@ export default defineComponent({
} }
); );
const getconfig = () => { const getconfig = () => {
set?.SetBlendingOption("blending_grids_select_ui", '4')
set?.SetBlendingOption('blending_grids_select_projector',"0-0");
set?.SetBlendingOption("blending_grids_select_point", `4:1`)
set?.SetBlendingOption("blending_grids_show", "1");
try { try {
set?.GetBlendingConfig("").then((res) => { set?.GetBlendingConfig("").then((res) => {
let tmp = JSON.parse(res ? res.config : ""); let tmp = JSON.parse(res ? res.config : "");

View File

@ -653,10 +653,6 @@ export default defineComponent({
return "rotate " + sulv + "s linear infinite"; return "rotate " + sulv + "s linear infinite";
}); });
const getconfig = () => { const getconfig = () => {
set?.SetBlendingOption("blending_grids_select_ui", '4')
set?.SetBlendingOption('blending_grids_select_projector',"0-0");
set?.SetBlendingOption("blending_grids_select_point", `4:1`)
set?.SetBlendingOption("blending_grids_show", "1");
try { try {
set?.GetBlendingConfig("").then((res) => {}); set?.GetBlendingConfig("").then((res) => {});
set?.GetBlendingConfig("").then((res) => { set?.GetBlendingConfig("").then((res) => {