And*_*kas 4 javascript jquery svg jointjs
我想在 Joint JS 中创建一个形状。
我可以初始化,可以说将矩形和圆形作为一种形状。
据我所知,只有路径方法是附近的东西。
我刚刚来了一个答案。我需要扩展joint.dia.Element 类。下面是代码的外观,它绘制了一个带有两个圆圈(扩展名)的矩形:
joint.shapes.basic.myShape = joint.dia.Element.extend({
markup: '<g class="rotatable"><g class="scalable"><rect class="outer"/><circle class="inner"/><circle class="inner1"/></g></g>',
defaults: joint.util.deepSupplement({
type: "basic",
size: {
width: 20,
height: 20
},
attrs: {
".outer": {
stroke: 'black',
'fill-opacity': 1,
width: 10,
height: 15
},
".inner": {
transform: "translate(10, 10)",
r: 8,
fill: "#000000"
},
".inner1": {
transform: "translate(10, 10)",
r: 6,
fill: "#fff"
}
}
}, joint.dia.Element.prototype.defaults)
});
Run Code Online (Sandbox Code Playgroud)
初始化(用于模板,但也可以通过使用 graph.addCell 直接到图形):
var r1 = new joint.shapes.basic.myShape({
size: {
width: 60,
height: 60
}
});
stencilData.load([r1], 'basic');
Run Code Online (Sandbox Code Playgroud)