Browse Source

编辑页面

master
邓宏 2 years ago
parent
commit
ea36092801
  1. 1
      package.json
  2. 409
      pnpm-lock.yaml
  3. BIN
      src/assets/img/yuanmou_line.png
  4. 3570
      src/assets/map/yuanmou.json
  5. 1
      src/assets/svg/bar.svg
  6. 9
      src/view/home.vue
  7. 177
      src/view/mapPopover.vue
  8. 91
      src/view/park/center.vue
  9. 2
      src/view/park/right_2.vue

1
package.json

@ -13,6 +13,7 @@
"echarts": "^5.4.2",
"element-plus": "^2.3.2",
"swiper": "^9.2.0",
"three": "^0.151.3",
"vite-plugin-require-transform": "^1.0.4",
"vue": "^3.2.47",
"vue-echarts": "^6.5.4",

409
pnpm-lock.yaml

@ -1,4 +1,4 @@
lockfileVersion: 5.4
lockfileVersion: 5.3
specifiers:
'@amap/amap-jsapi-loader': ^1.0.1
@ -12,6 +12,7 @@ specifiers:
less-loader: ~7.3.0
sass-resources-loader: ^2.2.5
swiper: ^9.2.0
three: ^0.151.3
vite: ^2.9.14
vite-plugin-require-transform: ^1.0.4
vue: ^3.2.47
@ -26,6 +27,7 @@ dependencies:
echarts: 5.4.2
element-plus: 2.3.2_vue@3.2.47
swiper: 9.2.0
three: 0.151.3
vite-plugin-require-transform: 1.0.4
vue: 3.2.47
vue-echarts: 6.5.4_echarts@5.4.2+vue@3.2.47
@ -38,7 +40,7 @@ devDependencies:
'@vitejs/plugin-vue-jsx': 1.3.10
black-knight: 1.3.29
less: 4.1.3
less-loader: 7.3.0_less@4.1.3+webpack@5.78.0
less-loader: 7.3.0_less@4.1.3
sass-resources-loader: 2.2.5
vite: 2.9.14_less@4.1.3
@ -378,13 +380,6 @@ packages:
resolution: {integrity: sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==}
engines: {node: '>=6.0.0'}
/@jridgewell/source-map/0.3.3:
resolution: {integrity: sha512-b+fsZXeLYi9fEULmfBrhxn4IrPlINf8fiNarzTof004v3lFdntdwa9PF7vFJqm3mg7s+ScJMxXaE3Acp1irZcg==}
dependencies:
'@jridgewell/gen-mapping': 0.3.2
'@jridgewell/trace-mapping': 0.3.18
dev: true
/@jridgewell/sourcemap-codec/1.4.14:
resolution: {integrity: sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==}
@ -394,13 +389,6 @@ packages:
'@jridgewell/resolve-uri': 3.1.0
'@jridgewell/sourcemap-codec': 1.4.14
/@jridgewell/trace-mapping/0.3.18:
resolution: {integrity: sha512-w+niJYzMHdd7USdiH2U6869nqhD2nbfZXND5Yp93qIbEmnDNk7PD48o+YchRVpzMU7M6jVCbenTR7PA1FLQ9pA==}
dependencies:
'@jridgewell/resolve-uri': 3.1.0
'@jridgewell/sourcemap-codec': 1.4.14
dev: true
/@rollup/pluginutils/4.2.1:
resolution: {integrity: sha512-iKnFXr7NkdZAIHiIWE+BX5ULi/ucVFYWD6TbAV+rZctiRTY2PL6tsIKhoIOaoskiWAkgu+VsbXgUVDNLHf+InQ==}
engines: {node: '>= 8.0.0'}
@ -413,24 +401,6 @@ packages:
resolution: {integrity: sha512-Ccy0NlLkzr0Ex2FKvh2X+OyERHXJ88XJ1MXtsI9y9fGexlaXaVTPzBCRBwIxFkORuOb+uBqeu+RqnpgYTEZRUQ==}
dev: false
/@types/eslint-scope/3.7.4:
resolution: {integrity: sha512-9K4zoImiZc3HlIp6AVUDE4CWYx22a+lhSZMYNpbjW04+YF0KWj4pJXnEMjdnFTiQibFFmElcsasJXDbdI/EPhA==}
dependencies:
'@types/eslint': 8.37.0
'@types/estree': 0.0.51
dev: true
/@types/eslint/8.37.0:
resolution: {integrity: sha512-Piet7dG2JBuDIfohBngQ3rCt7MgO9xCO4xIMKxBThCq5PNRB91IjlJ10eJVwfoNtvTErmxLzwBZ7rHZtbOMmFQ==}
dependencies:
'@types/estree': 0.0.51
'@types/json-schema': 7.0.11
dev: true
/@types/estree/0.0.51:
resolution: {integrity: sha512-CuPgU6f3eT/XgKKPqKd/gLZV1Xmvf1a2R5POBOGQa6uv82xpls89HU5zKeVoyR8XzHd1RGNOlQlvUe3CFkjWNQ==}
dev: true
/@types/json-schema/7.0.11:
resolution: {integrity: sha512-wOuvG1SN4Us4rez+tylwwwCV1psiNVOkJeM3AUWUNWg/jDQY2+HE/444y5gc+jBmRqASOm2Oeh5c1axHobwRKQ==}
dev: true
@ -445,10 +415,6 @@ packages:
resolution: {integrity: sha512-/THyiqyQAP9AfARo4pF+aCGcyiQ94tX/Is2I7HofNRqoYLgN1PBoOWu2/zTA5zMxzP5EFutMtWtGAFRKUe961Q==}
dev: false
/@types/node/18.15.11:
resolution: {integrity: sha512-E5Kwq2n4SbMzQOn6wnmBjuK9ouqlURrcZDVfbo9ftDDTFt3nk7ZKK4GMOzoYgnpQJKcxwQw+lGaBvvlMo0qN/Q==}
dev: true
/@types/web-bluetooth/0.0.16:
resolution: {integrity: sha512-oh8q2Zc32S6gd/j50GowEjKLoOVOwHP/bWVjKJInBwQqdOYMdPrf1oVlelTlyfFK3CKxL1uahMDAr+vy8T7yMQ==}
dev: false
@ -506,12 +472,14 @@ packages:
'@vue/shared': 3.2.47
estree-walker: 2.0.2
source-map: 0.6.1
dev: false
/@vue/compiler-dom/3.2.47:
resolution: {integrity: sha512-dBBnEHEPoftUiS03a4ggEig74J2YBZ2UIeyfpcRM2tavgMWo4bsEfgCGsu+uJIL/vax9S+JztH8NmQerUo7shQ==}
dependencies:
'@vue/compiler-core': 3.2.47
'@vue/shared': 3.2.47
dev: false
/@vue/compiler-sfc/3.2.47:
resolution: {integrity: sha512-rog05W+2IFfxjMcFw10tM9+f7i/+FFpZJJ5XHX72NP9eC2uRD+42M3pYcQqDXVYoj74kHMSEdQ/WmCjt8JFksQ==}
@ -526,12 +494,14 @@ packages:
magic-string: 0.25.9
postcss: 8.4.14
source-map: 0.6.1
dev: false
/@vue/compiler-ssr/3.2.47:
resolution: {integrity: sha512-wVXC+gszhulcMD8wpxMsqSOpvDZ6xKXSVWkf50Guf/S+28hTAXPDYRTbLQ3EDkOP5Xz/+SY37YiwDquKbJOgZw==}
dependencies:
'@vue/compiler-dom': 3.2.47
'@vue/shared': 3.2.47
dev: false
/@vue/devtools-api/6.2.1:
resolution: {integrity: sha512-OEgAMeQXvCoJ+1x8WyQuVZzFo0wcyCmUR3baRVLmKBo1LmYZWMlRiXlux5jd0fqVJu6PfDbOrZItVqUEzLobeQ==}
@ -549,17 +519,20 @@ packages:
'@vue/shared': 3.2.47
estree-walker: 2.0.2
magic-string: 0.25.9
dev: false
/@vue/reactivity/3.2.47:
resolution: {integrity: sha512-7khqQ/75oyyg+N/e+iwV6lpy1f5wq759NdlS1fpAhFXa8VeAIKGgk2E/C4VF59lx5b+Ezs5fpp/5WsRYXQiKxQ==}
dependencies:
'@vue/shared': 3.2.47
dev: false
/@vue/runtime-core/3.2.47:
resolution: {integrity: sha512-RZxbLQIRB/K0ev0K9FXhNbBzT32H9iRtYbaXb0ZIz2usLms/D55dJR2t6cIEUn6vyhS3ALNvNthI+Q95C+NOpA==}
dependencies:
'@vue/reactivity': 3.2.47
'@vue/shared': 3.2.47
dev: false
/@vue/runtime-dom/3.2.47:
resolution: {integrity: sha512-ArXrFTjS6TsDei4qwNvgrdmHtD930KgSKGhS5M+j8QxXrDJYLqYw4RRcDy1bz1m1wMmb6j+zGLifdVHtkXA7gA==}
@ -567,6 +540,7 @@ packages:
'@vue/runtime-core': 3.2.47
'@vue/shared': 3.2.47
csstype: 2.6.20
dev: false
/@vue/server-renderer/3.2.47_vue@3.2.47:
resolution: {integrity: sha512-dN9gc1i8EvmP9RCzvneONXsKfBRgqFeFZLurmHOveL7oH6HiFXJw5OGu294n1nHc/HMgTy6LulU/tv5/A7f/LA==}
@ -576,9 +550,11 @@ packages:
'@vue/compiler-ssr': 3.2.47
'@vue/shared': 3.2.47
vue: 3.2.47
dev: false
/@vue/shared/3.2.47:
resolution: {integrity: sha512-BHGyyGN3Q97EZx0taMQ+OLNuZcW3d37ZEVmEAyeoA9ERdGvm9Irc/0Fua8SNyOtV1w6BS4q25wbMzJujO9HIfQ==}
dev: false
/@vueuse/core/9.6.0_vue@3.2.47:
resolution: {integrity: sha512-qGUcjKQXHgN+jqXEgpeZGoxdCbIDCdVPz3QiF1uyecVGbMuM63o96I1GjYx5zskKgRI0FKSNsVWM7rwrRMTf6A==}
@ -605,134 +581,6 @@ packages:
- vue
dev: false
/@webassemblyjs/ast/1.11.1:
resolution: {integrity: sha512-ukBh14qFLjxTQNTXocdyksN5QdM28S1CxHt2rdskFyL+xFV7VremuBLVbmCePj+URalXBENx/9Lm7lnhihtCSw==}
dependencies:
'@webassemblyjs/helper-numbers': 1.11.1
'@webassemblyjs/helper-wasm-bytecode': 1.11.1
dev: true
/@webassemblyjs/floating-point-hex-parser/1.11.1:
resolution: {integrity: sha512-iGRfyc5Bq+NnNuX8b5hwBrRjzf0ocrJPI6GWFodBFzmFnyvrQ83SHKhmilCU/8Jv67i4GJZBMhEzltxzcNagtQ==}
dev: true
/@webassemblyjs/helper-api-error/1.11.1:
resolution: {integrity: sha512-RlhS8CBCXfRUR/cwo2ho9bkheSXG0+NwooXcc3PAILALf2QLdFyj7KGsKRbVc95hZnhnERon4kW/D3SZpp6Tcg==}
dev: true
/@webassemblyjs/helper-buffer/1.11.1:
resolution: {integrity: sha512-gwikF65aDNeeXa8JxXa2BAk+REjSyhrNC9ZwdT0f8jc4dQQeDQ7G4m0f2QCLPJiMTTO6wfDmRmj/pW0PsUvIcA==}
dev: true
/@webassemblyjs/helper-numbers/1.11.1:
resolution: {integrity: sha512-vDkbxiB8zfnPdNK9Rajcey5C0w+QJugEglN0of+kmO8l7lDb77AnlKYQF7aarZuCrv+l0UvqL+68gSDr3k9LPQ==}
dependencies:
'@webassemblyjs/floating-point-hex-parser': 1.11.1
'@webassemblyjs/helper-api-error': 1.11.1
'@xtuc/long': 4.2.2
dev: true
/@webassemblyjs/helper-wasm-bytecode/1.11.1:
resolution: {integrity: sha512-PvpoOGiJwXeTrSf/qfudJhwlvDQxFgelbMqtq52WWiXC6Xgg1IREdngmPN3bs4RoO83PnL/nFrxucXj1+BX62Q==}
dev: true
/@webassemblyjs/helper-wasm-section/1.11.1:
resolution: {integrity: sha512-10P9No29rYX1j7F3EVPX3JvGPQPae+AomuSTPiF9eBQeChHI6iqjMIwR9JmOJXwpnn/oVGDk7I5IlskuMwU/pg==}
dependencies:
'@webassemblyjs/ast': 1.11.1
'@webassemblyjs/helper-buffer': 1.11.1
'@webassemblyjs/helper-wasm-bytecode': 1.11.1
'@webassemblyjs/wasm-gen': 1.11.1
dev: true
/@webassemblyjs/ieee754/1.11.1:
resolution: {integrity: sha512-hJ87QIPtAMKbFq6CGTkZYJivEwZDbQUgYd3qKSadTNOhVY7p+gfP6Sr0lLRVTaG1JjFj+r3YchoqRYxNH3M0GQ==}
dependencies:
'@xtuc/ieee754': 1.2.0
dev: true
/@webassemblyjs/leb128/1.11.1:
resolution: {integrity: sha512-BJ2P0hNZ0u+Th1YZXJpzW6miwqQUGcIHT1G/sf72gLVD9DZ5AdYTqPNbHZh6K1M5VmKvFXwGSWZADz+qBWxeRw==}
dependencies:
'@xtuc/long': 4.2.2
dev: true
/@webassemblyjs/utf8/1.11.1:
resolution: {integrity: sha512-9kqcxAEdMhiwQkHpkNiorZzqpGrodQQ2IGrHHxCy+Ozng0ofyMA0lTqiLkVs1uzTRejX+/O0EOT7KxqVPuXosQ==}
dev: true
/@webassemblyjs/wasm-edit/1.11.1:
resolution: {integrity: sha512-g+RsupUC1aTHfR8CDgnsVRVZFJqdkFHpsHMfJuWQzWU3tvnLC07UqHICfP+4XyL2tnr1amvl1Sdp06TnYCmVkA==}
dependencies:
'@webassemblyjs/ast': 1.11.1
'@webassemblyjs/helper-buffer': 1.11.1
'@webassemblyjs/helper-wasm-bytecode': 1.11.1
'@webassemblyjs/helper-wasm-section': 1.11.1
'@webassemblyjs/wasm-gen': 1.11.1
'@webassemblyjs/wasm-opt': 1.11.1
'@webassemblyjs/wasm-parser': 1.11.1
'@webassemblyjs/wast-printer': 1.11.1
dev: true
/@webassemblyjs/wasm-gen/1.11.1:
resolution: {integrity: sha512-F7QqKXwwNlMmsulj6+O7r4mmtAlCWfO/0HdgOxSklZfQcDu0TpLiD1mRt/zF25Bk59FIjEuGAIyn5ei4yMfLhA==}
dependencies:
'@webassemblyjs/ast': 1.11.1
'@webassemblyjs/helper-wasm-bytecode': 1.11.1
'@webassemblyjs/ieee754': 1.11.1
'@webassemblyjs/leb128': 1.11.1
'@webassemblyjs/utf8': 1.11.1
dev: true
/@webassemblyjs/wasm-opt/1.11.1:
resolution: {integrity: sha512-VqnkNqnZlU5EB64pp1l7hdm3hmQw7Vgqa0KF/KCNO9sIpI6Fk6brDEiX+iCOYrvMuBWDws0NkTOxYEb85XQHHw==}
dependencies:
'@webassemblyjs/ast': 1.11.1
'@webassemblyjs/helper-buffer': 1.11.1
'@webassemblyjs/wasm-gen': 1.11.1
'@webassemblyjs/wasm-parser': 1.11.1
dev: true
/@webassemblyjs/wasm-parser/1.11.1:
resolution: {integrity: sha512-rrBujw+dJu32gYB7/Lup6UhdkPx9S9SnobZzRVL7VcBH9Bt9bCBLEuX/YXOOtBsOZ4NQrRykKhffRWHvigQvOA==}
dependencies:
'@webassemblyjs/ast': 1.11.1
'@webassemblyjs/helper-api-error': 1.11.1
'@webassemblyjs/helper-wasm-bytecode': 1.11.1
'@webassemblyjs/ieee754': 1.11.1
'@webassemblyjs/leb128': 1.11.1
'@webassemblyjs/utf8': 1.11.1
dev: true
/@webassemblyjs/wast-printer/1.11.1:
resolution: {integrity: sha512-IQboUWM4eKzWW+N/jij2sRatKMh99QEelo3Eb2q0qXkvPRISAj8Qxtmw5itwqK+TTkBuUIE45AxYPToqPtL5gg==}
dependencies:
'@webassemblyjs/ast': 1.11.1
'@xtuc/long': 4.2.2
dev: true
/@xtuc/ieee754/1.2.0:
resolution: {integrity: sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==}
dev: true
/@xtuc/long/4.2.2:
resolution: {integrity: sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==}
dev: true
/acorn-import-assertions/1.8.0_acorn@8.8.2:
resolution: {integrity: sha512-m7VZ3jwz4eK6A4Vtt8Ew1/mNbP24u0FhdyfA7fSvnJR6LMdfOYnmuIrrJAgrYfYJ10F/otaHTtrtrtmHdMNzEw==}
peerDependencies:
acorn: ^8
dependencies:
acorn: 8.8.2
dev: true
/acorn/8.8.2:
resolution: {integrity: sha512-xjIYgE8HBrkpd/sJqOGNspf8uHG+NOHGOw6a/Urj8taM2EXfdNAH2oFcPeIFfsv3+kz/mJrS5VuMqbNLjCa2vw==}
engines: {node: '>=0.4.0'}
hasBin: true
dev: true
/ajv-keywords/3.5.2_ajv@6.12.6:
resolution: {integrity: sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==}
peerDependencies:
@ -815,10 +663,6 @@ packages:
update-browserslist-db: 1.0.5_browserslist@4.21.2
dev: true
/buffer-from/1.1.2:
resolution: {integrity: sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==}
dev: true
/camelcase/6.3.0:
resolution: {integrity: sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==}
engines: {node: '>=10'}
@ -844,11 +688,6 @@ packages:
supports-color: 7.2.0
dev: true
/chrome-trace-event/1.0.3:
resolution: {integrity: sha512-p3KULyQg4S7NIHixdwbGX+nFHkoBiA4YQmyWtjb8XngSKV124nJmRysgAeujbUVb15vh+RvFUfCPqU7rXk+hZg==}
engines: {node: '>=6.0'}
dev: true
/color-convert/1.9.3:
resolution: {integrity: sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==}
dependencies:
@ -875,10 +714,6 @@ packages:
delayed-stream: 1.0.0
dev: false
/commander/2.20.3:
resolution: {integrity: sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==}
dev: true
/concat-map/0.0.1:
resolution: {integrity: sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=}
dev: true
@ -897,6 +732,7 @@ packages:
/csstype/2.6.20:
resolution: {integrity: sha512-/WwNkdXfckNgw6S5R125rrW8ez139lBHWouiBvX8dfMFtcn6V81REDqnH7+CRpRipfYlyU1CmOnOxrmGcFOjeA==}
dev: false
/dayjs/1.11.4:
resolution: {integrity: sha512-Zj/lPM5hOvQ1Bf7uAvewDaUcsJoI6JmNqmHhHl3nyumwe0XHwt8sWdOVAPACJzCebL8gQCi+K49w7iKWnGwX9g==}
@ -904,11 +740,6 @@ packages:
/debug/3.2.7:
resolution: {integrity: sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==}
peerDependencies:
supports-color: '*'
peerDependenciesMeta:
supports-color:
optional: true
dependencies:
ms: 2.1.3
dev: true
@ -958,7 +789,7 @@ packages:
escape-html: 1.0.3
lodash: 4.17.21
lodash-es: 4.17.21
lodash-unified: 1.0.2_3ib2ivapxullxkx3xftsimdk7u
lodash-unified: 1.0.2_da03a4540fbd16bbaafbb96724306afd
memoize-one: 6.0.0
normalize-wheel-es: 1.2.0
vue: 3.2.47
@ -971,14 +802,6 @@ packages:
engines: {node: '>= 4'}
dev: true
/enhanced-resolve/5.12.0:
resolution: {integrity: sha512-QHTXI/sZQmko1cbDoNAa3mJ5qhWUUNAq3vR0/YiD379fWQrcfuoX1+HW2S0MTt7XmoPLapdaDKUtelUSPic7hQ==}
engines: {node: '>=10.13.0'}
dependencies:
graceful-fs: 4.2.10
tapable: 2.2.1
dev: true
/errno/0.1.8:
resolution: {integrity: sha512-dJ6oBr5SQ1VSd9qkk7ByRgb/1SH4JZjCHSW/mr63/QcXO9zLVxvJ6Oy13nio03rxpSnVDDjFor75SjVeZWPW/A==}
hasBin: true
@ -988,10 +811,6 @@ packages:
dev: true
optional: true
/es-module-lexer/0.9.3:
resolution: {integrity: sha512-1HQ2M2sPtxwnvOvT1ZClHyQDiggdNjURWpY2we6aMKCQiUVxTmVs2UYPLIrD84sS+kMdUwfBSylbJPwNnBrnHQ==}
dev: true
/esbuild-android-64/0.14.49:
resolution: {integrity: sha512-vYsdOTD+yi+kquhBiFWl3tyxnj2qZJsl4tAqwhT90ktUdnyTizgle7TjNx6Ar1bN7wcwWqZ9QInfdk2WVagSww==}
engines: {node: '>=12'}
@ -1213,39 +1032,9 @@ packages:
resolution: {integrity: sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==}
engines: {node: '>=0.8.0'}
/eslint-scope/5.1.1:
resolution: {integrity: sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==}
engines: {node: '>=8.0.0'}
dependencies:
esrecurse: 4.3.0
estraverse: 4.3.0
dev: true
/esrecurse/4.3.0:
resolution: {integrity: sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==}
engines: {node: '>=4.0'}
dependencies:
estraverse: 5.3.0
dev: true
/estraverse/4.3.0:
resolution: {integrity: sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==}
engines: {node: '>=4.0'}
dev: true
/estraverse/5.3.0:
resolution: {integrity: sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==}
engines: {node: '>=4.0'}
dev: true
/estree-walker/2.0.2:
resolution: {integrity: sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==}
/events/3.3.0:
resolution: {integrity: sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==}
engines: {node: '>=0.8.x'}
dev: true
/fast-deep-equal/3.1.3:
resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==}
dev: true
@ -1294,10 +1083,6 @@ packages:
engines: {node: '>=6.9.0'}
dev: true
/glob-to-regexp/0.4.1:
resolution: {integrity: sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==}
dev: true
/glob/7.2.3:
resolution: {integrity: sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==}
dependencies:
@ -1317,6 +1102,7 @@ packages:
resolution: {integrity: sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==}
requiresBuild: true
dev: true
optional: true
/has-flag/3.0.0:
resolution: {integrity: sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==}
@ -1384,15 +1170,6 @@ packages:
resolution: {integrity: sha512-sNxgpk9793nzSs7bA6JQJGeIuRBQhAaNGG77kzYQgMkrID+lS6SlK07K5LaptscDlSaIgH+GPFzf+d75FVxozA==}
dev: true
/jest-worker/27.5.1:
resolution: {integrity: sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==}
engines: {node: '>= 10.13.0'}
dependencies:
'@types/node': 18.15.11
merge-stream: 2.0.0
supports-color: 8.1.1
dev: true
/js-tokens/4.0.0:
resolution: {integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==}
@ -1401,10 +1178,6 @@ packages:
engines: {node: '>=4'}
hasBin: true
/json-parse-even-better-errors/2.3.1:
resolution: {integrity: sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==}
dev: true
/json-schema-traverse/0.4.1:
resolution: {integrity: sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==}
dev: true
@ -1420,7 +1193,7 @@ packages:
engines: {node: '>= 8'}
dev: true
/less-loader/7.3.0_less@4.1.3+webpack@5.78.0:
/less-loader/7.3.0_less@4.1.3:
resolution: {integrity: sha512-Mi8915g7NMaLlgi77mgTTQvK022xKRQBIVDSyfl3ErTuBhmZBQab0mjeJjNNqGbdR+qrfTleKXqbGI4uEFavxg==}
engines: {node: '>= 10.13.0'}
peerDependencies:
@ -1431,7 +1204,6 @@ packages:
less: 4.1.3
loader-utils: 2.0.2
schema-utils: 3.1.1
webpack: 5.78.0
dev: true
/less/4.1.3:
@ -1450,13 +1222,6 @@ packages:
mime: 1.6.0
needle: 3.1.0
source-map: 0.6.1
transitivePeerDependencies:
- supports-color
dev: true
/loader-runner/4.3.0:
resolution: {integrity: sha512-3R/1M+yS3j5ou80Me59j7F9IMs4PXs3VqRrm0TU3AbKPxlmpoY1TNscJV/oGJXo8qCatFGTfDbY6W6ipGOYXfg==}
engines: {node: '>=6.11.5'}
dev: true
/loader-utils/2.0.2:
@ -1472,7 +1237,7 @@ packages:
resolution: {integrity: sha512-mKnC+QJ9pWVzv+C4/U3rRsHapFfHvQFoFB92e52xeyGMcX6/OlIl78je1u8vePzYZSkkogMPJ2yjxxsb89cxyw==}
dev: false
/lodash-unified/1.0.2_3ib2ivapxullxkx3xftsimdk7u:
/lodash-unified/1.0.2_da03a4540fbd16bbaafbb96724306afd:
resolution: {integrity: sha512-OGbEy+1P+UT26CYi4opY4gebD8cWRDxAT6MAObIVQMiqYdxZr1g3QHWCToVsm31x2NkLS4K3+MC2qInaRMa39g==}
peerDependencies:
'@types/lodash-es': '*'
@ -1492,6 +1257,7 @@ packages:
resolution: {integrity: sha512-RmF0AsMzgt25qzqqLc1+MbHmhdx0ojF2Fvs4XnOqz2ZOBXzzkEwc/dJQZCYHAn7v1jbVOjAZfK8msRn4BxO4VQ==}
dependencies:
sourcemap-codec: 1.4.8
dev: false
/make-dir/2.1.0:
resolution: {integrity: sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==}
@ -1507,19 +1273,17 @@ packages:
resolution: {integrity: sha512-rkpe71W0N0c0Xz6QD0eJETuWAJGnJ9afsl1srmwPrI+yBCkge5EycXXbYRyvL29zZVUWQCY7InPRCv3GDXuZNw==}
dev: false
/merge-stream/2.0.0:
resolution: {integrity: sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==}
dev: true
/mime-db/1.52.0:
resolution: {integrity: sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==}
engines: {node: '>= 0.6'}
dev: false
/mime-types/2.1.35:
resolution: {integrity: sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==}
engines: {node: '>= 0.6'}
dependencies:
mime-db: 1.52.0
dev: false
/mime/1.6.0:
resolution: {integrity: sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==}
@ -1557,15 +1321,9 @@ packages:
debug: 3.2.7
iconv-lite: 0.6.3
sax: 1.2.4
transitivePeerDependencies:
- supports-color
dev: true
optional: true
/neo-async/2.6.2:
resolution: {integrity: sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==}
dev: true
/node-releases/2.0.6:
resolution: {integrity: sha512-PiVXnNuFm5+iYkLBNeq5211hvO38y63T0i2KKh2KnUs3RpzJ+JtODFjkD8yjLwnDkTYF1eKXheUwdssR+NRZdg==}
dev: true
@ -1630,12 +1388,6 @@ packages:
engines: {node: '>=6'}
dev: true
/randombytes/2.1.0:
resolution: {integrity: sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==}
dependencies:
safe-buffer: 5.1.2
dev: true
/resize-detector/0.3.0:
resolution: {integrity: sha512-R/tCuvuOHQ8o2boRP6vgx8hXCCy87H1eY9V5imBYeVNyNVpuL9ciReSccLj2gDcax9+2weXy3bc8Vv+NRXeEvQ==}
dev: false
@ -1700,23 +1452,10 @@ packages:
hasBin: true
dev: true
/serialize-javascript/6.0.1:
resolution: {integrity: sha512-owoXEFjWRllis8/M1Q+Cw5k8ZH40e3zhp/ovX+Xr/vi1qj6QesbyXXViFbpNvWvPNAD62SutwEXavefrLJWj7w==}
dependencies:
randombytes: 2.1.0
dev: true
/source-map-js/1.0.2:
resolution: {integrity: sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==}
engines: {node: '>=0.10.0'}
/source-map-support/0.5.21:
resolution: {integrity: sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==}
dependencies:
buffer-from: 1.1.2
source-map: 0.6.1
dev: true
/source-map/0.6.1:
resolution: {integrity: sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==}
engines: {node: '>=0.10.0'}
@ -1724,6 +1463,7 @@ packages:
/sourcemap-codec/1.4.8:
resolution: {integrity: sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==}
deprecated: Please use @jridgewell/sourcemap-codec instead
dev: false
/ssr-window/4.0.2:
resolution: {integrity: sha512-ISv/Ch+ig7SOtw7G2+qkwfVASzazUnvlDTwypdLoPoySv+6MqlOV10VwPSE6EWkGjhW50lUmghPmpYZXMu/+AQ==}
@ -1742,13 +1482,6 @@ packages:
has-flag: 4.0.0
dev: true
/supports-color/8.1.1:
resolution: {integrity: sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==}
engines: {node: '>=10'}
dependencies:
has-flag: 4.0.0
dev: true
/supports-preserve-symlinks-flag/1.0.0:
resolution: {integrity: sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==}
engines: {node: '>= 0.4'}
@ -1765,45 +1498,9 @@ packages:
ssr-window: 4.0.2
dev: false
/tapable/2.2.1:
resolution: {integrity: sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==}
engines: {node: '>=6'}
dev: true
/terser-webpack-plugin/5.3.7_webpack@5.78.0:
resolution: {integrity: sha512-AfKwIktyP7Cu50xNjXF/6Qb5lBNzYaWpU6YfoX3uZicTx0zTy0stDDCsvjDapKsSDvOeWo5MEq4TmdBy2cNoHw==}
engines: {node: '>= 10.13.0'}
peerDependencies:
'@swc/core': '*'
esbuild: '*'
uglify-js: '*'
webpack: ^5.1.0
peerDependenciesMeta:
'@swc/core':
optional: true
esbuild:
optional: true
uglify-js:
optional: true
dependencies:
'@jridgewell/trace-mapping': 0.3.18
jest-worker: 27.5.1
schema-utils: 3.1.1
serialize-javascript: 6.0.1
terser: 5.16.9
webpack: 5.78.0
dev: true
/terser/5.16.9:
resolution: {integrity: sha512-HPa/FdTB9XGI2H1/keLFZHxl6WNvAI4YalHGtDQTlMnJcoqSab1UwL4l1hGEhs6/GmLHBZIg/YgB++jcbzoOEg==}
engines: {node: '>=10'}
hasBin: true
dependencies:
'@jridgewell/source-map': 0.3.3
acorn: 8.8.2
commander: 2.20.3
source-map-support: 0.5.21
dev: true
/three/0.151.3:
resolution: {integrity: sha512-+vbuqxFy8kzLeO5MgpBHUvP/EAiecaDwDuOPPDe6SbrZr96kccF0ktLngXc7xA7bzyd3N0t2f6mw3Z9y6JCojQ==}
dev: false
/throttle-debounce/3.0.1:
resolution: {integrity: sha512-dTEWWNu6JmeVXY0ZYoPuH5cRIwc0MeGbJwah9KUNYSJwommQpCzTySTpEe8Gs1J23aeWEuAobe4Ag7EHVt/LOg==}
@ -1924,6 +1621,7 @@ packages:
'@vue/runtime-dom': 3.2.47
'@vue/server-renderer': 3.2.47_vue@3.2.47
'@vue/shared': 3.2.47
dev: false
/vue3-video-play/1.3.1-beta.6:
resolution: {integrity: sha512-Olrx2/LNAds7fuor/yX9ZKT9sOcwcfTt2g2YbbCrEaAmZ5Tb0hwBr5z+/CoLwELzzRzXCHPmWWoT0Wm5W/Nwpw==}
@ -1942,59 +1640,6 @@ packages:
vue: 3.2.47
dev: false
/watchpack/2.4.0:
resolution: {integrity: sha512-Lcvm7MGST/4fup+ifyKi2hjyIAwcdI4HRgtvTpIUxBRhB+RFtUh8XtDOxUfctVCnhVi+QQj49i91OyvzkJl6cg==}
engines: {node: '>=10.13.0'}
dependencies:
glob-to-regexp: 0.4.1
graceful-fs: 4.2.10
dev: true
/webpack-sources/3.2.3:
resolution: {integrity: sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w==}
engines: {node: '>=10.13.0'}
dev: true
/webpack/5.78.0:
resolution: {integrity: sha512-gT5DP72KInmE/3azEaQrISjTvLYlSM0j1Ezhht/KLVkrqtv10JoP/RXhwmX/frrutOPuSq3o5Vq0ehR/4Vmd1g==}
engines: {node: '>=10.13.0'}
hasBin: true
peerDependencies:
webpack-cli: '*'
peerDependenciesMeta:
webpack-cli:
optional: true
dependencies:
'@types/eslint-scope': 3.7.4
'@types/estree': 0.0.51
'@webassemblyjs/ast': 1.11.1
'@webassemblyjs/wasm-edit': 1.11.1
'@webassemblyjs/wasm-parser': 1.11.1
acorn: 8.8.2
acorn-import-assertions: 1.8.0_acorn@8.8.2
browserslist: 4.21.2
chrome-trace-event: 1.0.3
enhanced-resolve: 5.12.0
es-module-lexer: 0.9.3
eslint-scope: 5.1.1
events: 3.3.0
glob-to-regexp: 0.4.1
graceful-fs: 4.2.10
json-parse-even-better-errors: 2.3.1
loader-runner: 4.3.0
mime-types: 2.1.35
neo-async: 2.6.2
schema-utils: 3.1.1
tapable: 2.2.1
terser-webpack-plugin: 5.3.7_webpack@5.78.0
watchpack: 2.4.0
webpack-sources: 3.2.3
transitivePeerDependencies:
- '@swc/core'
- esbuild
- uglify-js
dev: true
/wrappy/1.0.2:
resolution: {integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==}
dev: true

BIN
src/assets/img/yuanmou_line.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 33 KiB

3570
src/assets/map/yuanmou.json

File diff suppressed because it is too large

1
src/assets/svg/bar.svg

@ -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="1681718536092" class="icon" viewBox="0 0 1026 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="20349" xmlns:xlink="http://www.w3.org/1999/xlink" width="200.390625" height="200"><path d="M975.481297 932.069825H89.376559V245.147132c0-25.53616-20.428928-45.965087-45.965088-45.965087S0 219.610973 0 245.147132v732.887781c0 25.53616 20.428928 45.965087 45.965087 45.965087h932.069826c25.53616 0 45.965087-20.428928 45.965087-45.965087-2.553616-25.53616-22.982544-45.965087-48.518703-45.965088z m-712.458853-68.94763h7.660848c51.072319 0 94.483791-43.411471 94.48379-94.483791V482.633416c0-51.072319-43.411471-94.483791-94.48379-94.48379h-7.660848c-51.072319 0-94.483791 43.411471-94.483791 94.48379v286.004988c2.553616 51.072319 43.411471 94.483791 94.483791 94.483791z m610.314214 0h7.660848c51.072319 0 94.483791-43.411471 94.483791-94.483791V482.633416c0-51.072319-43.411471-94.483791-94.483791-94.48379h-7.660848c-51.072319 0-94.483791 43.411471-94.48379 94.48379v286.004988c0 51.072319 43.411471 94.483791 94.48379 94.483791z m-303.880299 0h7.660848c51.072319 0 94.483791-43.411471 94.483791-94.483791V94.483791c0-51.072319-43.411471-94.483791-94.483791-94.483791h-7.660848c-51.072319 0-94.483791 43.411471-94.48379 94.483791v674.154613c0 51.072319 43.411471 94.483791 94.48379 94.483791z" p-id="20350"></path></svg>

After

Width:  |  Height:  |  Size: 1.4 KiB

9
src/view/home.vue

@ -22,7 +22,6 @@
}
.container-box{
background:transparent;
// pointer-events: none;
--bg:12, 44, 78;
&>.head{
position:absolute;
@ -111,8 +110,8 @@
}
</style>
<template>
<div id="map" ref="mapEl" v-if="isMap"/>
<container :bg="!isMap?require('@/assets/img/park-bg.png'):''">
<div id="map" ref="mapEl"/>
<container :bg="!isMap?require('@/assets/img/park-bg.png'):''" :style="{'pointer-events': $route.path=='/park'?'all':'none'}">
<template #ready>
<mapPopover ref="popver" @click="showPopover=true"/>
<div class="head">
@ -139,7 +138,7 @@
</container>
</template>
<script setup>
import { computed, inject, onMounted, onUnmounted, ref, shallowRef } from 'vue'
import { computed, inject, onMounted, onUnmounted, ref, shallowRef, watchEffect } from 'vue'
import AMAPLoader from '@amap/amap-jsapi-loader'
import mapPopover from './mapPopover.vue'
@ -212,7 +211,6 @@ import mapPopover from './mapPopover.vue'
console.log(e,'----eeee------')
}
onMounted(()=>{
if(isMap.value){
AMAPLoader.load({
key:"3b999eeef15d7b6ca6a3fd0c9531160d",
version:"2.0",
@ -282,7 +280,6 @@ import mapPopover from './mapPopover.vue'
map.add(Polygon)
map.setFitView();
})
}
})
onUnmounted(()=>{
window.removeEventListener('click')

177
src/view/mapPopover.vue

@ -1,20 +1,14 @@
<style lang="less">
.el-popover.mapPopover{
box-shadow: 0 0 6px 0 #48b4ff;
border-radius: 0;
height:245px;
background-size:100% 100%;
padding:0!important;
background-color:transparent;
border:none;
position:relative;
&>.content{
position:absolute;
top:0;
left:0;
width:100%;
height:100%;
}
&.company{
height:245px;
box-shadow: 0 0 6px 0 #48b4ff;
.title{
position:absolute;
color:#fff;
@ -23,6 +17,96 @@
left:50%;
transform: translateX(-50%);
}
}
&.goods{
height:189px;
.name{
position:absolute;
color:#057FFB;
font-size:18px;
top: 23px;
left: 82px;
}
.address{
color:#fff;
font-size:16px;
position: absolute;
top: 53px;
left: 124px;
width: 139px;
text-align: center;
}
.vegetable{
position:absolute;
top: 79px;
left: 27px;
width: 277px;
display:flex;
justify-content: space-between;
span{
&:first-child{
color:#99A4AE;
font-size:16px;
}
&:nth-child(2){
color:#fff;
font-weight: bold;
font-size:18px;
&:after{
content:"亩";
color:#99A4AE;
font-size:16px;
font-weight: normal;
}
}
&:nth-child(3){
font-size:16px;
font-weight: bold;
color:#0C7EF0;
&:after{
content:"%";
}
}
}
}
.value{
position:absolute;
display: flex;
justify-content: space-around;
top: 113px;
left: 27px;
width: 277px;
&>div{
color:var(--c);
display:flex;
align-items: center;
.svg-icon{
margin-right:7px;
}
.num{
display:flex;
flex-direction: column;
span{
&:nth-child(2){
font-size:18px;
&:after{
content:"吨";
color:#99A4AE;
font-size:16px;
}
}
}
}
}
}
}
&>.content{
position:absolute;
top:0;
left:0;
width:100%;
height:100%;
}
.plantBS-shangjiantou{
position:absolute;
font-weight: bold;
@ -66,8 +150,8 @@
}
</style>
<template>
<el-popover :visible="show" ref="popover" width="466px" :show-arrow="false" popper-class="mapPopover" trigger="focus" placement="top" :virtual-ref="markerTarget">
<template v-if="false">
<el-popover :visible="show" ref="popover" :width="({'/company':'466px','/goods':'328px'})[$route.path]" :show-arrow="false" :popper-class="`mapPopover ${$route.path.match(/(\w+)$/)[1]}`" trigger="focus" placement="top" :virtual-ref="markerTarget">
<template v-if="$route.path=='/company'">
<svg width="466.000000" height="245.000000" viewBox="0 0 466 245" fill="none" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<rect id="画板 1" width="466.000000" height="245.000000" fill="#020920"/>
<g filter="url(#filter_7_15_dd)">
@ -266,12 +350,75 @@
</div>
</template>
<template v-else>
<svg width="324.000000" height="186.000000" viewBox="0 0 324 186" fill="none" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<path id="矢量 42" d="M6 5.5L6 178M0 171L317 171" stroke="#057FFB"/>
<g filter="url(#filter_17_4_dd)">
<path id="矢量 43" d="M12.5 8L12.5 166.5L317 166.5L317 8L120.5 8L115 15.5L38 15.5L32.5 8L12.5 8Z" fill-rule="evenodd" fill="#001625"/>
<path id="矢量 43" d="M12.5 166.5L317 166.5L317 8L120.5 8L115 15.5L38 15.5L32.5 8L12.5 8L12.5 166.5Z" stroke="#057FFB"/>
</g>
<path id="矢量 44" d="M9 9.5L9 4.5L35.5 4.5L39 11.5L112.5 11.5L116 4.5L313 4.5" stroke="#057FFB"/>
<circle id="椭圆 2" cx="319.500000" cy="4.000000" r="3.500000" stroke="#057FFB"/>
<rect id="矩形 4" x="28.500000" y="36.000000" width="41.000000" height="33.000000" fill="#057FFB"/>
<path id="矢量 45" d="M32.5 33L26.5 33L26.5 39" stroke="#057FFB"/>
<path id="矢量 46" d="M66.5 71L72.5 71L72.5 65" stroke="#057FFB"/>
<path id="矢量 47" d="M57 28L77.5 28L77.5 51L303 51L303 61.5" stroke="#057FFB"/>
<path id="矢量 48" d="M98.5 60L103 65L98.5 70" stroke="#10C945" stroke-width="2.000000" stroke-linejoin="round" stroke-linecap="round"/>
<path id="矢量 49" d="M107.5 60L112 65L107.5 70" stroke="#10C945" stroke-width="2.000000" stroke-linejoin="round" stroke-linecap="round"/>
<path id="矢量 50" d="M116.5 60L121 65L116.5 70" stroke="#10C945" stroke-width="2.000000" stroke-linejoin="round" stroke-linecap="round"/>
<path id="矢量 50" d="M270 60L265.5 65L270 70" stroke="#10C945" stroke-width="2.000000" stroke-linejoin="round" stroke-linecap="round"/>
<path id="矢量 48" d="M288 60L283.5 65L288 70" stroke="#10C945" stroke-width="2.000000" stroke-linejoin="round" stroke-linecap="round"/>
<path id="矢量 49" d="M279 60L274.5 65L279 70" stroke="#10C945" stroke-width="2.000000" stroke-linejoin="round" stroke-linecap="round"/>
<path id="多边形 3" d="M164.601 180.471L158.244 172.051C157.995 171.722 158.23 171.25 158.643 171.25L171.357 171.25C171.77 171.25 172.005 171.722 171.756 172.051L165.399 180.471C165.199 180.736 164.801 180.736 164.601 180.471Z" fill-rule="evenodd" fill="#0C7EF0" fill-opacity="0.300000"/>
<path id="多边形 2" d="M164.601 185.471L158.244 177.051C157.995 176.722 158.23 176.25 158.643 176.25L171.357 176.25C171.77 176.25 172.005 176.722 171.756 177.051L165.399 185.471C165.199 185.736 164.801 185.736 164.601 185.471Z" fill-rule="evenodd" fill="#0C7EF0"/>
<path transform="scale(0.03)" transform-origin="34 38" d="M884.224 834.048h-20.992V381.952c0-17.408-14.336-32.256-32.256-32.256h-157.696c-4.608 0-7.68 3.584-7.68 7.68v476.16h-34.304V172.544c0-24.576-20.48-45.056-45.056-45.056h-373.76c-24.576 0-45.056 20.48-45.056 45.056v661.504h-19.456c-15.872 0-28.672 12.8-28.672 28.672s12.8 28.672 28.672 28.672h736.768c15.872 0 28.672-12.8 28.672-28.672s-13.312-28.672-29.184-28.672zM312.32 310.272h174.592c14.336 0 25.6 11.264 25.6 25.6s-11.264 25.6-25.6 25.6H312.32c-14.336 0-25.6-11.264-25.6-25.6 0.512-14.336 11.776-25.6 25.6-25.6zM312.32 450.56h174.592c14.336 0 25.6 11.264 25.6 25.6s-11.264 25.6-25.6 25.6H312.32c-14.336 0-25.6-11.264-25.6-25.6s11.776-25.6 25.6-25.6z m0 141.312h174.592c14.336 0 25.6 11.264 25.6 25.6s-11.264 25.6-25.6 25.6H312.32c-14.336 0-25.6-11.264-25.6-25.6s11.776-25.6 25.6-25.6z" fill="#fff"></path>
<defs>
<filter id="filter_17_4_dd" x="2.000000" y="-2.500000" width="325.500000" height="179.500000" filterUnits="userSpaceOnUse" color-interpolation-filters="sRGB">
<feFlood flood-opacity="0" result="BackgroundImageFix"/>
<feColorMatrix in="SourceAlpha" type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0"/>
<feOffset dx="0" dy="0"/>
<feGaussianBlur stdDeviation="3.33333"/>
<feColorMatrix type="matrix" values="0 0 0 0 0.047059 0 0 0 0 0.49412 0 0 0 0 0.94118 0 0 0 0.25 0"/>
<feBlend mode="normal" in2="BackgroundImageFix" result="effect_dropShadow_1"/>
<feBlend mode="normal" in="SourceGraphic" in2="effect_dropShadow_1" result="shape"/>
<feColorMatrix in="SourceAlpha" type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0" result="hardAlpha"/>
<feOffset dx="0" dy="0"/>
<feGaussianBlur stdDeviation="10"/>
<feComposite in2="hardAlpha" operator="arithmetic" k2="-1" k3="1"/>
<feColorMatrix type="matrix" values="0 0 0 0 0.047059 0 0 0 0 0.49412 0 0 0 0 0.94118 0 0 0 0.4 0"/>
<feBlend mode="normal" in2="shape" result="effect_innerShadow_2"/>
</filter>
</defs>
</svg>
<div class="content" @click="$emit('click')">
<span class="name">元谋县xxxx果蔬有限公司</span>
<span class="address over">xxxx地块</span>
<div class="vegetable">
<span>黄瓜</span> <span>265</span> <span>15</span>
</div>
<div class="value">
<div style="--c:#0C7EF0;">
<svg-icon name="bar"/>
<div class="num">
<span>预估产量</span>
<span>1256</span>
</div>
</div>
<div style="--c:#10C945;">
<svg-icon name="bar"/>
<div class="num">
<span>已采收</span>
<span>865</span>
</div>
</div>
</div>
</div>
</template>
</el-popover>
</template>
<script setup>
import { nextTick, reactive, ref, unref } from "vue"
import { inject, nextTick, reactive, ref, unref, watch } from "vue"
var route=inject("route")
var show=ref(false)
var markerTarget=ref()
@ -287,6 +434,10 @@ import { nextTick, reactive, ref, unref } from "vue"
align:['center','center','center','center','center'],
})
watch(route,n=>{
show.value=false
})
defineExpose({
show:dom=>{
markerTarget.value={getBoundingClientRect(){return DOMRect.fromRect({

91
src/view/park/center.vue

@ -1,7 +1,10 @@
<style lang="less" scoped>
.center{
flex-grow: 1;
display:flex;
flex-direction: column;
&>.items{
flex-shrink: 0;
display:flex;
align-items: center;
justify-content: space-around;
@ -48,6 +51,9 @@
}
}
}
&>canvas{
flex-grow: 1;
}
}
</style>
<template>
@ -68,9 +74,92 @@
</div>
</div>
</div>
<canvas ref="map"/>
</div>
</template>
<script setup>
import * as THREE from 'three'
import { MapControls } from 'three/examples/jsm/controls/MapControls'
import { onMounted, ref } from 'vue';
import yuanmou from '@/assets/map/yuanmou.json'
var map=ref();
var scene,renderer,camera;
function init(){
scene = new THREE.Scene()
renderer = new THREE.WebGLRenderer({ canvas: map.value, antialias: true, alpha: true })
renderer.setPixelRatio(window.devicePixelRatio);
renderer.setSize(map.value.clientWidth, map.value.clientHeight)
camera = new THREE.PerspectiveCamera(40, map.value.clientWidth / map.value.clientHeight, 10, 1000)
camera.position.set(0, 100, 90)
var directionalLight = new THREE.DirectionalLight(0xffffff, 0.6);
directionalLight.position.set(0, 0, 10).normalize();
scene.add(directionalLight);
var ambientLight = new THREE.AmbientLight(0xcccccc, 0.9);
scene.add(ambientLight);
var controls = new MapControls(camera, map.value)
}
function addMap(){
var shape = new THREE.Shape()
shape.moveTo(...yuanmou[0])
for (var i of yuanmou.slice(1)){
shape.lineTo(...i)
}
var geometry = new THREE.ExtrudeBufferGeometry( shape, {
depth: 0, //
bevelEnabled: false,
} );
geometry.translate(-101.863986,-25.776215+0.1,0)
geometry.scale(140,140,1)
geometry.rotateX(-Math.PI/2)
var texture = new THREE.TextureLoader().load(require('@/assets/img/yuanmou_line.png'))
texture.wrapS = texture.wrapT = THREE.RepeatWrapping;
texture.repeat.set(2.15, 1.38)
texture.offset.set(-0.53,-0.06)
var material = new THREE.MeshLambertMaterial({
transparent:true,
map:texture,
opacity:0.8,
color:0x0C89FE,
})
var mesh = new THREE.Mesh( geometry, material );
//线
var line = new THREE.LineBasicMaterial({ color: 0x0C89FE })
var side = new THREE.LineSegments( new THREE.EdgesGeometry(geometry,1), line)
mesh.add(side)
//
var bottomGeometry=new THREE.ExtrudeBufferGeometry( shape, {
depth: 3, //
bevelEnabled: false,
} );
bottomGeometry.translate(-101.863986,-25.776215+0.1,-3)
bottomGeometry.scale(140,140,1)
bottomGeometry.rotateX(-Math.PI/2)
var materialUp=new THREE.MeshLambertMaterial({
color:0x000000,
})
var materialSide=new THREE.MeshLambertMaterial({
})
var mesh1=new THREE.Mesh(bottomGeometry,materialUp)
scene.add(mesh)
scene.add(mesh1)
}
function render(){
renderer.render(scene, camera);
requestAnimationFrame(render)
}
onMounted(()=>{
init()
addMap()
render()
})
</script>

2
src/view/park/right_2.vue

@ -81,7 +81,7 @@
<span class="vegetable"><span>四季豆</span></span>
<table>
<tr>
<td>2022<span data-f="">8000</span></td>
<td style="padding-bottom:10px;">2022<span data-f="">8000</span></td>
<td><span data-b="实际产量: " data-f="">8560</span></td>
<td><span data-b="较上年涨幅"/>+0.8%<span class="plantBS-shangsheng up"/></td>
</tr>

Loading…
Cancel
Save