open-index/open-npm huggingface dataset:
npm package: @gmgis/gm-common
Description: [**🇨🇳 中文**](./README_zh.md) | [**🇬🇧English**](./README.md)
Author: XIN
Latest version: 2.0.1

# GM-SDK

[**🇨🇳 中文**](./README_zh.md) | [**🇬🇧English**](./README.md)

`GM-SDK` is based on the open source project `Cesium` for the second development of two three-dimensional `WebGis` application framework , the framework optimizes the use of `Cesium` and adds some additional features , designed for developers to quickly build `WebGis` application.

```warning
Tips：This SDK is JS+GIS framework package. Developers need to have some front-end technology and GIS related technology
```


## Run examples

```shell
  yarn run build
  yarn run server
```

## Installation

`NPM / YARN` **_`(Recommend)`_**

Installing with NPM or YARN is recommended and it works seamlessly with webpack.

```shell
yarn add @gmgis/gm-sdk
-------------------------
npm install @gmgis/gm-sdk
```

```js
import * as GM from '@gmgis/gm-sdk'
import '@gmgis/gm-sdk/dist/gm.min.css'
```

## Configuration

> The configuration is mainly used in the `NPM / YARN` way

Since the `GM` framework sets `CESIUM_BASE_URL` to `./libs/gm-sdk/resources/` , you need to copy `Cesium` related static resources files: `Assets` , `Workers` , `ThirdParty `to `libs/gm-sdk/resources` directory of the project to ensure that the 3D scene can be rendered properly. You can also use `GM.config.baseUrl` to set the static resource base related to `Cesium` .

`Vue3.x`

[Project Template]()

```js
// vue.config.js
const path = require('path')
const CopywebpackPlugin = require('copy-webpack-plugin')
const gmgisDist = './node_modules/@gmgis'
module.exports = {
  chainWebpack: (config) => {
    config.plugin('copy').use(CopywebpackPlugin, [
      {
        patterns: [
          {
            from: path.join(gmgisDist, 'gm-sdk/dist/resources'),
            to: path.join(__dirname, 'dist', 'libs/gm-sdk/resources'),
          },
        ],
      },
    ])
  },
}
```

`vite`

[Project Template]()

```js
// vite.config.js
import { defineConfig } from 'vite'
import GM from '@gmgis/vite-plugin-gm'

export default defineConfig({
  plugins: [GM()],
})
```


## Start

```js
global.GM = GM
GM.ready({}).then(()=>{
    let viewer = new GM.Viewer()
})
```

## Support

> if gm-sdk can bring benefits to you, please support it ~
npm package: @gmgis/gm-sdk
Description: The SDK is based on Cesium for secondary development of 2, 3D all-in-one WebGis application framework, the framework optimizes the use of Cesium and add some additional features, designed for developers to quickly build WebGis applications.
Author: XIN
Latest version: 2.0.2


[**🇨🇳 中文**](./README_zh.md) | [**🇬🇧English**](./README.md)

`GM-SDK` is based on the open source project `Cesium` for the second development of two three-dimensional `WebGis` application framework , the framework optimizes the use of `Cesium` and adds some additional features , designed for developers to quickly build `WebGis` application.

```warning
Tips：This SDK is JS+GIS framework package. Developers need to have some front-end technology and GIS related technology
```


## Run examples

```shell
  yarn run build
  yarn run server
```

## Installation

`NPM / YARN` **_`(Recommend)`_**

Installing with NPM or YARN is recommended and it works seamlessly with webpack.

```shell
yarn add @gmgis/gm-sdk
-------------------------
npm install @gmgis/gm-sdk
```

```js
import * as GM from '@gmgis/gm-sdk'
import '@gmgis/gm-sdk/dist/gm.min.css'
```

`CDN`

[Resources](https://gitee.com/xin_git/gm-sdk/releases)

```html
<script src="https://cdn.jsdelivr.net/npm/@gmgis/gm-sdk/dist/gm.min.js"></script>
<link
  href="https://cdn.jsdelivr.net/npm/@gmgis/gm-sdk/dist/gm.min.css"
  rel="stylesheet"
  type="text/css"
/>
```

```
Please put the resources in the project root directory libs/gm-sdk, if you put it in other directory, the framework will not run properly.
```

## Configuration

> The configuration is mainly used in the `NPM / YARN` way

Since the `GM` framework sets `CESIUM_BASE_URL` to `./libs/gm-sdk/resources/` , you need to copy `Cesium` related static resources files: `Assets` , `Workers` , `ThirdParty `to `libs/gm-sdk/resources` directory of the project to ensure that the 3D scene can be rendered properly. You can also use `GM.config.baseUrl` to set the static resource base related to `Cesium` .

`Vue3.x`

[Project Template]()

```js
// vue.config.js
const path = require('path')
const CopywebpackPlugin = require('copy-webpack-plugin')
const dvgisDist = './node_modules/@gmgis'
module.exports = {
  chainWebpack: (config) => {
    config.plugin('copy').use(CopywebpackPlugin, [
      {
        patterns: [
          {
            from: path.join(dvgisDist, 'gm-sdk/dist/resources'),
            to: path.join(__dirname, 'dist', 'libs/gm-sdk/resources'),
          },
        ],
      },
    ])
  },
}
```

`vite`

[Project Template]()

```js
// vite.config.js
import { defineConfig } from 'vite'
import GM from '@gmgis/vite-plugin-gm'

export default defineConfig({
  plugins: [GM()],
})
```


## Start

```js
global.GM = GM
GM.ready({}).then(()=>{
    let viewer = new GM.Viewer()
})
```

## Support

> if gm-sdk can bring benefits to you, please support it ~