UNPKG

jointjs

Version:

JavaScript diagramming library

102 lines (86 loc) 2.41 kB
<!DOCTYPE html> <html> <head> <meta charset="utf8"/> <meta name="viewport" content="width=device-width,initial-scale=1.0,maximum-scale=1.0,user-scalable=no"/> <title>dia.Paper - interactive - all enabled</title> <link rel="stylesheet" type="text/css" href="../../../../css/lib/joint.min.css"/> <style> .joint-paper { border: 1px solid gray; width: 800px } body { margin: 0; } </style> </head> <body> <!-- Dependencies: --> <script src="../../../../js/lib/jquery.min.js"></script> <script src="../../../../js/lib/lodash.min.js"></script> <script src="../../../../js/lib/backbone.min.js"></script> <script src="../../../../js/lib/joint.min.js"></script> <script> var graph = new joint.dia.Graph; var paper = new joint.dia.Paper({ el: $('<div/>').appendTo(document.body), width: 380, height: 90, gridSize: 1, model: graph, interactive: true }); var link = new joint.dia.Link({ attrs: { '.marker-source': { d: 'M 10 0 L 0 5 L 10 10 z' }, '.marker-target': { d: 'M 10 0 L 0 5 L 10 10 z' } }, labels: [ { position: { distance: .5, offset: { x: 30, y: 20 } }, attrs: { text: { text: 'label' } } } ], source: { x: 13, y: 44 }, target: { x: 167, y: 36 }, vertices: [{ x: 86, y: 71 }, { x: 87, y: 36 }] }); var Circle = joint.dia.Element.define('i.Circle', { markup: '<g><circle/><text/></g>>', attrs: { circle: { magnet: 'passive', r: 20 }, text: { fill: 'white', fontSize: 8, xAlignment: 'middle', yAlignment: 'middle' } } }); graph.addCell(new Circle() .position(226, 34) .attr('circle/fill', '#333333') ); graph.addCell(new Circle() .position(337, 50) .attr('circle/fill', '#a6a6a6') .attr('circle/r', 30) .attr('circle/magnet', true) .attr('text/text', 'MAGNET') ); graph.addCell(link); </script> </body> </html>