JointJS中文文档

JointJS是一款用于开发流程图和思维导图的强大工具,它包括核心概念如paper和graph,以及API如Paper和Graph的方法。cellView和cell分别处理UI交互和数据存储,link和element表示连线和节点。此外,还介绍了端口(port)、坐标系统以及各种事件监听。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

JointJS中文文档

JointJS是一款功能强大的图形可视化交互工具,可用来开发流程图,思维导图等复杂图形交互应用


核心概念

  • paper和graph

    paper即画布,图形将在paper上绘制
    graph即图形数据,可与paper进行绑定,对graph的修改会即时反映到paper上
    一个graph可与多个paper绑定

  • cellView和cell

    cellView: 视图元素,是paper的基本元素,用来处理UI交互
    cell: 图形元素,是graph的基本元素,用来存储图形元素数据
    cellView可以通过.model属性获取它的cell
    graph其实就是cell的集合

  • link和element

    cell有两种类型,link是连线,element是节点
    他们的视图元素对应为linkView和elementView

  • source和target

    即连线的起点和终点

  • port

    端口,依附于图形节点,可以被连线连接

  • 坐标系统

    client - 相对于浏览器窗口
    page - 相对于body
    local - 图形绝对坐标
    paper - 图形画布坐标 (画布是可以移动的,当画布移动时paper坐标会改变,而local坐标不会改变)


The joint namespace

  • joint.dia
    模型(类)库,包含: Paper Graph Cell CellView Element Link 等等
  • joint.shapes
    图形元素样式库,包含多个分组(basic standard custom ...)
    以basic为例,其下有Circle Ellipse Rect Text等多个图形元素

API

Paper option
实例化参数 new joint.dia.Paper(option)
el: 图形容器
model: 图形数据,此处可绑定graph
width: 图形宽度
height: 图形高度
drawGrid: 栅格参考线
gridSize: 参考线密度
background: 背景
defaultLink: 默认连线样式
interactive: 控制元素的交互属性(例如是否可以移动)
Paper prototype method
paper实例方法
  • findViewByModel(model)
    通过model(即cell)寻找到对应的cellView
    
  • getContentBBox()
    获取paper内图形实体(不包含空白)的边界(client坐标)
  • getContentArea()
    获取paper内图形实体(不包含空白)的边界(local坐标)
    
  • paperToLocalPoint(point) or (x, y)
    将paper坐标的point转换成local坐标
    类似的转换: `localToPaperPoint` `pageToLocalPoint` 等等
  • paperToLocalRect(rect)
    将paper坐标的rect转换成local坐标
    类似的: `localToPaperRect` `pageToLocalRect` 等等
    
  • scale(scale) or (sx, sy)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值