依赖

  • jquery.js
  • raphael.js
  • jquery.json.js
  • shape-path.js

调用方法

本工具的静态成员,使用'd$'或者'FinfoView'访问

  • d$.color

    string笔触颜色

  • d$.current

    object当前选中的对象

  • d$.p

    Object当前页面的画布

    d$.p.map--Paper绘图画布
    d$.p.tools--Paper工具栏画布

  • d$.objs

    Array绘图画布上的对象集合

  • d$.path

    object图形路径集合对象

    从shape-path.js中的FINFO_VIEW_PATH对象获得,事先必须引入shape-path.js

  • d$.event

    object事件监听绑定的函数

  • d$.style

    object预设的几种样式

  • d$.building(p[,inf]),d$.station(p[,inf]),d$.valve(p[,inf])

    绘制普通控件

    返回:building/station/valve对象

    参数:

    ppaper画布

    infobject自定义的数据
    {
      x:x偏移,
      y:y偏移,
      s:缩放比例,
      r:旋转角度,
      fill:填充颜色,
      caption:描述,
      stroke:笔触颜色,
      stroke-width:笔触宽度,
    }

  • d$.buildingico(p1,p2),d$.stationico(p1,p2),d$.valveico(p1,p2),d$.lineico(p1,p2)

    绘制工具栏图标

    返回:building/station/valve/line图标对象

    参数:

    p1paper工具栏画布

    p2paper绘图画布

  • d$.shapeNormal(p,type[,inf])

    绘制普通控件

    返回:shapeNormal对象

    参数:

    ppaper画布

    typestring

    infobject自定义的数据

  • d$.ico(p1,type,p2)

    绘制控件图标

    返回:ShapeIco对象

    参数:

    p1paper工具栏画布

    typestring

    p2object绘图画布

  • d$.setMode(mode)

    笔触颜色

    返回:mode

    参数:

    modestring设置画布显示模式
    可选值:'RO'-只读  'EDIT'-编辑  'SHOW'-展示

  • d$.redraw(infstr)

    根据json字符串重绘map画布上的对象

    返回:object  map画布上对象集合

    参数:

    infstrstringjson字符串

  • d$.paper(container,arg)

    定义画布

    参数:

    containerstring页面容器的id
    argstring指定画布类型,map或tools

  • d$.getPos(obj)

    获得鼠标在容器中的坐标

    返回:object  {x:横坐标,y:纵坐标}

    参数:

    objHtmlElement

Raphael-Paper类的拓展成员

  • getInf()

    获取画布上的对象信息

    返回:string  json字符串

  • setMode(mode)

    设置画布显示模式(不建议使用,这个方法在需要的时候会被自动调用)

    返回:mode

    参数:

    modestring设置画布显示模式
    可选值:'RO'-只读  'EDIT'-编辑  'SHOW'-展示

Raphael-Element类的拓展成员

  • obj

    object所属控件对象的引用

  • trans(flag,arg)

    变换图形

    返回:boolean变换成功返回true,否则返回false

    参数:

    flagstring变换类型,t-位移,s-缩放,r-旋转,c-颜色

    argstringNumberArray变换参数

    eg:
      obj.trans('t',[50,60])-向右平移50像素,向下平移60像素
      obj.trans('s',1.5)-放大为原来的1.5倍
      obj.trans('r',30)-顺时针旋转30度
      obj.trans('c','#fff')-填充为白色

  • reset()

    复位图形

  • draw()

    根据图形data()方法中存放的信息绘制图形,该方法可使被隐藏的图形恢复显示

  • unbindall()

    解除图形所有的事件绑定

  • blur()

    使图形失去焦点

Raphael-Set类的拓展成员

  • blur()

    使set中所有图形失去焦点

ShapeBase类

图形基类,抽象类,已知子类:ShapeNormal,ShapeIco,pipeline

  • shapes

    Set该对象的图形集合

  • type

    string类型

  • remove()

    移除对象

  • databind([arg])

    设置或返回对象绑定的数据

    返回:

    object返回指定key的绑定数据对象,未指定则返回全部

    参数:

    argobject键 或 键值对
    eg:
      obj.databind('key1')->返回键为‘key1’的数据绑定对象
      obj.databind({key1:{caption:'压强A',unit:'帕斯卡',delay:5000,alert:[{max:60,color:'red'}]},key2:null})->设置数据绑定

  • removeDatabind([arg])

    移除全部或某个数据绑定对象

    返回:

    object返回this.data()或者剩余的数据绑定对象(如果有)

    参数:

    argobject键

  • databindexe()

    虚函数,执行绑定数据的查询与显示

  • reset()

    重置图形

  • data([arg])

    设置控件的数据,用法参考jQuery.data()

  • removeData([arg])

    移除控件的数据,用法参考jQuery.removeData()

ShapeNormal类

一般图形控件类,单纯PATH绘制的控件,继承自ShapeBase,已知子类:building,station,valve

  • id

    Number与对象在d$.objs中的下标值相等,从0开始,取决于对象创建顺序与涂层次序

  • shape

    Element图形

  • trans(flag,arg)

    变换图形,参考Element:trans()

  • setMode(mode)

    设置对象的显示模式,参考d$.setMode()

  • databindexe()

    查询并显示对象的绑定数据

ShapeIco类

图标类,继承自ShapeBase,已知子类:building.ico,station.ico,valve.ico,pipeline.ico

  • shape

    Element图形

building,station,valve类

直接创建相应控件,继承自ShapeNormal

building.ico,station.ico,valve.ico,pipeline.ico类

直接创建相应图标,并设置显示位置,绑定单击事件,继承自ShapeIco

pipeline类

管线类,继承自ShapeBase

  • line

    Set管线图形集合

  • points

    Set节点图形集合

  • id

    Number参考ShapeNormal:id

  • path

    string管线路径

  • flow_flag

    Element标识管线流向的标记

  • setMode(mode)

    设置管线显示模式并绑定相应事件监听,参考d$.setMode()

  • redraw(arg)

    根据参数重绘一条管线

    参数:

    argobject
    {
      color:#fff,//颜色
      stroke_width:10,//宽度
      points:[{x:10,y:10},{x:20,y:30}]//节点坐标数组
    }

  • con(c)

    这是个什么方法呢,你猜

  • trans(flag, arg)

    调整管线的颜色或者宽度

    参数:

    flagstring

    argstringNumber

    eg:
      obj.trans('c','#000')->设置管线为黑色
      obj.trans('s',20)->设置管线宽度为20

  • flow([dir])

    标记管线流向

    参数:

    dirNumber大于0正向,小于0逆向,0或者空 取消标记

  • reset()

    覆盖父类方法,然后啥也不干

关于Raphael开发过程中的一些总结相关推荐

  1. 嵌入式系统开发过程中遇到的——volatile

    嵌入式 系统开发过程中遇到的-- volatile 对于不同的计算机体系结构,设备可能是端口映射,也可能是内存映射的 .如果系统结构支持独立的 I/O 地址空间,并且是端口映射,就必须使用汇编语言完成 ...

  2. Asp.net开发过程中,我们会遇到很多Exception

    在Asp.net开发过程中,我们会遇到很多Exception,不处理这些Exception的话会出现很难看的页面. 还有一些我们未预料到的Exception,当发生Exception时,我们也必须进行 ...

  3. 项目开发过程中的收获与思考

    2013年7月,我正式毕业了,到公司入职,也就正式成为了一名菜鸟程序员.到今天,2014年1月3日,目前主要的工作是公司一个项目中的一个功能模块,到我进入项目组算起,已经过了四个月了.因此,想写点东西 ...

  4. 小视频开发过程中最关注的两点关键

    小视频凭借它独有的特征在互联网领域获得了属于自己的一席之地,斩获搞笑.游戏.美食等行业后,在教育.财经等方面还拥有更加可观的发展前景.那么,在小视频开发过程中应该怎样结合它的能力实现业务上的突破呢? ...

  5. 人工智能和大数据的开发过程中需要注意这12点

    https://www.toutiao.com/i6636522371094151694/ 2018-12-19 10:16:15 人工智能是近年来科技发展的重要方向,在大数据时代,对数据采集.挖掘. ...

  6. quartusii开发过程中路径不能出现空格或中文

    quartusii开发过程中路径不能出现空格或中文,否则软件出现.stf文件错误提示,开发环境搭建的时候也不能出现空格和中文,否则也会报错.

  7. 对复杂业务组件在实际开发过程中被调用的反思

    写这篇文章的初衷是为了记录我在修复项目中一个复杂业务组件中的bug而引起其他依赖这个组件的功能无法使用的过程中,对使用.维护复杂业务组件的一些思考 原文地址 Bug发生原因 我所在的项目组中, 有一个 ...

  8. 开发过程中快速抓包并解析

    开发过程中快速抓包并解析 这几天小编在工作中遇到了一个灵异事件,客户端使用的是安卓原生系统,服务端使用的是java.需求就是客户端在照相的时候可以实时上传照片.后台接收并保存,并且可以在平台上显示.看 ...

  9. web开发过程中经常用到的一些公共方法及操作

    进化成为程序猿也有段岁月了,所谓的经验,广度还是依旧,只不过是对于某种功能有了多种实现方式的想法.每天依旧不厌其烦的敲打着代码,每一行代码的回车似乎都有一种似曾相识的感觉.于是乎:粘贴复制,再粘贴再复 ...

最新文章

  1. Linux CentOS6.x ip设置(网卡设置)
  2. docker安装clickhouse_Docker中安装ClickHouse,单机、集群、分布式
  3. PageSpeed Insights
  4. Labview-浅谈Labview中VISA的设计
  5. 【杂谈】AI工业界都有哪些值得参加的比赛?
  6. SpringBoot+Redis(实现处理热点数据)
  7. html中%3csvg%3e标签的使用,微信小程序:使用svg
  8. android同步服务启动失败,android – FirebaseCloudMessaging:FirebaseInstanceId后台同步失败 – SERVICE_NOT_AVAILABLE...
  9. JAVA编程思想——读书笔记 多态
  10. 三分钟了解云存储网关 使用场景
  11. android x86显卡驱动,全系列显卡精简版纯驱动(Windows_6.x_VGA_Drivers_lite_x86x64)(2016.09.12)...
  12. 计算机辅助翻译 教学大纲,《计算机辅助翻译》本科课程教学大纲翻译本科
  13. 升级版4850竖曲线
  14. pandas DataFrame 分组求和
  15. 18、弱电锦集:网络视频监控知识问答100例
  16. 光学系统中的几何像差
  17. 深度学习降噪方案-RNNoise简介和环境配置
  18. 安装和配置NFS服务器
  19. 万字长文,Java接地气日常编码技巧
  20. easyui中datagrid表格如何正确显示和隐藏

热门文章

  1. 美术细化专业课程-张聪-专题视频课程
  2. 2年Java开发工作经验面试总结
  3. 一战成名,用户贷款风险预测 参赛代码与数据集分享
  4. excel有安全密码,怎么打开
  5. 平头哥玄铁CPU调试系统介绍
  6. Solidworks如何绘制螺纹
  7. python全栈开发-基本数据类型2 python_day_5
  8. 台式电脑F1F2变成音量键怎么办
  9. 基于Pubmed数据库的蛋白质修饰后的信息挖掘
  10. C#语言基础学习笔记