修改图幅

This commit is contained in:
2025-09-28 16:03:15 +08:00
parent 104d3e2c25
commit c255dea738
123 changed files with 6993 additions and 216 deletions

File diff suppressed because one or more lines are too long

View File

@ -753,13 +753,15 @@
}
.YJ-custom-base-dialog>.content input[type=number] {
/* padding: 0 16px 0 10px; */
/* padding: 0 16px 0 10px;
font-weight: 700;
font-family: 'D-Din-Bold';
font-size: 18px;
font-size: 18px; */
font-size: 12px;
font-weight: 400;
letter-spacing: 0px;
line-height: 24px;
color: #ffffff;
color: rgba(204, 204, 204, 1);
text-align: left;
vertical-align: top;
}
@ -2210,7 +2212,6 @@
.YJ-custom-base-dialog.cut-fill>.content>div .div-item:last-child .row .unit {
margin-left: 5px;
}
.YJ-custom-base-dialog.cut-fill>.content .firstTip {
position: absolute;
left: 340px;
@ -2275,7 +2276,6 @@
flex: 0 0 60px;
justify-content: center;
}
.YJ-custom-base-dialog.submerge>.content .rangeWords {
font-size: 14px;
font-weight: 500;
@ -2437,7 +2437,6 @@
.YJ-custom-base-dialog.circle-view-shed>.content {
width: 290px;
}
.YJ-custom-base-dialog.circle-view-shed>.content .firstTip {
font-size: 14px;
font-weight: 700;
@ -3186,7 +3185,7 @@
}
/* 文本框 */
.popup-textarea {
.popup-textarea{
/* width: 212px; */
width: 161px;
/* height: 154px; */
@ -3199,30 +3198,28 @@
background-size: 100% 100%;
padding: 5px 5px 0px 5px;
}
.popup-textarea textarea {
.popup-textarea textarea{
width: 158px;
height: 95px;
background-color: unset !important;
border: unset !important;
background-color: unset!important;
border: unset!important;
color: #fff;
}
.popup-textarea textarea::-webkit-scrollbar {
width: 8px !important;
width: 8px!important;
/* height: 8px!important; */
}
.popup-textarea textarea::-webkit-scrollbar-thumb {
border-radius: 5px !important;
-webkit-box-shadow: inset 0 0 5px rgba(0, 0, 0, 0.2) !important;
background-color: rgba(var(--color-sdk-base-rgb)) !important;
border-radius: 5px!important;
-webkit-box-shadow: inset 0 0 5px rgba(0, 0, 0, 0.2)!important;
background-color: rgba(var(--color-sdk-base-rgb))!important;
}
.popup-textarea textarea::-webkit-scrollbar-track {
-webkit-box-shadow: inset 0 0 5px rgba(0, 0, 0, 0.2) !important;
border-radius: 5px !important;
background-color: rgba(var(--color-sdk-base-rgb), 0.1) !important;
-webkit-box-shadow: inset 0 0 5px rgba(0, 0, 0, 0.2)!important;
border-radius: 5px!important;
background-color: rgba(var(--color-sdk-base-rgb), 0.1)!important;
}
/* 贴地图片 */
@ -3814,16 +3811,12 @@
border: 1px solid rgba(var(--color-sdk-base-rgb), 0.5);
border-right: none;
}
.billboard-attribute-box .table .tr .th,
.billboard-attribute-box .table .tr .td {
.billboard-attribute-box .table .tr .th, .billboard-attribute-box .table .tr .td {
border-right: 1px solid rgba(var(--color-sdk-base-rgb), 0.5);
display: flex;
justify-content: center;
}
.billboard-attribute-box .table .tr .th:last-child,
.billboard-attribute-box .table .tr .td:last-child {
.billboard-attribute-box .table .tr .th:last-child, .billboard-attribute-box .table .tr .td:last-child {
border-right: none;
}
@ -3872,7 +3865,6 @@
background-color: #f0f9eb;
color: rgb(82, 196, 26);
}
#YJ-custom-message.warning {
background-color: #fdf6ec;
color: #e6a23c;
@ -3897,8 +3889,8 @@
.yj-custom-icon {
display: inline-block;
width: 40px;
height: 20px;
width: 22px;
height: 10px;
margin-right: 5px;
}
@ -3972,33 +3964,3 @@
background: url(../../img/arrow/6.png) 100% 100% no-repeat;
background-size: 100% 100%;
}
.yj-custom-icon.icon-wall {
background: url(../img/icon-wall.png) 100% 100% no-repeat;
background-size: 100% 100%;
}
.yj-custom-icon.icon-wall-gradient {
background: url(../img/icon-wall-gradient.png) 100% 100% no-repeat;
background-size: 100% 100%;
}
.yj-custom-icon.icon-wall-arrow {
background: url(../../img/material/arrow.png) 100% 100% no-repeat;
background-size: 100% 100%;
}
.yj-custom-icon.icon-wall-warn {
background: url(../../img/material/warn.png) 100% 100% no-repeat;
background-size: 100% 100%;
}
.yj-custom-icon.icon-wall-brick1 {
background: url(../../img/material/brick1.png) 100% 100% no-repeat;
background-size: 100% 100%;
}
.yj-custom-icon.icon-wall-brick2 {
background: url(../../img/material/brick2.png) 100% 100% no-repeat;
background-size: 100% 100%;
}
.yj-custom-icon.icon-wall-brick3 {
background: url(../../img/material/brick3.png) 100% 100% no-repeat;
background-size: 100% 100%;
}

View File

@ -75,6 +75,12 @@ export const TreeApi = {
url: `/yjearth4/api/v1/source/show`,
data
})
},
// 设置默认数据
getTreeDefault: async () => {
return await request.get({
url: `/source/default`
})
}
}

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 16 KiB

View File

@ -0,0 +1 @@
<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1745305628602" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="9899" xmlns:xlink="http://www.w3.org/1999/xlink"><path d="M512 29.2864L664.6784 512 512 994.7136 359.3216 512z" fill="#1165db" p-id="9900" data-spm-anchor-id="a313x.search_index.0.i38.71973a818g0gjA" class="selected"></path><path d="M512 17.578667L664.6784 512h-305.3568z" fill="#FF0000" p-id="9901"></path></svg>

After

Width:  |  Height:  |  Size: 563 B

View File

@ -0,0 +1 @@
<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1745305942074" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="21759" xmlns:xlink="http://www.w3.org/1999/xlink"><path d="M512 259.2A252.8 252.8 0 1 1 259.2 512 252.8 252.8 0 0 1 512 259.2m0-3.2a256 256 0 1 0 256 256 256 256 0 0 0-256-256zM510.4 128h3.2v32h-3.2zM412.864 141.632L416 140.8l8.32 31.04-3.104 0.832zM318.496 180.096l2.784-1.6 16 27.712-2.784 1.6zM239.392 241.664l2.24-2.24 22.656 22.592-2.24 2.24zM178.528 321.536l1.6-2.784 27.712 16-1.6 2.784zM140.672 414.24l0.832-3.072 30.912 8.288-0.832 3.072zM128 513.6v-3.2h32v3.2zM141.696 612.864l-0.832-3.104 30.912-8.256 0.832 3.072zM180.416 705.536l-1.6-2.784 27.712-16 1.6 2.784zM241.6 784.672l-2.272-2.24 22.624-22.624 2.24 2.24zM321.504 845.472l-2.784-1.6 16-27.712 2.784 1.6zM414.4 883.2l-3.104-0.832 8.256-30.912 3.104 0.832zM513.6 896h-3.2v-32h3.2zM612.736 882.432l-3.104 0.832-8.288-30.912 3.104-0.832zM705.504 843.872l-2.752 1.6-16-27.712 2.752-1.6zM784.768 782.336l-2.24 2.24-22.656-22.592 2.24-2.24zM842.496 705.824l-1.6 2.784-27.84-16 1.6-2.784zM883.072 609.76l-0.832 3.104-30.912-8.32 0.832-3.072zM896 510.4v3.2h-32v-3.2zM882.56 411.136l0.832 3.104-30.912 8.288-0.832-3.104zM843.872 318.528l1.6 2.752-27.712 16-1.6-2.752zM782.272 239.328l2.24 2.24-22.624 22.624-2.24-2.24zM705.248 179.2l2.784 1.6-16 27.84-2.784-1.6zM609.888 140.8l3.072 0.832-8.256 30.912-3.104-0.832z" p-id="21760" fill="#0889f8"></path><path d="M559.68 91.84H544L512 44.8a46.08 46.08 0 0 1-3.52-6.08 110.08 110.08 0 0 1 0 11.52v41.6h-14.4V19.2H512l29.76 44.8 2.24 6.4a59.2 59.2 0 0 1 0-9.92V19.2h14.72z" p-id="21761" fill="#0889f8"></path><path d="M112 467.2L96 539.84h-16.96l-11.2-47.36a34.24 34.24 0 0 1 0-8 49.92 49.92 0 0 1 0 8l-11.52 47.36h-16L20.48 467.2h15.36l9.6 48.96a32 32 0 0 1 0 8.32v-8.32l12.16-48.96h15.04l10.88 49.6a24.96 24.96 0 0 1 0 7.68 32 32 0 0 1 0-8l9.6-49.28z" p-id="21762" fill="#0889f8"></path><path d="M503.68 985.28a28.8 28.8 0 0 0 19.84 7.36 15.04 15.04 0 0 0 9.6-2.24 6.08 6.08 0 0 0 3.2-5.44 9.28 9.28 0 0 0-2.56-5.76 47.68 47.68 0 0 0-13.12-7.04q-17.28-7.04-17.28-21.12a18.56 18.56 0 0 1 7.68-15.68 36.16 36.16 0 0 1 20.48-5.44 57.28 57.28 0 0 1 17.92 2.56v14.72a28.16 28.16 0 0 0-16.96-5.12 16 16 0 0 0-9.28 2.24 6.4 6.4 0 0 0-3.52 5.44 8 8 0 0 0 2.56 5.44 47.36 47.36 0 0 0 11.52 6.08 37.76 37.76 0 0 1 14.72 9.92 18.88 18.88 0 0 1 4.16 12.48 18.56 18.56 0 0 1-7.36 15.68 34.56 34.56 0 0 1-21.12 5.44 47.68 47.68 0 0 1-20.48-3.84z" p-id="21763" fill="#0889f8"></path><path d="M1003.52 539.84h-50.24V467.2h48.32v12.8h-30.4v17.28h28.16v12.48h-28.16v17.6h32z" p-id="21764" fill="#0889f8"></path><path d="M468.48 491.84a48 48 0 0 1 91.52 20.16h74.24L512 160l-122.24 352h74.24a46.08 46.08 0 0 1 4.48-20.16z" p-id="21765" fill="#0889f8"></path><path d="M560 512a46.08 46.08 0 0 1-4.48 20.16A48 48 0 0 1 464 512h-74.24L512 864l122.24-352z" p-id="21766" fill="#0889f8"></path></svg>

After

Width:  |  Height:  |  Size: 3.0 KiB

View File

@ -0,0 +1 @@
<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1745304821529" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="6363" xmlns:xlink="http://www.w3.org/1999/xlink"><path d="M512 0v768L179.2 1024z" fill="#FF2424" p-id="6364"></path><path d="M512 0v768l332.8 256z" fill="#FFA7A7" p-id="6365"></path></svg>

After

Width:  |  Height:  |  Size: 438 B

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,4 @@
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="2554" height="163.5" viewBox="0 0 2554 163.5" fill="none">
<path d="M0 1L48 1L48 113L108 113L108 88L72 88L72 0L235.5 0L235.5 113.5L295 113.5L295 87.5L256.5 87.5L256.5 0L417.5 0L417.5 113L478.5 113L478.5 88L444.5 88L444.5 0L603 0L603 113.5L663 113.5L663 85L623.5 85L623.5 0L787 0L787 113L844 113L844 88L811.5 88L811.5 0L970 0L970 113.5L1031 113.5L1031 85L994 85L994 0L1153.5 0L1153.5 113L1214.5 113L1214.5 88L1179 88L1179 0L1343 0L1343 113.5L1400 113.5L1400 85L1363.5 85L1363.5 0L1522.5 0L1522.5 113L1582 113L1582 88L1551 88L1551 0L1710.5 0L1710.5 113.5L1769.5 113.5L1769.5 85L1732.5 85L1732.5 0L1890.5 0L1890.5 113L1950.5 113L1950.5 88L1917.5 88L1917.5 0L2079.5 0L2079.5 113.5L2138 113.5L2138 85L2101 85L2101 0L2261.5 0L2261.5 113L2319.5 113L2319.5 88L2285.5 88L2285.5 0L2448 0L2448 113.5L2507.5 113.5L2507.5 85L2469.5 85L2469.5 0L2554 0L2554 13L2482.5 13L2482.5 72L2507.5 72L2507.5 35L2554 35L2554 48L2520.5 48L2520.5 72L2554 72L2554 163.5L2391.5 163.5L2391.5 49L2332.5 49L2332.5 75L2376 75L2376 162.5L2211.5 162.5L2211.5 48L2151 48L2151 72L2187 72L2187 163.5L2023.5 163.5L2023.5 50.5L1963.5 50.5L1963.5 75L2005.5 75L2005.5 162.5L1843.5 162.5L1843.5 48L1782.5 48L1782.5 72L1819.5 72L1819.5 163.5L1655.5 163.5L1655.5 50.5L1595 50.5L1595 75L1634.5 75L1634.5 162.5L1474 162.5L1474 48L1413 48L1413 72L1450.5 72L1450.5 163.5L1287.5 163.5L1287.5 50.5L1227.5 50.5L1227.5 75L1266 75L1266 162.5L1105 162.5L1105 48L1044 48L1044 72L1080 72L1080 163.5L920 163.5L920 50L857 50L857 75L898.5 75L898.5 162.5L738.5 162.5L738.5 48L676 48L676 72L713.5 72L713.5 163.5L550.5 163.5L550.5 50L491.5 50L491.5 75L529.5 75L529.5 162.5L365.5 162.5L365.5 48L308 48L308 74.5L343 74.5L343 162L181 162L181 50L121 50L121 75L163.5 75L163.5 162.5L0 162.5L0 36.5L13 36.5L13 149.5L150.5 149.5L150.5 88L121 88L121 126L35 126L35 14L0 14L0 1ZM108 75L108 37L194 37L194 149L330 149L330 87.5L308 87.5L308 126.5L222.5 126.5L222.5 13L85 13L85 75L108 75ZM295 74.5L295 35L378.5 35L378.5 149.5L516.5 149.5L516.5 88L491.5 88L491.5 126L404.5 126L404.5 13L269.5 13L269.5 74.5L295 74.5ZM478.5 75L478.5 37L563.5 37L563.5 150.5L700.5 150.5L700.5 85L676 85L676 126.5L590 126.5L590 13L457.5 13L457.5 75L478.5 75ZM663 72L663 35L751.5 35L751.5 149.5L885.5 149.5L885.5 88L857 88L857 126L774 126L774 13L636.5 13L636.5 72L663 72ZM844 75L844 37L933 37L933 150.5L1067 150.5L1067 85L1044 85L1044 126.5L957 126.5L957 13L824.5 13L824.5 75L844 75ZM1031 72L1031 35L1118 35L1118 149.5L1253 149.5L1253 88L1227.5 88L1227.5 126L1140.5 126L1140.5 13L1007 13L1007 72L1031 72ZM1214.5 75L1214.5 37.5L1300.5 37.5L1300.5 150.5L1437.5 150.5L1437.5 85L1413 85L1413 126.5L1330 126.5L1330 13L1192 13L1192 75L1214.5 75ZM1400 72L1400 35L1487 35L1487 149.5L1621.5 149.5L1621.5 88L1595 88L1595 126L1509.5 126L1509.5 13L1376.5 13L1376.5 72L1400 72ZM1582 75L1582 37.5L1668.5 37.5L1668.5 150.5L1806.5 150.5L1806.5 85L1782.5 85L1782.5 126.5L1697.5 126.5L1697.5 13L1564 13L1564 75L1582 75ZM1769.5 72L1769.5 35L1856.5 35L1856.5 149.5L1992.5 149.5L1992.5 88L1963.5 88L1963.5 126L1877.5 126L1877.5 13L1745.5 13L1745.5 72L1769.5 72ZM1950.5 75L1950.5 37.5L2036.5 37.5L2036.5 150.5L2174 150.5L2174 85L2151 85L2151 126.5L2066.5 126.5L2066.5 13L1930.5 13L1930.5 75L1950.5 75ZM2138 72L2138 35L2224.5 35L2224.5 149.5L2363 149.5L2363 88L2332.5 88L2332.5 126L2248.5 126L2248.5 13L2114 13L2114 72L2138 72ZM2319.5 75L2319.5 36L2404.5 36L2404.5 150.5L2541 150.5L2541 85L2520.5 85L2520.5 126.5L2435 126.5L2435 13L2298.5 13L2298.5 75L2319.5 75Z" fill-rule="evenodd" fill="#ffffff" >
</path>
</svg>

After

Width:  |  Height:  |  Size: 3.5 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 6.0 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 8.7 KiB

View File

@ -0,0 +1,4 @@
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="2550" height="163" viewBox="0 0 2550 163" fill="none">
<path d="M0 0L2550 0L2550 15L0 15L0 0ZM0 124L0 33.5L92.5 33.5L92.5 87.5L49.5 87.5L49.5 117.5L112.5 117.5L112.5 33.5L202.5 33.5L202.5 87.5L157 87.5L157 117.5L224 117.5L224 33.5L311 33.5L311 87.5L266 87.5L266 117.5L333 117.5L333 33.5L420.5 33.5L420.5 87.5L374.5 87.5L374.5 117.5L443.5 117.5L443.5 33.5L529 33.5L529 87.5L485.5 87.5L485.5 117.5L551.5 117.5L551.5 33.5L639.5 33.5L639.5 87.5L596 87.5L596 117.5L664 117.5L664 33.5L750.5 33.5L750.5 87.5L707 87.5L707 117.5L773.5 117.5L773.5 33.5L862.5 33.5L862.5 87.5L816.5 87.5L816.5 117.5L883.5 117.5L883.5 33.5L971 33.5L971 87.5L925.5 87.5L925.5 117.5L995 117.5L995 33.5L1081.5 33.5L1081.5 87.5L1037.5 87.5L1037.5 117.5L1105 117.5L1105 33.5L1189 33.5L1189 87.5L1146.5 87.5L1146.5 117.5L1213 117.5L1213 33.5L1301.5 33.5L1301.5 87.5L1255 87.5L1255 117.5L1322 117.5L1322 33.5L1411.5 33.5L1411.5 87.5L1365 87.5L1365 117.5L1434.5 117.5L1434.5 33.5L1523 33.5L1523 87.5L1477.5 87.5L1477.5 117.5L1546 117.5L1546 33.5L1627 33.5L1627 87.5L1586 87.5L1586 117.5L1656 117.5L1656 33.5L1744 33.5L1744 87.5L1697.5 87.5L1697.5 117.5L1765 117.5L1765 33.5L1851.5 33.5L1851.5 87.5L1808 87.5L1808 117.5L1874 117.5L1874 33.5L1962.5 33.5L1962.5 87.5L1916 87.5L1916 117.5L1987.5 117.5L1987.5 33.5L2070.5 33.5L2070.5 87.5L2028 87.5L2028 117.5L2096 117.5L2096 33.5L2180.5 33.5L2180.5 87.5L2138 87.5L2138 117.5L2204.5 117.5L2204.5 33.5L2293 33.5L2293 87.5L2247.5 87.5L2247.5 117.5L2315.5 117.5L2315.5 33.5L2402.5 33.5L2402.5 87.5L2356.5 87.5L2356.5 117.5L2425.5 117.5L2425.5 33.5L2513 33.5L2513 87.5L2469 87.5L2469 117.5L2537 117.5L2537 40L2550 40L2550 130.5L2456 130.5L2456 74.5L2500 74.5L2500 46.5L2438.5 46.5L2438.5 130.5L2343.5 130.5L2343.5 74.5L2389.5 74.5L2389.5 46.5L2328.5 46.5L2328.5 130.5L2234.5 130.5L2234.5 74.5L2280 74.5L2280 46.5L2217.5 46.5L2217.5 130.5L2125 130.5L2125 74.5L2167.5 74.5L2167.5 46.5L2109 46.5L2109 130.5L2015 130.5L2015 74.5L2057.5 74.5L2057.5 46.5L2000.5 46.5L2000.5 130.5L1903 130.5L1903 74.5L1949.5 74.5L1949.5 46.5L1887 46.5L1887 130.5L1795 130.5L1795 74.5L1838.5 74.5L1838.5 46.5L1778 46.5L1778 130.5L1684.5 130.5L1684.5 74.5L1731 74.5L1731 46.5L1669 46.5L1669 130.5L1573 130.5L1573 74.5L1614 74.5L1614 46.5L1559 46.5L1559 130.5L1464.5 130.5L1464.5 74.5L1510 74.5L1510 46.5L1447.5 46.5L1447.5 130.5L1352 130.5L1352 74.5L1398.5 74.5L1398.5 46.5L1335 46.5L1335 130.5L1242 130.5L1242 74.5L1288.5 74.5L1288.5 46.5L1226 46.5L1226 130.5L1133.5 130.5L1133.5 74.5L1176 74.5L1176 46.5L1118 46.5L1118 130.5L1024.5 130.5L1024.5 74.5L1068.5 74.5L1068.5 46.5L1008 46.5L1008 130.5L912.5 130.5L912.5 74.5L958 74.5L958 46.5L896.5 46.5L896.5 130.5L803.5 130.5L803.5 74.5L849.5 74.5L849.5 46.5L786.5 46.5L786.5 130.5L694 130.5L694 74.5L737.5 74.5L737.5 46.5L677 46.5L677 130.5L583 130.5L583 74.5L626.5 74.5L626.5 46.5L564.5 46.5L564.5 130.5L472.5 130.5L472.5 74.5L516 74.5L516 46.5L456.5 46.5L456.5 130.5L361.5 130.5L361.5 74.5L407.5 74.5L407.5 46.5L346 46.5L346 130.5L253 130.5L253 74.5L298 74.5L298 46.5L237 46.5L237 130.5L144 130.5L144 74.5L189.5 74.5L189.5 46.5L125.5 46.5L125.5 130.5L36.5 130.5L36.5 74.5L79.5 74.5L79.5 46.5L13 46.5L13 124L0 124ZM0 148L2550 148L2550 163L0 163L0 148Z" fill-rule="evenodd" fill="#ffffff" >
</path>
</svg>

After

Width:  |  Height:  |  Size: 3.2 KiB

View File

@ -0,0 +1,4 @@
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="2556.5" height="189.5" viewBox="0 0 2556.5 189.5" fill="none">
<path d="M13 13L2556.5 13.5L2556.5 0.5L0 0L0 153L332 153L332 56L479.484 56L479.267 136.5L410.5 136.5L410.5 99.5L435 99.5L435 86.5L373 86.5L373 99.5L397.5 99.5L397.5 149.5L574 149.5L574 99.5L599.5 99.5L599.5 86.5L535 86.5L535 99.5L561 99.5L561 136.5L492.267 136.5L492.484 56L639.5 56L639.5 153L969 153L969 56L1112.98 56L1112.77 136.5L1044 136.5L1044 99.5L1068.5 99.5L1068.5 86.5L1006.5 86.5L1006.5 99.5L1031 99.5L1031 149.5L1207.5 149.5L1207.5 99.5L1233 99.5L1233 86.5L1168.5 86.5L1168.5 99.5L1194.5 99.5L1194.5 136.5L1125.77 136.5L1125.98 56L1270 56L1270 153L1599 153L1599 56L1746.48 56L1746.27 136.5L1677.5 136.5L1677.5 99.5L1702 99.5L1702 86.5L1640 86.5L1640 99.5L1664.5 99.5L1664.5 149.5L1841 149.5L1841 99.5L1866.5 99.5L1866.5 86.5L1802 86.5L1802 99.5L1828 99.5L1828 136.5L1759.27 136.5L1759.48 56L1906 56L1906 153L2239.5 153L2239.5 56L2379.98 56L2379.77 136.5L2311 136.5L2311 99.5L2335.5 99.5L2335.5 86.5L2273.5 86.5L2273.5 99.5L2298 99.5L2298 149.5L2474.5 149.5L2474.5 99.5L2500 99.5L2500 86.5L2435.5 86.5L2435.5 99.5L2461.5 99.5L2461.5 136.5L2392.77 136.5L2392.98 56L2543.5 56L2543.5 175L0 176.5L0 189.5L2556.5 188L2556.5 43L2226.5 43L2226.5 140L2073.49 140L2073.27 57L2142 57L2142 94L2116 94L2116 107L2180.5 107L2180.5 94L2155 94L2155 44L1978.5 44L1978.5 94L1954 94L1954 107L2016 107L2016 94L1991.5 94L1991.5 57L2060.27 57L2060.49 140L1919 140L1919 43L1586 43L1586 140L1439.99 140L1439.77 57L1508.5 57L1508.5 94L1482.5 94L1482.5 107L1547 107L1547 94L1521.5 94L1521.5 44L1345 44L1345 94L1320.5 94L1320.5 107L1382.5 107L1382.5 94L1358 94L1358 57L1426.77 57L1426.99 140L1283 140L1283 43L956 43L956 140L806.491 140L806.267 57L875 57L875 94L849 94L849 107L913.5 107L913.5 94L888 94L888 44L711.5 44L711.5 94L687 94L687 107L749 107L749 94L724.5 94L724.5 57L793.267 57L793.491 140L652.5 140L652.5 43L319 43L319 140L172.991 140L172.767 57L241.5 57L241.5 94L215.5 94L215.5 107L280 107L280 94L254.5 94L254.5 44L78 44L78 94L53.5 94L53.5 107L115.5 107L115.5 94L91 94L91 57L159.767 57L159.991 140L13 140L13 13Z" fill-rule="evenodd" fill="#ffffff" >
</path>
</svg>

After

Width:  |  Height:  |  Size: 2.2 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 5.0 KiB

View File

@ -344,8 +344,12 @@
import { useI18n } from 'vue-i18n'
import { ElMessage } from 'element-plus'
import { inject } from 'vue'
import { TreeApi } from '@/api/tree'
import { useTreeNode } from '../../../../tree/hooks/treeNode'
import { $sendElectronChanel } from '@/utils/communication'
const eventBus: any = inject('bus')
const { cusUpdateNode } = useTreeNode()
const { t } = useI18n()
@ -462,7 +466,19 @@ const setView = () => {
type: 'success'
})
}
const setData = () => {}
const setData = () => {
TreeApi.getTreeDefault().then((res) => {
if (res.code == 0 || res.code == 200) {
ElMessage({
message: '添加完成,2秒后将重启系统',
type: 'success'
})
setTimeout(() => {
$sendElectronChanel('restart')
}, 2000)
}
})
}
const management = () => {}
const batteryChange = () => {}
</script>

View File

@ -61,7 +61,7 @@ eventBus.on('tufuInput', (data) => {
// align-items: center;
// justify-content: center;
position: absolute;
top: 17%;
top: 14%;
right: 15px;
}
.el-range-editor.is-active .el-range-editor.is-active:hover,

View File

@ -3,11 +3,15 @@
<div class="leftSideSecondBox">
<template v-if="obj">
<div class="menuItem" v-for="value in obj.children" @click="handleClick(value)">
<img :src="'http://localhost:'+`${availablePort}`+ '/icon/' + `${value}` + '.png'" style="color: rgb(255, 0, 0)" alt="" />
<img
:src="'http://localhost:' + `${availablePort}` + '/icon/' + `${value}` + '.png'"
style="color: rgb(255, 0, 0)"
alt=""
/>
<!-- <svg-icon :name="value" :size="20" color="rgba(0, 255, 255, 1)"></svg-icon> -->
<span :style="{ color: !clickChange[value] ? 'var(--color-text)' : 'rgb(255,0,0)' }">{{
t(`${obj.key}.${value}`)
}}</span>
t(`${obj.key}.${value}`)
}}</span>
</div>
</template>
</div>
@ -33,8 +37,8 @@ const { ipcRenderer } = require('electron')
const { t } = useI18n()
const { findParentId, findTreeIndex, cusAddNodes } = useTreeNode()
const fs = require('fs')
const availablePort = ref(55110);
ipcRenderer.invoke('get-available-port').then((port)=>{
const availablePort = ref(55110)
ipcRenderer.invoke('get-available-port').then((port) => {
availablePort.value = port
})
const obj: any = ref(null)
@ -92,32 +96,37 @@ window.addEventListener('keydown', handleKeyDown)
const methodMap = {
// 轨迹运动
trajectoryMotion: async () => {
eventBus.emit('openModel', true, (url) => {
let draw = new YJ.Draw.DrawPolyline(window.earth)
draw.start(async (err, positions) => {
if (positions && positions.length > 1) {
let id = new YJ.Tools().randomString()
let name = '轨迹运动'
await addMapSource({
type: 'path',
id: id,
sourceName: name,
opt: {
eventBus.emit(
'openModel',
true,
(url) => {
let draw = new YJ.Draw.DrawPolyline(window.earth)
draw.start(async (err, positions) => {
if (positions && positions.length > 1) {
let id = new YJ.Tools().randomString()
let name = '轨迹运动'
await addMapSource({
type: 'path',
id: id,
name: name,
model: {
show: true,
url: url
},
line: {
show: true,
positions: positions
sourceName: name,
opt: {
id: id,
name: name,
model: {
show: true,
url: url
},
line: {
show: true,
positions: positions
}
}
}
})
}
})
}, 'trajectoryMotion')
})
}
})
},
'trajectoryMotion'
)
},
// 电子围墙
wallStereoscopic: () => {
@ -301,7 +310,7 @@ const methodMap = {
name: name,
lng: position.lng,
lat: position.lat,
alt: position.alt,
alt: position.alt
}
})
})
@ -324,7 +333,7 @@ const methodMap = {
name: name,
lng: position.lng,
lat: position.lat,
alt: position.alt,
alt: position.alt
}
})
})
@ -347,7 +356,7 @@ const methodMap = {
name: name,
lng: position.lng,
lat: position.lat,
alt: position.alt,
alt: position.alt
}
})
})
@ -431,7 +440,7 @@ const methodMap = {
// 夜视
nightVision: () => {
clickChange.nightVision = !clickChange.nightVision
YJ.Global.efflect.nightVision(window.earth, clickChange.nightVision);
YJ.Global.efflect.nightVision(window.earth, clickChange.nightVision)
},
//投影面积
projectionArea: () => {
@ -585,7 +594,7 @@ const methodMap = {
filters: [{ name: '保存图片', extensions: ['jpg'] }]
})
$recvElectronChanel('selectedFileItem', (e, path) => {
fs.writeFile(path, dataBuffer, (res) => { })
fs.writeFile(path, dataBuffer, (res) => {})
})
}
@ -630,8 +639,8 @@ const methodMap = {
},
//高清出图
highQuality() {
// eventBus.emit('screenShotDialog')
YJ.Global.ScreenShotHD(window.earth)
eventBus.emit('screenShotDialog')
// YJ.Global.ScreenShotHD(window.earth)
},
//视频录制
videoRecord() {
@ -719,11 +728,11 @@ const methodMap = {
TreeApi.addOtherSource(paramsData)
paramsData.isShow = true
paramsData.params = JSON.stringify(paramsData.params)
; (window as any).pressModelMap.set(id + '_' + selectedNode.id, paramsData)
; (window as any).pressModelEntities.set(id, flat)
;(window as any).pressModelMap.set(id + '_' + selectedNode.id, paramsData)
;(window as any).pressModelEntities.set(id, flat)
cusAddNodes(window.treeObj, paramsData.parentId, [paramsData])
// //鼠标右键点击事件
flat.onRightClick = () => { }
flat.onRightClick = () => {}
// _entityMap.set(node.source_id, flat)
} else {
// this.$message.warning('至少三个点')
@ -801,7 +810,7 @@ const methodMap = {
eventBus.emit('ProjectionConvertDialog')
},
//GDB导入
gdbImport() { },
gdbImport() {},
//圆形统计
circleStatistics() {
if ((window as any).checkAuthIsValid) {

View File

@ -9,108 +9,48 @@
>
<template #content>
<span class="custom-divider"></span>
<div class="div-item">
<div class="row">
<div class="col">
<span class="label">出图方式</span>
<div class="btn-group">
<button
class="btn"
:class="{ active: selectType == 'first' }"
@click="clickChange('first')"
>
比例尺
</button>
<button
class="btn"
:class="{ active: selectType == 'second' }"
@click="clickChange('second')"
>
地图层级
</button>
<button
class="btn"
:class="{ active: selectType == 'third' }"
@click="clickChange('third')"
>
倍数输出
</button>
</div>
</div>
<div class="row text" style="align-items: flex-start">
<div class="col">
<span
>当前窗口长宽<span class="input-width">{{ canvasWidth }}</span
>*<span class="input-height">{{ canvasHeight }}</span
>像素</span
>
</div>
</div>
<div class="div-item">
<!-- 比例尺 -->
<div class="row" v-if="selectType == 'first'" style="margin-bottom: 20px">
<div class="col">
<span class="label radioWords">比例尺</span>
<el-select v-model="radio" class="radio">
<el-option v-for="item in 20" :key="item" :label="item" :value="item" />
</el-select>
<button class="curLevel" @click="draw">获取当前比例尺</button>
</div>
<div class="row scale-box" style="align-items: flex-start">
<div class="col">
<span class="label">图片大小</span>
<el-select v-model="scale" class="photo">
<el-option v-for="item in 10" :key="item" :label="item" :value="item" />
</el-select>
<span>倍窗口</span>
</div>
<!-- 地图层级 -->
<div class="row" v-else-if="selectType == 'second'" style="margin-bottom: 20px">
<div class="col">
<span class="label">地图层级</span>
<el-select v-model="level" class="level">
<el-option v-for="item in 20" :key="item" :label="item" :value="item" />
</el-select>
</div>
</div>
<div class="row text" style="align-items: flex-start">
<div class="col">
<span
>输出图片长宽<span class="output-width">{{ canvasWidth * scale }}</span
>*<span class="output-height">{{ canvasHeight * scale }}</span
>像素</span
>
</div>
<!-- 倍数输出 -->
<div v-else-if="selectType == 'third'">
<div class="row text" style="align-items: flex-start">
<div class="col">
<span
>当前窗口长宽<span class="input-width">{{ canvasWidth }}</span
>*<span class="input-height">{{ canvasHeight }}</span
>像素</span
>
</div>
</div>
<div class="row scale-box" style="align-items: flex-start">
<div class="col">
<span class="label">图片大小</span>
<el-select v-model="scale" class="photo">
<el-option v-for="item in 10" :key="item" :label="item" :value="item" />
</el-select>
<span>倍窗口</span>
</div>
</div>
<div class="row text" style="align-items: flex-start">
<div class="col">
<span
>输出图片长宽<span class="output-width">{{ canvasWidth * scale }}</span
>*<span class="output-height">{{ canvasHeight * scale }}</span
>像素</span
>
</div>
</div>
</div>
<div class="row" style="align-items: flex-start; margin-top: 10px">
<div class="col">
<span class="label">输出进度</span>
<input
class="progress-input"
type="range"
max="100"
min="0"
step="0.01"
v-model="progressVal"
/>
</div>
<div class="row" style="align-items: flex-start; margin-top: 10px">
<div class="row" style="align-items: flex-start">
<div class="col">
<span class="label">输出进度</span>
<div class="range-box">
<div class="range-bg">
<div class="range-process-box">
<div class="range-process"></div>
</div>
</div>
<div class="range-node-box">
<span class="range-node-text">0%</span>
<span class="range-node-text">100%</span>
<div class="range-node-active"><span class="range-node-active-text">0%</span></div>
</div>
<input class="progress-input" type="range" max="100" min="0" step="0.01" />
</div>
</div>
<div class="row" style="align-items: flex-start">
<div class="col">
<el-checkbox v-model="modify" label="出图修饰" size="large" />
</div>
<!-- <el-checkbox v-model="modify" label="出图修饰" size="large" /> 和里面的配置文件的show冲突 -->
</div>
</div>
</div>
@ -130,6 +70,7 @@ import Dialog from '@/components/dialog/baseDialog.vue'
const baseDialog: any = ref(null)
const eventBus: any = inject('bus')
var progressVal: any = ref(0)
var selectType: any = ref('first')
var scale: any = ref(1)
var radio: any = ref('1:500')
@ -151,24 +92,28 @@ eventBus.on('screenShotDialog', () => {
canvasHeight.value = window.earth.viewer.canvas.height
})
const closeCallBack = (e) => {}
const closeCallBack = (e) => {
progressVal.value = 0
scale.value = 1
modify.value = false
}
const close = (e) => {
baseDialog.value?.close()
}
const draw = (e) => {}
const clickChange = (type) => {
switch (type) {
case 'first': //比例尺
selectType.value = 'first'
break
case 'second': //地图层级
selectType.value = 'second'
break
case 'third': //倍数输出
selectType.value = 'third'
break
default:
break
const draw = (e) => {
let params = {
scaleV: scale.value,
modify: modify.value
}
YJ.Global.ScreenShotHD(window.earth, true, params, getResultData)
}
const getResultData = (data) => {
console.log(data, '我的数据')
progressVal.value = data.value
if (progressVal.value == 100) {
//关闭弹框 打开地图打印弹框
baseDialog.value?.close()
// eventBus.emit('mapPrintDialog')
}
}
</script>

View File

@ -0,0 +1,299 @@
<template>
<Dialog
ref="baseDialog"
class="mapPrint"
title="地图打印"
left="180px"
top="100px"
:closeCallback="closeCallBack"
>
<template #content>
<div class="left">
<div class="div-item">
<div class="title">图件信息</div>
<div class="row" style="align-items: flex-start">
<div class="col template-box">
<span class="label" style="flex: 0 0 56px">模板</span>
<el-select v-model="setting.templeVal">
<el-option label="模板1" value="模板1"></el-option>
<el-option label="模板2" value="模板2"></el-option>
</el-select>
<span style="margin-left: 15px; flex: 0 0 17px"></span>
</div>
</div>
<div class="row" style="align-items: flex-start">
<div class="col">
<span class="label" style="flex: 0 0 56px">标题</span>
<input class="title-input" type="text" />
<input
class="title-checkbox"
type="checkbox"
style="margin-left: 15px; flex: 0 0 17px"
v-model="setting.titleShow"
/>
</div>
</div>
<div class="row" style="align-items: flex-start">
<div class="col">
<span class="label" style="flex: 0 0 56px">制图日期</span>
<input class="print-date" type="text" placeholder="YYYY-MM-DD" readonly />
<input
class="print-date-checkbox"
type="checkbox"
style="margin-left: 15px; flex: 0 0 17px"
v-model="setting.printDate"
/>
</div>
</div>
<div class="row" style="align-items: flex-start">
<div class="col">
<span class="label" style="flex: 0 0 56px">制图单位</span>
<input class="unit-input" type="text" />
<input
class="unit-checkbox"
type="checkbox"
style="margin-left: 15px; flex: 0 0 17px"
v-model="setting.printUnit"
/>
</div>
</div>
<div class="row" style="align-items: flex-start">
<div class="col map-border-box">
<span class="label" style="flex: 0 0 56px">图框</span>
<el-select v-model="setting.mapBorderVal" placeholder="Select" style="width: 240px">
<template #label="{ label, value }">
<span
:style="{
backgroundImage: `url(${value})`,
backgroundSize: 'auto 100%',
backgroundRepeat: 'repeat-x',
display: 'inline-block',
height: '20px',
width: '140px'
}"
></span>
</template>
<el-option
v-for="(item, index) in mapBorderList"
:key="index"
:label="'样式' + (index + 1)"
:value="item"
>
<div class="flex items-center">
<span
:style="{
backgroundImage: `url(${item})`,
backgroundSize: 'auto 100%',
backgroundRepeat: 'repeat-x',
display: 'inline-block',
height: '24px',
width: '180px',
marginTop: '5px'
}"
></span>
</div>
</el-option>
</el-select>
<input
class="map-border-checkbox"
type="checkbox"
style="margin-left: 15px; flex: 0 0 17px"
v-model="setting.mapBorder"
/>
</div>
</div>
</div>
<div class="div-item">
<div class="title">地图要素</div>
<div class="row" style="align-items: flex-start">
<div class="col" style="align-items: flex-start; display: flex">
<span class="label" style="flex: 0 0 56px; margin-top: 9px">指北针</span>
<input
class="compass-checkbox"
type="checkbox"
style="margin-top: 11px; flex: 0 0 17px"
/>
<div class="row">
<div class="col" style="margin-left: 10px; flex-wrap: wrap">
<div
style="display: flex; align-items: center"
v-for="(item, index) in compassList"
:key="index"
>
<input class="compass-radio" type="radio" name="option" />
<!-- <svg-icon :name="item" :size="38" style="margin: 0 5px"></svg-icon> -->
<img :src="item" alt="" style="width: 38px; height: 38px; margin: 0 5px" />
</div>
</div>
</div>
</div>
</div>
<div class="row" style="align-items: flex-start">
<div class="col" style="align-items: flex-start">
<span class="label" style="flex: 0 0 56px; margin-top: 9px">比例尺</span>
<input
class="plotting-scale-checkbox"
type="checkbox"
style="margin-top: 11px; flex: 0 0 17px"
/>
</div>
</div>
</div>
</div>
<div class="right">
<div class="map-img-box"></div>
</div>
</template>
<template #footer>
<button @click="draw">确定</button>
<button @click="close">取消</button>
</template>
</Dialog>
</template>
<script setup lang="ts">
import { ref, reactive, onMounted } from 'vue'
import { inject } from 'vue'
import Dialog from '@/components/dialog/baseDialog.vue'
import imgUrl1 from '@/icons/svg/icon-compass1.svg'
import imgUrl2 from '@/icons/svg/icon-compass2.svg'
import imgUrl3 from '@/icons/svg/icon-compass3.svg'
import imgUrl4 from '@/icons/svg/icon-compass4.svg'
import mapBorder1 from '@/icons/svg/map-border1.svg?raw'
import mapBorder2 from '@/icons/svg/map-border2.svg'
import mapBorder3 from '@/icons/svg/map-border3.svg'
import mapBorder4 from '@/icons/svg/map-border4.svg?raw'
import mapBorder5 from '@/icons/svg/map-border5.svg?raw'
import mapBorder6 from '@/icons/svg/map-border6.svg'
const baseDialog: any = ref(null)
const eventBus: any = inject('bus')
var setting: any = reactive({
titleShow: true,
printDate: true,
printUnit: true,
mapBorder: false,
templeVal: '模板1',
mapBorderVal: ''
})
const mapBorder11 = `data:image/svg+xml;base64,${btoa(mapBorder1)}`
const mapBorder41 = `data:image/svg+xml;base64,${btoa(mapBorder4)}`
const mapBorder51 = `data:image/svg+xml;base64,${btoa(mapBorder5)}`
const compassList: any = reactive([imgUrl1, imgUrl2, imgUrl3, imgUrl4])
const mapBorderList: any = reactive([
mapBorder11,
mapBorder2,
mapBorder3,
mapBorder41,
mapBorder51,
mapBorder6
])
console.log(mapBorderList, 'mapBorderList')
eventBus.on('mapPrintDialog', () => {
baseDialog.value?.open()
})
const closeCallBack = (e) => {}
const close = (e) => {
baseDialog.value?.close()
}
const draw = (e) => {}
</script>
<style scoped lang="scss">
.btn-group {
display: flex;
background: rgba(var(--color-sdk-base-rgb), 0.2);
}
.btn {
background: transparent !important;
border: 1px solid transparent !important;
}
.btn:hover {
border: 1px solid rgba(var(--color-sdk-base-rgb), 1) !important;
color: rgba(var(--color-sdk-base-rgb), 1) !important;
}
.active {
border: 1px solid rgba(var(--color-sdk-base-rgb), 1) !important;
color: rgba(var(--color-sdk-base-rgb), 1) !important;
}
.curLevel {
margin-left: 10px;
}
.radioWords {
width: 56px;
}
.photo {
width: 175px;
height: 32px;
font-size: 12px;
font-weight: 400;
letter-spacing: 0px;
line-height: 24px;
color: rgba(204, 204, 204, 1);
text-align: left;
vertical-align: top;
// background-color: rgba(0, 0, 0, 0.5) !important;
// border: 1px solid rgba(var(--color-sdk-base-rgb), 0.5) !important;
border-radius: 5px;
margin-right: 10px;
}
.radio {
width: 108px;
}
::v-deep .el-select__wrapper {
background-color: rgba(0, 0, 0, 0.5) !important;
// border: 1px solid rgba(var(--color-sdk-base-rgb), 0.5) !important;
box-shadow: unset !important;
}
::v-deep .el-select__selected-item {
margin-left: 10px;
color: #ffffff;
}
::v-deep .el-popper .is-pure {
z-index: 1000000 !important;
}
::v-deep .el-popper.is-light,
.el-popper.is-light > .el-popper__arrow:before {
z-index: 1000000 !important;
}
.level {
width: 150px;
}
.el-checkbox {
margin-top: 10px;
}
::v-deep .el-checkbox.el-checkbox--large .el-checkbox__label {
font-size: 14px;
font-weight: 500;
letter-spacing: 0px;
line-height: 24px;
color: rgba(255, 255, 255, 1);
text-align: left;
vertical-align: middle;
margin-left: 5px;
}
::v-deep .range-node-box .range-node-text {
font-size: 14px !important;
}
::v-deep .YJ-custom-base-dialog > .content input[type='checkbox']:read-only {
flex: 0 0 17px !important;
}
::v-deep .el-select__wrapper {
background-color: rgba(0, 0, 0, 0.5) !important;
box-shadow: 0 0 0 1px rgba(var(--color-sdk-base-rgb), 0.5) inset !important;
}
::v-deep .el-select {
--el-select-input-focus-border-color: rgba(var(--color-sdk-base-rgb), 0.5) !important;
--el-select-text-color: #fff;
--el-select-border-color: rgba(var(--color-sdk-base-rgb), 0.5) !important;
--el-select-hover-border-color: rgba(var(--color-sdk-base-rgb), 0.5) !important;
--el-select-multiple-input-color: #fff !important;
}
::v-deep .el-select__placeholder {
color: rgba(204, 204, 204, 1) !important;
}
</style>