UNPKG

clay-core

Version:

Provide a more friendly web-side drawing interface!

119 lines (83 loc) 4.99 kB
[clay.js / core](https://yelloxing.github.io/clay-core/doc/) - Provide a more friendly web-side drawing interface ================================================== [![travis](https://www.travis-ci.org/yelloxing/clay-core.svg?branch=master)](https://www.travis-ci.org/yelloxing/clay-core) [![chat](https://github.com/yelloxing/clay-core/blob/master/data/chat.svg)](https://github.com/yelloxing/clay-core/issues) 我们的目标是:提供更友好的web端绘图接口。 <img align="right" height="100" src="https://github.com/yelloxing/clay-core/blob/master/clay.png"> **** ### 作者:心叶 ### 邮箱:yelloxing@gmail.com **** - 温馨提示:本项目已经停止更新,clay.js系列项目都已经转移到[image2D](https://github.com/yelloxing/image2D)中去,期待你的加入! 关注的问题 -------------------------------------- 首先,本项目是为了Web端绘图而建立的,如果用更通俗的话说,就是为了方便使用HTML + CSS + ES绘制各种2D和3D图形,并且绘制的图形是可交互的。 和别的库不同的是,clay.js关注的重点是绘图过程中繁琐的操作和复杂的计算部分,通过提供更友好的操作接口和丰富而基础的计算接口来加速绘图。除此之外,不会也不喜欢强迫使用者改变自己的代码习惯,或者说在尽可能的情况下,保证灵活性。 [![](https://github.com/yelloxing/clay-core/blob/master/doc/images/clay-readme.jpg)](https://yelloxing.github.io/clay-core/doc/) 项目关系 -------------------------------------- clay.js是一个在浏览器端绘图的一个项目集的称呼,其中有很多项目,下面分别说明一下: * [clay.js / core](https://yelloxing.github.io/clay-core/doc/) - 也就是本项目,主要是浏览器端绘图的基本接口,只要是使用本系列绘图,大部分情况下,都应该引入本项目。 * [clay.js / 2d](https://github.com/yelloxing/clay-2d) - 主要提供绘制二维图形的快捷接口,比如扇形等,引入本项目以后,基本的二维图形的绘制将不再麻烦。 * [clay.js / chart](https://github.com/yelloxing/clay-chart) - 主要是图表绘制问题,比如绘制饼状图、树图等,你可以认为,这是一个数据可视化相关的计算库。 开源初衷 -------------------------------------- 始终秉承着开源的初衷,任何有益的建议或设计都是被鼓励作为新的代码贡献进来的。加入我们前,请先阅读[相关基本说明](https://github.com/yelloxing/clay-core/blob/master/.github/CONTRIBUTING.md)和[接口文档API](https://yelloxing.github.io/clay-core/doc)了解基本情况。如果仍有疑惑,可以发送作者邮箱询问细节。 如何使用? -------------------------------------- 如果你开发的是一个web项目,直接在页面引入打包后的文件后即可: ```html <script src="./build/clay-core.min.js" type="text/javascript"></script> ``` 如果你想通过npm方式管理,首先你需要通过命令行安装clay.js: ```bash npm install --save clay-core ``` 安装好了,可以这样调用: ```js import clay from 'clay-core'; // 基本配置(可以不配置,使用默认值) clay.config(...); ... // 导出,供别的模块使用(如果没有配置,别的模块重新import也一样) export default clay; ``` 如果你是使用npm方式管理的,除了导入全局clay外,你还可以导入你需要的接口,下面列出全部可导入接口: ```js import { // 全局变量 clay, $$, // 布局 treeLayout, // 坐标变换 rotate, move, scale, // 曲线插值 hermite, cardinal, catmullRom, // Matrix4矩阵 Matrix4, // 地球坐标映射 map, // 轮询 animation, loop } from 'clay-core'; ``` 如何在本地搭建开发环境? -------------------------------------- 把代码Clone到本地: ```bash git clone git://github.com/yelloxing/clay-core.git ``` 进入项目目录,安装打包文件: ```bash cd clay-core && npm install ``` 安装好以后就可以进行开发了,修改代码以后,应该启动打包程序: ```bash npm run release ``` 除非特殊情况,每一个新开发的功能都应该添加单元测试和基准测试,无法提供单元测试的应该添加用例。 单元测试位于test/unit,基准测试位于test/benchmark,用例位于test/use-case。 对于单元测试,如果是新添加的html页面,应该在Gruntfile.js里最后部分添加引用(每次发布代码到Github的时候会自动报告是否存在问题),本地直接在目标浏览器中打开对应html页面即可查看测试结果。 ### 免责声明 * 项目中部分数据(如图片等)来自互联网,如果侵犯到对应权益者请联系我们,方便我们及时删除! *   本项目保留贡献者全部权利,发生的任何纠纷,本项目作者和维护人概不负责,如有侵权,请及时和我们取得联系。