You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

README_zh.md 7.6KB

4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
3 years ago
3 years ago
3 years ago
3 years ago
4 years ago
4 years ago
4 years ago
3 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238
  1. # DC-SDK
  2. <p>
  3. <img src="https://img.shields.io/github/actions/workflow/status/dvgis/dc-sdk/build.yml"/>
  4. <img src="https://img.shields.io/badge/license-Apache%202-blue"/>
  5. <a href="https://www.npmjs.com/package/@dvgis/dc-sdk" target="_blank">
  6. <img src="https://img.shields.io/npm/v/@dvgis/dc-sdk?color=orange&logo=npm" />
  7. </a>
  8. <a href="https://www.npmjs.com/package/@dvgis/dc-sdk" target="_blank">
  9. <img src="https://img.shields.io/npm/dt/@dvgis/dc-sdk?logo=npm"/>
  10. </a>
  11. <a href="https://resource.dvgis.cn/dc-docs/v2.x/zh" target="_blank">
  12. <img src="https://img.shields.io/badge/docs-online-yellow.svg"/>
  13. </a>
  14. <a href="http://dc.dvgis.cn" target="_blank">
  15. <img src="https://img.shields.io/badge/demo-online-red.svg"/>
  16. </a>
  17. </p>
  18. [**🇨🇳 中文**](./README_zh.md) | [**🇬🇧English**](./README.md)
  19. > `DC-SDK` 是基于开源项目 `Cesium` 进行二次开发的二三维一体的 `WebGis` 应用框架,该框架优化了部分 `Cesium` 的使用方式和增添一些通用功能,旨在为开发者快速构建 `WebGis` 应用。
  20. ```warning
  21. Tips:本框架是 JS+GIS 的框架包。开发者需要有一定的前端技术和 GIS 相关技术
  22. ```
  23. ## 运行示例
  24. ```shell
  25. yarn run build
  26. yarn run server
  27. ```
  28. ## 安装
  29. `NPM / YARN` **_`(推荐使用)`_**
  30. NPM / YARN 的方式安装,它能更好地和 `webpack` 打包工具配合使用。
  31. ```shell
  32. yarn add @dvgis/dc-sdk
  33. -------------------------
  34. npm install @dvgis/dc-sdk
  35. ```
  36. ```js
  37. import DC from '@dvgis/dc-sdk/dist/dc.base.min' //基础包
  38. import DcCore from '@dvgis/dc-sdk/dist/dc.core.min' //核心包
  39. import DcChart from '@dvgis/dc-sdk/dist/dc.chart.min' //chart包
  40. import DcMapv from '@dvgis/dc-sdk/dist/dc.mapv.min' //mapv包
  41. import DcS3M from '@dvgis/dc-sdk/dist/dc.s3m.min' // s3m包
  42. import '@dvgis/dc-sdk/dist/dc.core.min.css' // 主要样式
  43. ```
  44. `NPM / YARN` **_`(按需安装)`_**
  45. ```shell
  46. yarn add @dvgis/dc-base
  47. yarn add @dvgis/dc-core
  48. yarn add @dvgis/dc-chart
  49. yarn add @dvgis/dc-mapv
  50. yarn add @dvgis/dc-s3m
  51. -------------------------
  52. npm install @dvgis/dc-base
  53. npm install @dvgis/dc-core
  54. npm install @dvgis/dc-chart
  55. npm install @dvgis/dc-mapv
  56. npm install @dvgis/dc-s3m
  57. ```
  58. ```js
  59. import DC from '@dvgis/dc-base' //基础包
  60. import DcCore from '@dvgis/dc-core' //核心包
  61. import DcChart from '@dvgis/dc-chart' //chart包
  62. import DcMapv from '@dvgis/dc-mapv' //mapv包
  63. import DcS3M from '@dvgis/dc-s3m' //mapv包
  64. import '@dvgis/dc-core/dist/dc.core.min.css' // 主要样式
  65. ```
  66. `CDN`
  67. [Resources 下载链接](https://github.com/dvgis/dc-sdk/releases)
  68. ```html
  69. <!--基础包-->
  70. <script src="https://cdn.jsdelivr.net/npm/@dvgis/dc-sdk/dist/dc.base.min.js"></script>
  71. <!--核心包-->
  72. <script src="https://cdn.jsdelivr.net/npm/@dvgis/dc-sdk/dist/dc.core.min.js"></script>
  73. <!--chart包-->
  74. <script src="https://cdn.jsdelivr.net/npm/@dvgis/dc-sdk/dist/dc.chart.min.js"></script>
  75. <!--mapv包-->
  76. <script src="https://cdn.jsdelivr.net/npm/@dvgis/dc-sdk/dist/dc.mapv.min.js"></script>
  77. <!--s3m包-->
  78. <script src="https://cdn.jsdelivr.net/npm/@dvgis/dc-sdk/dist/dc.s3m.min.js"></script>
  79. <!--主要样式-->
  80. <link
  81. href="https://cdn.jsdelivr.net/npm/@dvgis/dc-sdk/dist/dc.core.min.css"
  82. rel="stylesheet"
  83. type="text/css"
  84. />
  85. ```
  86. ```
  87. 请将 resources 放置工程根目录 libs/dc-sdk 下,如果放置到其他目录下,框架将无法正常运行
  88. ```
  89. ## 配置
  90. > 配置主要用于 `NPM / YARN` 的方式
  91. 由于 `DC` 框架中将 `CESIUM_BASE_URL` 设置为 `./libs/dc-sdk/resources/` ,这样需将 Cesium 相关的静态资源文件: `Assets` 、`Workers` 、`ThirdParty` 复制到工程的 `libs/dc-sdk/resources` 目录下以保证三维场景能够正常呈现,也可通过 `DC.baseUrl` 进行 `Cesium` 相关的静态资源路基设置
  92. `Webpack`
  93. [工程模板](https://github.com/cavencj/dc-vue-app)
  94. ```js
  95. // webpack.config.js
  96. const path = require('path')
  97. const CopywebpackPlugin = require('copy-webpack-plugin')
  98. const dvgisDist = './node_modules/@dvgis'
  99. module.exports = {
  100. plugins: [
  101. new CopyWebpackPlugin([
  102. {
  103. from: path.join(dvgisDist, 'dc-sdk/dist/resources'),
  104. to: 'libs/dc-sdk/resources',
  105. },
  106. ]),
  107. ],
  108. }
  109. ```
  110. `Vue2.x`
  111. [工程模板](https://github.com/dvgis/dc-vue)
  112. ```js
  113. // vue.config.js
  114. const path = require('path')
  115. const CopywebpackPlugin = require('copy-webpack-plugin')
  116. const dvgisDist = './node_modules/@dvgis'
  117. module.exports = {
  118. // 其他配置
  119. chainWebpack: (config) => {
  120. config.plugin('copy').use(CopywebpackPlugin, [
  121. [
  122. {
  123. from: path.join(dvgisDist, 'dc-sdk/dist/resources'),
  124. to: 'libs/dc-sdk/resources',
  125. },
  126. ],
  127. ])
  128. },
  129. }
  130. ```
  131. `Vue3.x`
  132. [工程模板](https://github.com/dvgis/dc-vue-next)
  133. ```js
  134. // vue.config.js
  135. const path = require('path')
  136. const CopywebpackPlugin = require('copy-webpack-plugin')
  137. const dvgisDist = './node_modules/@dvgis'
  138. module.exports = {
  139. // 其他配置
  140. chainWebpack: (config) => {
  141. config.plugin('copy').use(CopywebpackPlugin, [
  142. {
  143. patterns: [
  144. {
  145. from: path.join(dvgisDist, 'dc-sdk/dist/resources'),
  146. to: path.join(__dirname, 'dist', 'libs/dc-sdk/resources'),
  147. },
  148. ],
  149. },
  150. ])
  151. },
  152. }
  153. ```
  154. ## 开始
  155. ```js
  156. global.DC = DC
  157. DC.use(DcCore) // Node 方式
  158. DC.ready(() => {
  159. let viewer = new DC.Viewer(divId) // divId 为一个div节点的Id属性值,如果不传入,会无法初始化3D场景
  160. })
  161. ```
  162. ## 示例
  163. | ![picture](http://dc.dvgis.cn/examples/images/baselayer/baidu.png?v=3) | ![picture](http://dc.dvgis.cn/examples/images/baselayer/tdt.png?v=2) | ![picture](http://dc.dvgis.cn/examples/images/baselayer/arcgis.png?v=3) | ![picture](http://dc.dvgis.cn/examples/images/mini-scene/china.gif) |
  164. | :-----------------------------------------------------------: | :-----------------------------------------------------------: | :------------------------------------------------------------------: | :--------------------------------------------------------------: |
  165. | ![picture](http://dc.dvgis.cn/examples/images/mini-scene/dfmz.gif) | ![picture](http://dc.dvgis.cn/examples/images/mini-scene/factory.gif?v=1) | ![picture](http://dc.dvgis.cn/examples/images/layer/cluster_circle.gif) | ![picture](http://dc.dvgis.cn/examples/images/model/shp_custom_shader.gif) |
  166. | ![picture](http://dc.dvgis.cn/examples/images/overlay/polyline_image_trail.gif) | ![picture](http://dc.dvgis.cn/examples/images/overlay/wall_trail.gif?v=1) | ![picture](http://dc.dvgis.cn/examples/images/overlay/water.gif?v=2) | ![picture](http://dc.dvgis.cn/examples/images/overlay/plot-overlay.png?v=3) |
  167. [更多>>](http://dc.dvgis.cn/#/examples)
  168. ## QQ 群
  169. <p>
  170. <img src="http://dc.dvgis.cn/examples/images/base/q1.png?v=2" style="width:60px;height:60px" title="数字视觉(已满)"/>
  171. <img src="http://dc.dvgis.cn/examples/images/base/q2.png?v=6" style="width:60px;height:60px" title="Cesium开心农场"/>
  172. <img src="http://dc.dvgis.cn/examples/images/base/q3.png?v=6" style="width:60px;height:60px" title="数字视觉(2群)"/>
  173. </p>
  174. ## 支持
  175. > 如果dc-sdk能够给您带来效益,请支持一下呗~
  176. <p>
  177. <img src="http://dc.dvgis.cn/examples/images/base/sponsor.jpg?v=2" style="width:60px;height:60px" title="数字视觉"/>
  178. </p>
  179. ## 版权声明
  180. ```warning
  181. 1.框架作为一个基础平台,代码开源,任何个人和机构可以修改、重构,无需经过我方授权。
  182. 2.任何个人和机构修改框架出现的问题,我方无需负责。
  183. 3.后期会添加一些行业性的插件和工具,代码会适量开源。
  184. 4.对于我方发布的程序包,任何个人和机构在遵守下列条件的前提下可以永久免费使用:
  185. 1)程序包完整引用;
  186. 2)保留此版权信息在控制台输出
  187. 我方保留对此版权信息的最终解释权。
  188. ```
  189. ## 谢谢