@zklogic/draw.io
Version:
Draw.IO - Graph Editor integration in Angular-cli
1 lines • 56.2 kB
JavaScript
function mxArchiMate3Application(n,t,e,o){mxShape.call(this),this.bounds=n,this.fill=t,this.stroke=e,this.strokewidth=null!=o?o:1}function mxArchiMate3Component(n,t,e,o){mxShape.call(this),this.bounds=n,this.fill=t,this.stroke=e,this.strokewidth=null!=o?o:1}function mxArchiMate3Collaboration(n,t,e,o){mxShape.call(this),this.bounds=n,this.fill=t,this.stroke=e,this.strokewidth=null!=o?o:1}function mxArchiMate3Interface(n,t,e,o){mxShape.call(this),this.bounds=n,this.fill=t,this.stroke=e,this.strokewidth=null!=o?o:1}function mxArchiMate3Process(n,t,e,o){mxShape.call(this),this.bounds=n,this.fill=t,this.stroke=e,this.strokewidth=null!=o?o:1}function mxArchiMate3Function(n,t,e,o){mxShape.call(this),this.bounds=n,this.fill=t,this.stroke=e,this.strokewidth=null!=o?o:1}function mxArchiMate3Interaction(n,t,e,o){mxShape.call(this),this.bounds=n,this.fill=t,this.stroke=e,this.strokewidth=null!=o?o:1}function mxArchiMate3Service(n,t,e,o){mxShape.call(this),this.bounds=n,this.fill=t,this.stroke=e,this.strokewidth=null!=o?o:1}function mxArchiMate3Requirement(n,t,e,o){mxShape.call(this),this.bounds=n,this.fill=t,this.stroke=e,this.strokewidth=null!=o?o:1}function mxArchiMate3Constraint(n,t,e,o){mxShape.call(this),this.bounds=n,this.fill=t,this.stroke=e,this.strokewidth=null!=o?o:1}function mxArchiMate3Event(n,t,e,o){mxShape.call(this),this.bounds=n,this.fill=t,this.stroke=e,this.strokewidth=null!=o?o:1}function mxArchiMate3Event2(n,t,e,o){mxShape.call(this),this.bounds=n,this.fill=t,this.stroke=e,this.strokewidth=null!=o?o:1}function mxArchiMate3Actor(n,t,e,o){mxShape.call(this),this.bounds=n,this.fill=t,this.stroke=e,this.strokewidth=null!=o?o:1}function mxArchiMate3Role(n,t,e,o){mxShape.call(this),this.bounds=n,this.fill=t,this.stroke=e,this.strokewidth=null!=o?o:1}function mxArchiMate3BusinessObject(n,t,e,o){mxShape.call(this),this.bounds=n,this.fill=t,this.stroke=e,this.strokewidth=null!=o?o:1}function mxArchiMate3Contract(n,t,e,o){mxShape.call(this),this.bounds=n,this.fill=t,this.stroke=e,this.strokewidth=null!=o?o:1}function mxArchiMate3Product(n,t,e,o){mxShape.call(this),this.bounds=n,this.fill=t,this.stroke=e,this.strokewidth=null!=o?o:1}function mxArchiMate3Representation(n,t,e,o){mxShape.call(this),this.bounds=n,this.fill=t,this.stroke=e,this.strokewidth=null!=o?o:1}function mxArchiMate3Deliverable(n,t,e,o){mxShape.call(this),this.bounds=n,this.fill=t,this.stroke=e,this.strokewidth=null!=o?o:1}function mxArchiMate3Location(n,t,e,o){mxShape.call(this),this.bounds=n,this.fill=t,this.stroke=e,this.strokewidth=null!=o?o:1}function mxArchiMate3Gap(n,t,e,o){mxShape.call(this),this.bounds=n,this.fill=t,this.stroke=e,this.strokewidth=null!=o?o:1}function mxArchiMate3Tech(n,t,e,o){mxShape.call(this),this.bounds=n,this.fill=t,this.stroke=e,this.strokewidth=null!=o?o:1}function mxArchiMate3Distribution(n,t,e,o){mxShape.call(this),this.bounds=n,this.fill=t,this.stroke=e,this.strokewidth=null!=o?o:1}function mxArchiMate3Resource(n,t,e,o){mxShape.call(this),this.bounds=n,this.fill=t,this.stroke=e,this.strokewidth=null!=o?o:1}function mxArchiMate3Capability(n,t,e,o){mxShape.call(this),this.bounds=n,this.fill=t,this.stroke=e,this.strokewidth=null!=o?o:1}function mxArchiMate3Course(n,t,e,o){mxShape.call(this),this.bounds=n,this.fill=t,this.stroke=e,this.strokewidth=null!=o?o:1}function mxArchiMate3Node(n,t,e,o){mxShape.call(this),this.bounds=n,this.fill=t,this.stroke=e,this.strokewidth=null!=o?o:1}function mxArchiMate3Device(n,t,e,o){mxShape.call(this),this.bounds=n,this.fill=t,this.stroke=e,this.strokewidth=null!=o?o:1}function mxArchiMate3SysSw(n,t,e,o){mxShape.call(this),this.bounds=n,this.fill=t,this.stroke=e,this.strokewidth=null!=o?o:1}function mxArchiMate3Artifact(n,t,e,o){mxShape.call(this),this.bounds=n,this.fill=t,this.stroke=e,this.strokewidth=null!=o?o:1}function mxArchiMate3CommNetw(n,t,e,o){mxShape.call(this),this.bounds=n,this.fill=t,this.stroke=e,this.strokewidth=null!=o?o:1}function mxArchiMate3Path(n,t,e,o){mxShape.call(this),this.bounds=n,this.fill=t,this.stroke=e,this.strokewidth=null!=o?o:1}mxUtils.extend(mxArchiMate3Application,mxShape),mxArchiMate3Application.prototype.cst={APPLICATION:"mxgraph.archimate3.application",TYPE:"appType",COMPONENT:"comp",COLLABORATION:"collab",INTERFACE:"interface",INTERFACE2:"interface2",LOCATION:"location",FUNCTION:"func",INTERACTION:"interaction",SERVICE:"serv",EVENT:"event",EVENT2:"event2",NODE:"node",NETWORK:"netw",COMM_PATH:"commPath",ACTOR:"actor",ASSESSMENT:"assess",GOAL:"goal",OUTCOME:"outcome",ROLE:"role",PROCESS:"proc",DRIVER:"driver",PRINCIPLE:"principle",REQUIREMENT:"requirement",CONSTRAINT:"constraint",RESOURCE:"resource",CAPABILITY:"capability",COURSE:"course",MATERIAL:"material",DISTRIBUTION:"distribution",SYS_SW:"sysSw",ARTIFACT:"artifact",PATH:"path",ARCHI_TYPE:"archiType",TYPE_SQUARE:"square",TYPE_ROUNDED:"rounded",TYPE_OCT:"oct"},mxArchiMate3Application.prototype.customProperties=[{name:"archiType",dispName:"Type",type:"enum",enumList:[{val:"square",dispName:"Square"},{val:"rounded",dispName:"Rounded"},{val:"oct",dispName:"Octagonal"}]},{name:"appType",dispName:"App Type",type:"enum",enumList:[{val:"comp",dispName:"Component"},{val:"collab",dispName:"Collaboration"},{val:"interface",dispName:"Interface"},{val:"interface2",dispName:"Interface2"},{val:"func",dispName:"Function"},{val:"interaction",dispName:"Interaction"},{val:"location",dispName:"Location"},{val:"serv",dispName:"Service"},{val:"event",dispName:"Event"},{val:"event2",dispName:"Event2"},{val:"node",dispName:"Node"},{val:"netw",dispName:"Network"},{val:"commPath",dispName:"Comm Path"},{val:"actor",dispName:"Actor"},{val:"assess",dispName:"Assessment"},{val:"goal",dispName:"Goal"},{val:"outcome",dispName:"Outcome"},{val:"role",dispName:"Role"},{val:"proc",dispName:"Process"},{val:"driver",dispName:"Driver"},{val:"principle",dispName:"Principle"},{val:"requirement",dispName:"Requirement"},{val:"constraint",dispName:"Constraint"},{val:"resource",dispName:"Resource"},{val:"capability",dispName:"Capability"},{val:"course",dispName:"Course"},{val:"material",dispName:"Material"},{val:"distribution",dispName:"Distribution"},{val:"sysSw",dispName:"System Sw"},{val:"artifact",dispName:"Artifact"},{val:"path",dispName:"Path"}]}],mxArchiMate3Application.prototype.paintVertexShape=function(n,t,e,o,i){n.translate(t,e),this.background(n,0,0,o,i),n.setShadow(!1),n.translate(o-20,5),this.foreground(n,o-20,5,15,15)},mxArchiMate3Application.prototype.background=function(n,t,e,o,i){var r=mxUtils.getValue(this.style,mxArchiMate3Application.prototype.cst.ARCHI_TYPE,"square");"rounded"===r?n.roundrect(0,0,o,i,10,10):"oct"===r&&o>=20&&i>=20?(n.begin(),n.moveTo(0,10),n.lineTo(10,0),n.lineTo(o-10,0),n.lineTo(o,10),n.lineTo(o,i-10),n.lineTo(o-10,i),n.lineTo(10,i),n.lineTo(0,i-10),n.close(),n.fillAndStroke()):n.rect(0,0,o,i),n.fillAndStroke()},mxArchiMate3Application.prototype.foreground=function(n,t,e,o,i){var r=mxUtils.getValue(this.style,mxArchiMate3Application.prototype.cst.TYPE,"");if(n.setDashed(!1),r===mxArchiMate3Application.prototype.cst.COMPONENT)n.translate(1,0),o-=2,mxArchiMate3Component.prototype.background(n,t,e,o,i);else if(r===mxArchiMate3Application.prototype.cst.COLLABORATION)n.translate(0,3),i-=6,mxArchiMate3Collaboration.prototype.background(n,t,e,o,i);else if(r===mxArchiMate3Application.prototype.cst.INTERFACE)n.translate(0,4),i-=8,mxArchiMate3Interface.prototype.background(n,t,e,o,i);else if(r===mxArchiMate3Application.prototype.cst.INTERFACE2)n.translate(0,1),i-=2,n.begin(),n.moveTo(0,.5*i),n.lineTo(.6*o,.5*i),n.moveTo(o,0),n.arcTo(.4*o,.5*i,0,0,0,o,i),n.stroke();else if(r===mxArchiMate3Application.prototype.cst.FUNCTION)mxArchiMate3Function.prototype.background(n,t,e,o,i);else if(r===mxArchiMate3Application.prototype.cst.INTERACTION)mxArchiMate3Interaction.prototype.background(n,t,e,o,i);else if(r===mxArchiMate3Application.prototype.cst.LOCATION)n.translate(3,0),o-=6,n.begin(),n.moveTo(.5*o,i),n.arcTo(.1775*o,.3*i,0,0,0,.345*o,.7*i),n.arcTo(.538*o,.364*i,0,0,1,.5*o,0),n.arcTo(.538*o,.364*i,0,0,1,.655*o,.7*i),n.arcTo(.1775*o,.3*i,0,0,0,.5*o,i),n.stroke();else if(r===mxArchiMate3Application.prototype.cst.SERVICE)n.translate(0,3),i-=6,mxArchiMate3Service.prototype.background(n,t,e,o,i);else if(r===mxArchiMate3Application.prototype.cst.EVENT)n.translate(0,3),i-=6,mxArchiMate3Event.prototype.background(n,t,e,o,i);else if(r===mxArchiMate3Application.prototype.cst.EVENT2)n.translate(0,3),i-=6,mxArchiMate3Event2.prototype.background(n,t,e,o,i);else if(r===mxArchiMate3Application.prototype.cst.NODE)mxArchiMate3Node.prototype.background(n,t,e,o,i);else if(r===mxArchiMate3Application.prototype.cst.NETWORK){n.translate(0,2),i-=4,n.begin(),n.moveTo(.4*o,.2*i),n.lineTo(.85*o,.2*i),n.lineTo(.6*o,.8*i),n.lineTo(.15*o,.8*i),n.close(),n.stroke();var a=mxUtils.getValue(this.style,mxConstants.STYLE_STROKECOLOR,"#000000");n.setFillColor(a),n.ellipse(.25*o,0,.3*o,.4*i),n.fill(),n.ellipse(.7*o,0,.3*o,.4*i),n.fill(),n.ellipse(0,.6*i,.3*o,.4*i),n.fill(),n.ellipse(.45*o,.6*i,.3*o,.4*i),n.fill()}else r===mxArchiMate3Application.prototype.cst.COMM_PATH?(n.translate(0,5),i-=10,n.begin(),n.moveTo(.1*o,0),n.lineTo(0,.5*i),n.lineTo(.1*o,i),n.moveTo(.9*o,0),n.lineTo(o,.5*i),n.lineTo(.9*o,i),n.stroke(),n.setDashed(!0),n.begin(),n.moveTo(0,.5*i),n.lineTo(o,.5*i),n.stroke()):r===mxArchiMate3Application.prototype.cst.ARTIFACT?(n.translate(2,0),o-=4,n.begin(),n.moveTo(0,0),n.lineTo(.7*o,0),n.lineTo(o,.22*i),n.lineTo(o,i),n.lineTo(0,i),n.close(),n.moveTo(.7*o,0),n.lineTo(.7*o,.22*i),n.lineTo(o,.22*i),n.stroke()):r===mxArchiMate3Application.prototype.cst.ACTOR?(n.translate(3,0),o-=6,mxArchiMate3Actor.prototype.background(n,t,e,o,i)):r===mxArchiMate3Application.prototype.cst.ROLE?(n.translate(0,4),i-=8,mxArchiMate3Role.prototype.background(n,t,e,o,i)):r===mxArchiMate3Application.prototype.cst.PROCESS?(n.translate(0,3),i-=6,mxArchiMate3Process.prototype.background(n,t,e,o,i)):r===mxArchiMate3Application.prototype.cst.DRIVER?(n.ellipse(.1*o,.1*i,.8*o,.8*i),n.stroke(),n.begin(),n.moveTo(0,.5*i),n.lineTo(o,.5*i),n.moveTo(.5*o,0),n.lineTo(.5*o,i),n.moveTo(.145*o,.145*i),n.lineTo(.855*o,.855*i),n.moveTo(.145*o,.855*i),n.lineTo(.855*o,.145*i),n.stroke(),a=mxUtils.getValue(this.style,mxConstants.STYLE_STROKECOLOR,"#000000"),n.setFillColor(a),n.ellipse(.35*o,.35*i,.3*o,.3*i),n.fillAndStroke()):r===mxArchiMate3Application.prototype.cst.ASSESSMENT?(n.ellipse(.2*o,0,.8*o,.8*i),n.stroke(),n.begin(),n.moveTo(0,i),n.lineTo(.32*o,.68*i),n.stroke()):r===mxArchiMate3Application.prototype.cst.GOAL?(n.ellipse(0,0,o,i),n.stroke(),n.ellipse(.15*o,.15*i,.7*o,.7*i),n.stroke(),a=mxUtils.getValue(this.style,mxConstants.STYLE_STROKECOLOR,"#000000"),n.setFillColor(a),n.ellipse(.3*o,.3*i,.4*o,.4*i),n.fillAndStroke()):r===mxArchiMate3Application.prototype.cst.OUTCOME?(n.ellipse(0,.2*o,.8*o,.8*i),n.stroke(),n.ellipse(.15*o,.35*o,.5*o,.5*i),n.stroke(),n.ellipse(.3*o,.5*o,.2*o,.2*i),n.stroke(),n.begin(),n.moveTo(.4*o,.6*i),n.lineTo(.9*o,.1*i),n.moveTo(.42*o,.4*i),n.lineTo(.4*o,.6*i),n.lineTo(.6*o,.58*i),n.moveTo(.8*o,0),n.lineTo(.75*o,.25*i),n.lineTo(o,.2*i),n.stroke()):r===mxArchiMate3Application.prototype.cst.PRINCIPLE?(n.begin(),n.moveTo(.05*o,.05*i),n.arcTo(2.3*o,2.3*i,0,0,1,.95*o,.05*i),n.arcTo(2.3*o,2.3*i,0,0,1,.95*o,.95*i),n.arcTo(2.3*o,2.3*i,0,0,1,.05*o,.95*i),n.arcTo(2.3*o,2.3*i,0,0,1,.05*o,.05*i),n.close(),n.stroke(),a=mxUtils.getValue(this.style,mxConstants.STYLE_STROKECOLOR,"#000000"),n.setFillColor(a),n.begin(),n.moveTo(.45*o,.7*i),n.lineTo(.42*o,.15*i),n.lineTo(.58*o,.15*i),n.lineTo(.55*o,.7*i),n.close(),n.fill(),n.rect(.45*o,.75*i,.1*o,.1*i),n.fill()):r===mxArchiMate3Application.prototype.cst.REQUIREMENT?(n.translate(0,4),i-=8,mxArchiMate3Requirement.prototype.background(n,t,e,o,i)):r===mxArchiMate3Application.prototype.cst.CONSTRAINT?(n.translate(0,4),i-=8,mxArchiMate3Constraint.prototype.background(n,t,e,o,i)):r===mxArchiMate3Application.prototype.cst.MATERIAL?(n.translate(0,1),i-=2,n.begin(),n.moveTo(0,.5*i),n.lineTo(.25*o,0),n.lineTo(.75*o,0),n.lineTo(o,.5*i),n.lineTo(.75*o,i),n.lineTo(.25*o,i),n.close(),n.moveTo(.15*o,.5*i),n.lineTo(.31*o,.2*i),n.moveTo(.69*o,.2*i),n.lineTo(.85*o,.5*i),n.moveTo(.68*o,.8*i),n.lineTo(.32*o,.8*i),n.stroke()):r===mxArchiMate3Application.prototype.cst.DISTRIBUTION?(n.translate(0,4),i-=8,mxArchiMate3Distribution.prototype.background(n,t,e,o,i)):r===mxArchiMate3Application.prototype.cst.RESOURCE?(n.translate(0,1),i-=2,mxArchiMate3Resource.prototype.background(n,t,e,o,i)):r===mxArchiMate3Application.prototype.cst.CAPABILITY?mxArchiMate3Capability.prototype.background(n,t,e,o,i):r===mxArchiMate3Application.prototype.cst.COURSE?mxArchiMate3Course.prototype.background(n,t,e,o,i):r===mxArchiMate3Application.prototype.cst.SYS_SW?mxArchiMate3SysSw.prototype.background(n,t,e,o,i):r===mxArchiMate3Application.prototype.cst.ARTIFACT?(n.translate(2,0),o-=4,mxArchiMate3Artifact.prototype.background(n,t,e,o,i)):r===mxArchiMate3Application.prototype.cst.PATH&&(n.translate(0,5),i-=10,mxArchiMate3Path.prototype.background(n,t,e,o,i))},mxCellRenderer.registerShape(mxArchiMate3Application.prototype.cst.APPLICATION,mxArchiMate3Application),mxArchiMate3Application.prototype.getConstraints=function(n,t,e){var o=[],i=mxUtils.getValue(this.style,mxArchiMate3Application.prototype.cst.ARCHI_TYPE,"square");return o.push(new mxConnectionConstraint(new mxPoint(.25,0),!1)),o.push(new mxConnectionConstraint(new mxPoint(.5,0),!1)),o.push(new mxConnectionConstraint(new mxPoint(.75,0),!1)),o.push(new mxConnectionConstraint(new mxPoint(1,.25),!1)),o.push(new mxConnectionConstraint(new mxPoint(1,.5),!1)),o.push(new mxConnectionConstraint(new mxPoint(1,.75),!1)),o.push(new mxConnectionConstraint(new mxPoint(.75,1),!1)),o.push(new mxConnectionConstraint(new mxPoint(.5,1),!1)),o.push(new mxConnectionConstraint(new mxPoint(.25,1),!1)),o.push(new mxConnectionConstraint(new mxPoint(0,.75),!1)),o.push(new mxConnectionConstraint(new mxPoint(0,.5),!1)),o.push(new mxConnectionConstraint(new mxPoint(0,.25),!1)),"rounded"===i?(o.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,2.9,2.9)),o.push(new mxConnectionConstraint(new mxPoint(1,0),!1,null,-2.9,2.9)),o.push(new mxConnectionConstraint(new mxPoint(1,1),!1,null,-2.9,-2.9)),o.push(new mxConnectionConstraint(new mxPoint(0,1),!1,null,2.9,-2.9))):"oct"===i&&t>=20&&e>=20?(o.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,5,5)),o.push(new mxConnectionConstraint(new mxPoint(1,0),!1,null,-5,5)),o.push(new mxConnectionConstraint(new mxPoint(1,1),!1,null,-5,-5)),o.push(new mxConnectionConstraint(new mxPoint(0,1),!1,null,5,-5))):(o.push(new mxConnectionConstraint(new mxPoint(0,0),!1)),o.push(new mxConnectionConstraint(new mxPoint(1,0),!1)),o.push(new mxConnectionConstraint(new mxPoint(1,1),!1)),o.push(new mxConnectionConstraint(new mxPoint(0,1),!1))),o},mxUtils.extend(mxArchiMate3Component,mxShape),mxArchiMate3Component.prototype.cst={COMPONENT:"mxgraph.archimate3.component"},mxArchiMate3Component.prototype.paintVertexShape=function(n,t,e,o,i){n.translate(t,e),this.background(n,0,0,o,i),n.setShadow(!1)},mxArchiMate3Component.prototype.background=function(n,t,e,o,i){n.rect(.25*o,0,.75*o,i),n.fillAndStroke(),n.rect(0,.25*i,.5*o,.15*i),n.fillAndStroke(),n.rect(0,.6*i,.5*o,.15*i),n.fillAndStroke()},mxCellRenderer.registerShape(mxArchiMate3Component.prototype.cst.COMPONENT,mxArchiMate3Component),mxArchiMate3Component.prototype.getConstraints=function(n,t,e){var o=[];return o.push(new mxConnectionConstraint(new mxPoint(.625,0),!1)),o.push(new mxConnectionConstraint(new mxPoint(1,.5),!1)),o.push(new mxConnectionConstraint(new mxPoint(.625,1),!1)),o.push(new mxConnectionConstraint(new mxPoint(0,.325),!1)),o.push(new mxConnectionConstraint(new mxPoint(0,.675),!1)),o.push(new mxConnectionConstraint(new mxPoint(.25,0),!1)),o.push(new mxConnectionConstraint(new mxPoint(1,0),!1)),o.push(new mxConnectionConstraint(new mxPoint(1,1),!1)),o.push(new mxConnectionConstraint(new mxPoint(.25,1),!1)),o},mxUtils.extend(mxArchiMate3Collaboration,mxShape),mxArchiMate3Collaboration.prototype.cst={COLLABORATION:"mxgraph.archimate3.collaboration"},mxArchiMate3Collaboration.prototype.paintVertexShape=function(n,t,e,o,i){n.translate(t,e),this.background(n,0,0,o,i),n.setShadow(!1)},mxArchiMate3Collaboration.prototype.background=function(n,t,e,o,i){n.ellipse(0,0,.6*o,i),n.fillAndStroke(),n.ellipse(.4*o,0,.6*o,i),n.fillAndStroke()},mxCellRenderer.registerShape(mxArchiMate3Collaboration.prototype.cst.COLLABORATION,mxArchiMate3Collaboration),mxArchiMate3Collaboration.prototype.getConstraints=function(n,t,e){var o=[];return o.push(new mxConnectionConstraint(new mxPoint(.11,.11),!1)),o.push(new mxConnectionConstraint(new mxPoint(.5,.125),!1)),o.push(new mxConnectionConstraint(new mxPoint(.89,.11),!1)),o.push(new mxConnectionConstraint(new mxPoint(.11,.89),!1)),o.push(new mxConnectionConstraint(new mxPoint(.5,.875),!1)),o.push(new mxConnectionConstraint(new mxPoint(.89,.89),!1)),o.push(new mxConnectionConstraint(new mxPoint(.3,0),!1)),o.push(new mxConnectionConstraint(new mxPoint(.7,0),!1)),o.push(new mxConnectionConstraint(new mxPoint(.3,1),!1)),o.push(new mxConnectionConstraint(new mxPoint(.7,1),!1)),o.push(new mxConnectionConstraint(new mxPoint(0,.5),!1)),o.push(new mxConnectionConstraint(new mxPoint(1,.5),!1)),o},mxUtils.extend(mxArchiMate3Interface,mxShape),mxArchiMate3Interface.prototype.cst={INTERFACE:"mxgraph.archimate3.interface"},mxArchiMate3Interface.prototype.paintVertexShape=function(n,t,e,o,i){n.translate(t,e),this.background(n,0,0,o,i),n.setShadow(!1)},mxArchiMate3Interface.prototype.background=function(n,t,e,o,i){n.ellipse(.5*o,0,.5*o,i),n.fillAndStroke(),n.begin(),n.moveTo(0,.5*i),n.lineTo(.5*o,.5*i),n.stroke()},mxCellRenderer.registerShape(mxArchiMate3Interface.prototype.cst.INTERFACE,mxArchiMate3Interface),mxArchiMate3Interface.prototype.getConstraints=function(n,t,e){var o=[];return o.push(new mxConnectionConstraint(new mxPoint(0,.5),!1)),o.push(new mxConnectionConstraint(new mxPoint(1,.5),!1)),o.push(new mxConnectionConstraint(new mxPoint(.75,0),!1)),o.push(new mxConnectionConstraint(new mxPoint(.75,1),!1)),o},mxUtils.extend(mxArchiMate3Process,mxShape),mxArchiMate3Process.prototype.cst={PROCESS:"mxgraph.archimate3.process"},mxArchiMate3Process.prototype.paintVertexShape=function(n,t,e,o,i){n.translate(t,e),this.background(n,0,0,o,i),n.setShadow(!1)},mxArchiMate3Process.prototype.background=function(n,t,e,o,i){n.begin(),n.moveTo(0,.3*i),n.lineTo(.6*o,.3*i),n.lineTo(.6*o,0),n.lineTo(o,.5*i),n.lineTo(.6*o,i),n.lineTo(.6*o,.7*i),n.lineTo(0,.7*i),n.close(),n.fillAndStroke()},mxCellRenderer.registerShape(mxArchiMate3Process.prototype.cst.PROCESS,mxArchiMate3Process),mxArchiMate3Process.prototype.getConstraints=function(n,t,e){var o=[];return o.push(new mxConnectionConstraint(new mxPoint(0,.3),!1)),o.push(new mxConnectionConstraint(new mxPoint(.3,.3),!1)),o.push(new mxConnectionConstraint(new mxPoint(.6,.3),!1)),o.push(new mxConnectionConstraint(new mxPoint(.6,0),!1)),o.push(new mxConnectionConstraint(new mxPoint(1,.5),!1)),o.push(new mxConnectionConstraint(new mxPoint(.6,1),!1)),o.push(new mxConnectionConstraint(new mxPoint(.6,.7),!1)),o.push(new mxConnectionConstraint(new mxPoint(.3,.7),!1)),o.push(new mxConnectionConstraint(new mxPoint(0,.7),!1)),o.push(new mxConnectionConstraint(new mxPoint(0,.5),!1)),o},mxUtils.extend(mxArchiMate3Function,mxShape),mxArchiMate3Function.prototype.cst={FUNCTION:"mxgraph.archimate3.function"},mxArchiMate3Function.prototype.paintVertexShape=function(n,t,e,o,i){n.translate(t,e),this.background(n,0,0,o,i),n.setShadow(!1)},mxArchiMate3Function.prototype.background=function(n,t,e,o,i){n.begin(),n.moveTo(.5*o,0),n.lineTo(o,.2*i),n.lineTo(o,i),n.lineTo(.5*o,.8*i),n.lineTo(0,i),n.lineTo(0,.2*i),n.close(),n.fillAndStroke()},mxCellRenderer.registerShape(mxArchiMate3Function.prototype.cst.FUNCTION,mxArchiMate3Function),mxArchiMate3Function.prototype.getConstraints=function(n,t,e){var o=[];return o.push(new mxConnectionConstraint(new mxPoint(.5,0),!1)),o.push(new mxConnectionConstraint(new mxPoint(1,.2),!1)),o.push(new mxConnectionConstraint(new mxPoint(1,.6),!1)),o.push(new mxConnectionConstraint(new mxPoint(1,1),!1)),o.push(new mxConnectionConstraint(new mxPoint(.5,.8),!1)),o.push(new mxConnectionConstraint(new mxPoint(0,1),!1)),o.push(new mxConnectionConstraint(new mxPoint(0,.6),!1)),o.push(new mxConnectionConstraint(new mxPoint(0,.2),!1)),o},mxUtils.extend(mxArchiMate3Interaction,mxShape),mxArchiMate3Interaction.prototype.cst={INTERACTION:"mxgraph.archimate3.interaction"},mxArchiMate3Interaction.prototype.paintVertexShape=function(n,t,e,o,i){n.translate(t,e),this.background(n,0,0,o,i),n.setShadow(!1)},mxArchiMate3Interaction.prototype.background=function(n,t,e,o,i){n.begin(),n.moveTo(.55*o,0),n.arcTo(.45*o,.5*i,0,0,1,.55*o,i),n.close(),n.moveTo(.45*o,0),n.arcTo(.45*o,.5*i,0,0,0,.45*o,i),n.close(),n.fillAndStroke()},mxCellRenderer.registerShape(mxArchiMate3Interaction.prototype.cst.INTERACTION,mxArchiMate3Interaction),mxArchiMate3Interaction.prototype.getConstraints=function(n,t,e){var o=[];return o.push(new mxConnectionConstraint(new mxPoint(.5,0),!1)),o.push(new mxConnectionConstraint(new mxPoint(.86,.14),!1)),o.push(new mxConnectionConstraint(new mxPoint(1,.5),!1)),o.push(new mxConnectionConstraint(new mxPoint(.86,.86),!1)),o.push(new mxConnectionConstraint(new mxPoint(.5,1),!1)),o.push(new mxConnectionConstraint(new mxPoint(.14,.86),!1)),o.push(new mxConnectionConstraint(new mxPoint(0,.5),!1)),o.push(new mxConnectionConstraint(new mxPoint(.14,.14),!1)),o},mxUtils.extend(mxArchiMate3Service,mxShape),mxArchiMate3Service.prototype.cst={SERVICE:"mxgraph.archimate3.service"},mxArchiMate3Service.prototype.paintVertexShape=function(n,t,e,o,i){n.translate(t,e),this.background(n,0,0,o,i),n.setShadow(!1)},mxArchiMate3Service.prototype.background=function(n,t,e,o,i){var r=Math.max(o-.5*i,.5*o),a=Math.min(.5*i,.5*o);n.begin(),n.moveTo(r,0),n.arcTo(.5*i,.5*i,0,0,1,r,i),n.lineTo(a,i),n.arcTo(.5*i,.5*i,0,0,1,a,0),n.close(),n.fillAndStroke()},mxCellRenderer.registerShape(mxArchiMate3Service.prototype.cst.SERVICE,mxArchiMate3Service),mxArchiMate3Service.prototype.getConstraints=function(n,t,e){var o=[],i=Math.max(t-.5*e,.5*t),r=Math.min(.5*e,.5*t);return o.push(new mxConnectionConstraint(new mxPoint(.5,0),!1)),o.push(new mxConnectionConstraint(new mxPoint(.5,1),!1)),o.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,i,0)),o.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,i,e)),o.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,r,e)),o.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,r,0)),o.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,i+.355*e,.145*e)),o.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,i+.5*e,.5*e)),o.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,i+.355*e,.855*e)),o.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,r-.355*e,.145*e)),o.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,r-.5*e,.5*e)),o.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,r-.355*e,.855*e)),o},mxUtils.extend(mxArchiMate3Requirement,mxShape),mxArchiMate3Requirement.prototype.cst={REQUIREMENT:"mxgraph.archimate3.requirement"},mxArchiMate3Requirement.prototype.paintVertexShape=function(n,t,e,o,i){n.translate(t,e),this.background(n,0,0,o,i),n.setShadow(!1)},mxArchiMate3Requirement.prototype.background=function(n,t,e,o,i){n.begin(),n.moveTo(.25*o,0),n.lineTo(o,0),n.lineTo(.75*o,i),n.lineTo(0,i),n.close(),n.fillAndStroke()},mxCellRenderer.registerShape(mxArchiMate3Requirement.prototype.cst.REQUIREMENT,mxArchiMate3Requirement),mxArchiMate3Requirement.prototype.getConstraints=function(n,t,e){var o=[];return o.push(new mxConnectionConstraint(new mxPoint(.25,0),!1)),o.push(new mxConnectionConstraint(new mxPoint(.5,0),!1)),o.push(new mxConnectionConstraint(new mxPoint(.75,0),!1)),o.push(new mxConnectionConstraint(new mxPoint(1,0),!1)),o.push(new mxConnectionConstraint(new mxPoint(.9375,.25),!1)),o.push(new mxConnectionConstraint(new mxPoint(.875,.5),!1)),o.push(new mxConnectionConstraint(new mxPoint(.8125,.75),!1)),o.push(new mxConnectionConstraint(new mxPoint(.75,1),!1)),o.push(new mxConnectionConstraint(new mxPoint(.5,1),!1)),o.push(new mxConnectionConstraint(new mxPoint(.25,1),!1)),o.push(new mxConnectionConstraint(new mxPoint(0,1),!1)),o.push(new mxConnectionConstraint(new mxPoint(.0625,.75),!1)),o.push(new mxConnectionConstraint(new mxPoint(.125,.5),!1)),o.push(new mxConnectionConstraint(new mxPoint(.1875,.25),!1)),o},mxUtils.extend(mxArchiMate3Constraint,mxShape),mxArchiMate3Constraint.prototype.cst={CONSTRAINT:"mxgraph.archimate3.constraint"},mxArchiMate3Constraint.prototype.paintVertexShape=function(n,t,e,o,i){n.translate(t,e),this.background(n,0,0,o,i),n.setShadow(!1)},mxArchiMate3Constraint.prototype.background=function(n,t,e,o,i){n.begin(),n.moveTo(.25*o,0),n.lineTo(o,0),n.lineTo(.75*o,i),n.lineTo(0,i),n.close(),n.moveTo(.45*o,0),n.lineTo(.2*o,i),n.fillAndStroke()},mxCellRenderer.registerShape(mxArchiMate3Constraint.prototype.cst.CONSTRAINT,mxArchiMate3Constraint),mxArchiMate3Constraint.prototype.getConstraints=function(n,t,e){var o=[];return o.push(new mxConnectionConstraint(new mxPoint(.25,0),!1)),o.push(new mxConnectionConstraint(new mxPoint(.5,0),!1)),o.push(new mxConnectionConstraint(new mxPoint(.75,0),!1)),o.push(new mxConnectionConstraint(new mxPoint(1,0),!1)),o.push(new mxConnectionConstraint(new mxPoint(.9375,.25),!1)),o.push(new mxConnectionConstraint(new mxPoint(.875,.5),!1)),o.push(new mxConnectionConstraint(new mxPoint(.8125,.75),!1)),o.push(new mxConnectionConstraint(new mxPoint(.75,1),!1)),o.push(new mxConnectionConstraint(new mxPoint(.5,1),!1)),o.push(new mxConnectionConstraint(new mxPoint(.25,1),!1)),o.push(new mxConnectionConstraint(new mxPoint(0,1),!1)),o.push(new mxConnectionConstraint(new mxPoint(.0625,.75),!1)),o.push(new mxConnectionConstraint(new mxPoint(.125,.5),!1)),o.push(new mxConnectionConstraint(new mxPoint(.1875,.25),!1)),o},mxUtils.extend(mxArchiMate3Event,mxShape),mxArchiMate3Event.prototype.cst={EVENT:"mxgraph.archimate3.event"},mxArchiMate3Event.prototype.paintVertexShape=function(n,t,e,o,i){n.translate(t,e),this.background(n,0,0,o,i),n.setShadow(!1)},mxArchiMate3Event.prototype.background=function(n,t,e,o,i){n.begin(),n.moveTo(o-.5*i,0),n.arcTo(.5*i,.5*i,0,0,1,o-.5*i,i),n.lineTo(0,i),n.lineTo(.5*i,.5*i),n.lineTo(0,0),n.close(),n.fillAndStroke()},mxCellRenderer.registerShape(mxArchiMate3Event.prototype.cst.EVENT,mxArchiMate3Event),mxArchiMate3Event.prototype.getConstraints=function(n,t,e){var o=[];return Math.max(t-.5*e,.5*t),Math.min(.5*e,.5*t),o.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,t-.5*e,0)),o.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,t-.5*e,e)),o.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,0,e)),o.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*e,.5*e)),o.push(new mxConnectionConstraint(new mxPoint(0,0),!1)),o.push(new mxConnectionConstraint(new mxPoint(1,.5),!1)),o.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*(t-.5*e),0)),o.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*(t-.5*e),e)),o},mxUtils.extend(mxArchiMate3Event2,mxShape),mxArchiMate3Event2.prototype.cst={EVENT2:"mxgraph.archimate3.event2"},mxArchiMate3Event2.prototype.paintVertexShape=function(n,t,e,o,i){n.translate(t,e),this.background(n,0,0,o,i),n.setShadow(!1)},mxArchiMate3Event2.prototype.background=function(n,t,e,o,i){n.begin(),n.moveTo(o-.5*i,0),n.arcTo(.5*i,.5*i,0,0,1,o-.5*i,i),n.lineTo(0,i),n.arcTo(.5*i,.5*i,0,0,0,0,0),n.close(),n.fillAndStroke()},mxCellRenderer.registerShape(mxArchiMate3Event2.prototype.cst.EVENT2,mxArchiMate3Event2),mxUtils.extend(mxArchiMate3Actor,mxShape),mxArchiMate3Actor.prototype.cst={ACTOR:"mxgraph.archimate3.actor"},mxArchiMate3Actor.prototype.paintVertexShape=function(n,t,e,o,i){n.translate(t,e),this.background(n,0,0,o,i),n.setShadow(!1)},mxArchiMate3Actor.prototype.background=function(n,t,e,o,i){n.ellipse(.2*o,0,.6*o,.3*i),n.fillAndStroke(),n.begin(),n.moveTo(.5*o,.3*i),n.lineTo(.5*o,.75*i),n.moveTo(0,.45*i),n.lineTo(o,.45*i),n.moveTo(0,i),n.lineTo(.5*o,.75*i),n.lineTo(o,i),n.stroke()},mxCellRenderer.registerShape(mxArchiMate3Actor.prototype.cst.ACTOR,mxArchiMate3Actor),mxArchiMate3Actor.prototype.getConstraints=function(n,t,e){var o=[];return o.push(new mxConnectionConstraint(new mxPoint(.2,.15),!1)),o.push(new mxConnectionConstraint(new mxPoint(.5,0),!1)),o.push(new mxConnectionConstraint(new mxPoint(.8,.15),!1)),o.push(new mxConnectionConstraint(new mxPoint(0,.45),!1)),o.push(new mxConnectionConstraint(new mxPoint(1,.45),!1)),o.push(new mxConnectionConstraint(new mxPoint(0,1),!1)),o.push(new mxConnectionConstraint(new mxPoint(1,1),!1)),o},mxUtils.extend(mxArchiMate3Role,mxShape),mxArchiMate3Role.prototype.cst={ROLE:"mxgraph.archimate3.role"},mxArchiMate3Role.prototype.paintVertexShape=function(n,t,e,o,i){n.translate(t,e),this.background(n,0,0,o,i),n.setShadow(!1)},mxArchiMate3Role.prototype.background=function(n,t,e,o,i){n.begin(),n.moveTo(.8*o,0),n.lineTo(.2*o,0),n.arcTo(.2*o,.5*i,0,0,0,.2*o,i),n.lineTo(.8*o,i),n.fillAndStroke(),n.ellipse(.6*o,0,.4*o,i),n.fillAndStroke()},mxCellRenderer.registerShape(mxArchiMate3Role.prototype.cst.ROLE,mxArchiMate3Role),mxArchiMate3Role.prototype.getConstraints=function(n,t,e){var o=[];return o.push(new mxConnectionConstraint(new mxPoint(.2,0),!1)),o.push(new mxConnectionConstraint(new mxPoint(.5,0),!1)),o.push(new mxConnectionConstraint(new mxPoint(.8,0),!1)),o.push(new mxConnectionConstraint(new mxPoint(1,.5),!1)),o.push(new mxConnectionConstraint(new mxPoint(.8,1),!1)),o.push(new mxConnectionConstraint(new mxPoint(.5,1),!1)),o.push(new mxConnectionConstraint(new mxPoint(.2,1),!1)),o.push(new mxConnectionConstraint(new mxPoint(0,.5),!1)),o},mxUtils.extend(mxArchiMate3BusinessObject,mxShape),mxArchiMate3BusinessObject.prototype.cst={BUSINESS_OBJECT:"mxgraph.archimate3.businessObject"},mxArchiMate3BusinessObject.prototype.paintVertexShape=function(n,t,e,o,i){n.translate(t,e),this.background(n,0,0,o,i),n.setShadow(!1),this.foreground(n,0,0,o,i)},mxArchiMate3BusinessObject.prototype.background=function(n,t,e,o,i){n.rect(0,0,o,i),n.fillAndStroke()},mxArchiMate3BusinessObject.prototype.foreground=function(n,t,e,o,i){i>=15&&(n.begin(),n.moveTo(0,15),n.lineTo(o,15),n.stroke())},mxCellRenderer.registerShape(mxArchiMate3BusinessObject.prototype.cst.BUSINESS_OBJECT,mxArchiMate3BusinessObject),mxArchiMate3BusinessObject.prototype.getConstraints=function(n,t,e){var o=[];return o.push(new mxConnectionConstraint(new mxPoint(0,0),!1)),o.push(new mxConnectionConstraint(new mxPoint(.25,0),!1)),o.push(new mxConnectionConstraint(new mxPoint(.5,0),!1)),o.push(new mxConnectionConstraint(new mxPoint(.75,0),!1)),o.push(new mxConnectionConstraint(new mxPoint(1,0),!1)),o.push(new mxConnectionConstraint(new mxPoint(1,.25),!1)),o.push(new mxConnectionConstraint(new mxPoint(1,.5),!1)),o.push(new mxConnectionConstraint(new mxPoint(1,.75),!1)),o.push(new mxConnectionConstraint(new mxPoint(1,1),!1)),o.push(new mxConnectionConstraint(new mxPoint(.75,1),!1)),o.push(new mxConnectionConstraint(new mxPoint(.5,1),!1)),o.push(new mxConnectionConstraint(new mxPoint(.25,1),!1)),o.push(new mxConnectionConstraint(new mxPoint(0,1),!1)),o.push(new mxConnectionConstraint(new mxPoint(0,.75),!1)),o.push(new mxConnectionConstraint(new mxPoint(0,.5),!1)),o.push(new mxConnectionConstraint(new mxPoint(0,.25),!1)),o},mxUtils.extend(mxArchiMate3Contract,mxShape),mxArchiMate3Contract.prototype.cst={CONTRACT:"mxgraph.archimate3.contract"},mxArchiMate3Contract.prototype.paintVertexShape=function(n,t,e,o,i){n.translate(t,e),this.background(n,0,0,o,i),n.setShadow(!1),this.foreground(n,0,0,o,i)},mxArchiMate3Contract.prototype.background=function(n,t,e,o,i){n.rect(0,0,o,i),n.fillAndStroke()},mxArchiMate3Contract.prototype.foreground=function(n,t,e,o,i){i>=15&&(n.begin(),n.moveTo(0,15),n.lineTo(o,15),n.stroke()),i>=30&&(n.begin(),n.moveTo(0,i-15),n.lineTo(o,i-15),n.stroke())},mxCellRenderer.registerShape(mxArchiMate3Contract.prototype.cst.CONTRACT,mxArchiMate3Contract),mxArchiMate3Contract.prototype.getConstraints=function(n,t,e){var o=[];return o.push(new mxConnectionConstraint(new mxPoint(0,0),!1)),o.push(new mxConnectionConstraint(new mxPoint(.25,0),!1)),o.push(new mxConnectionConstraint(new mxPoint(.5,0),!1)),o.push(new mxConnectionConstraint(new mxPoint(.75,0),!1)),o.push(new mxConnectionConstraint(new mxPoint(1,0),!1)),o.push(new mxConnectionConstraint(new mxPoint(1,.25),!1)),o.push(new mxConnectionConstraint(new mxPoint(1,.5),!1)),o.push(new mxConnectionConstraint(new mxPoint(1,.75),!1)),o.push(new mxConnectionConstraint(new mxPoint(1,1),!1)),o.push(new mxConnectionConstraint(new mxPoint(.75,1),!1)),o.push(new mxConnectionConstraint(new mxPoint(.5,1),!1)),o.push(new mxConnectionConstraint(new mxPoint(.25,1),!1)),o.push(new mxConnectionConstraint(new mxPoint(0,1),!1)),o.push(new mxConnectionConstraint(new mxPoint(0,.75),!1)),o.push(new mxConnectionConstraint(new mxPoint(0,.5),!1)),o.push(new mxConnectionConstraint(new mxPoint(0,.25),!1)),o},mxUtils.extend(mxArchiMate3Product,mxShape),mxArchiMate3Product.prototype.cst={PRODUCT:"mxgraph.archimate3.product"},mxArchiMate3Product.prototype.paintVertexShape=function(n,t,e,o,i){n.translate(t,e),this.background(n,0,0,o,i),n.setShadow(!1),this.foreground(n,0,0,o,i)},mxArchiMate3Product.prototype.background=function(n,t,e,o,i){n.rect(0,0,o,i),n.fillAndStroke()},mxArchiMate3Product.prototype.foreground=function(n,t,e,o,i){i>=15&&(n.begin(),n.moveTo(0,15),n.lineTo(.6*o,15),n.lineTo(.6*o,0),n.stroke())},mxCellRenderer.registerShape(mxArchiMate3Product.prototype.cst.PRODUCT,mxArchiMate3Product),mxArchiMate3Product.prototype.getConstraints=function(n,t,e){var o=[];return o.push(new mxConnectionConstraint(new mxPoint(0,0),!1)),o.push(new mxConnectionConstraint(new mxPoint(.25,0),!1)),o.push(new mxConnectionConstraint(new mxPoint(.5,0),!1)),o.push(new mxConnectionConstraint(new mxPoint(.75,0),!1)),o.push(new mxConnectionConstraint(new mxPoint(1,0),!1)),o.push(new mxConnectionConstraint(new mxPoint(1,.25),!1)),o.push(new mxConnectionConstraint(new mxPoint(1,.5),!1)),o.push(new mxConnectionConstraint(new mxPoint(1,.75),!1)),o.push(new mxConnectionConstraint(new mxPoint(1,1),!1)),o.push(new mxConnectionConstraint(new mxPoint(.75,1),!1)),o.push(new mxConnectionConstraint(new mxPoint(.5,1),!1)),o.push(new mxConnectionConstraint(new mxPoint(.25,1),!1)),o.push(new mxConnectionConstraint(new mxPoint(0,1),!1)),o.push(new mxConnectionConstraint(new mxPoint(0,.75),!1)),o.push(new mxConnectionConstraint(new mxPoint(0,.5),!1)),o.push(new mxConnectionConstraint(new mxPoint(0,.25),!1)),o},mxUtils.extend(mxArchiMate3Representation,mxShape),mxArchiMate3Representation.prototype.cst={REPRESENTATION:"mxgraph.archimate3.representation"},mxArchiMate3Representation.prototype.paintVertexShape=function(n,t,e,o,i){n.translate(t,e),this.background(n,0,0,o,i)},mxArchiMate3Representation.prototype.background=function(n,t,e,o,i){n.begin(),n.moveTo(0,0),n.lineTo(o,0),n.lineTo(o,.85*i),n.arcTo(.35*o,.35*i,0,0,0,.5*o,.85*i),n.arcTo(.35*o,.35*i,0,0,1,0,.85*i),n.close(),n.fillAndStroke(),i>=20&&n.begin(),n.moveTo(0,15),n.lineTo(o,15),n.stroke()},mxCellRenderer.registerShape(mxArchiMate3Representation.prototype.cst.REPRESENTATION,mxArchiMate3Representation),mxArchiMate3Representation.prototype.getConstraints=function(n,t,e){var o=[];return o.push(new mxConnectionConstraint(new mxPoint(0,0),!1)),o.push(new mxConnectionConstraint(new mxPoint(.25,0),!1)),o.push(new mxConnectionConstraint(new mxPoint(.5,0),!1)),o.push(new mxConnectionConstraint(new mxPoint(.75,0),!1)),o.push(new mxConnectionConstraint(new mxPoint(1,0),!1)),o.push(new mxConnectionConstraint(new mxPoint(1,.25),!1)),o.push(new mxConnectionConstraint(new mxPoint(1,.5),!1)),o.push(new mxConnectionConstraint(new mxPoint(1,.75),!1)),o.push(new mxConnectionConstraint(new mxPoint(1,.85),!1)),o.push(new mxConnectionConstraint(new mxPoint(.75,.745),!1)),o.push(new mxConnectionConstraint(new mxPoint(.5,.85),!1)),o.push(new mxConnectionConstraint(new mxPoint(.25,.955),!1)),o.push(new mxConnectionConstraint(new mxPoint(0,.85),!1)),o.push(new mxConnectionConstraint(new mxPoint(0,.75),!1)),o.push(new mxConnectionConstraint(new mxPoint(0,.5),!1)),o.push(new mxConnectionConstraint(new mxPoint(0,.25),!1)),o},mxUtils.extend(mxArchiMate3Deliverable,mxShape),mxArchiMate3Deliverable.prototype.cst={DELIVERABLE:"mxgraph.archimate3.deliverable"},mxArchiMate3Deliverable.prototype.paintVertexShape=function(n,t,e,o,i){n.translate(t,e),this.background(n,0,0,o,i)},mxArchiMate3Deliverable.prototype.background=function(n,t,e,o,i){n.begin(),n.moveTo(0,0),n.lineTo(o,0),n.lineTo(o,.85*i),n.arcTo(.35*o,.35*i,0,0,0,.5*o,.85*i),n.arcTo(.35*o,.35*i,0,0,1,0,.85*i),n.close(),n.fillAndStroke()},mxCellRenderer.registerShape(mxArchiMate3Deliverable.prototype.cst.DELIVERABLE,mxArchiMate3Deliverable),mxArchiMate3Deliverable.prototype.getConstraints=function(n,t,e){var o=[];return o.push(new mxConnectionConstraint(new mxPoint(0,0),!1)),o.push(new mxConnectionConstraint(new mxPoint(.25,0),!1)),o.push(new mxConnectionConstraint(new mxPoint(.5,0),!1)),o.push(new mxConnectionConstraint(new mxPoint(.75,0),!1)),o.push(new mxConnectionConstraint(new mxPoint(1,0),!1)),o.push(new mxConnectionConstraint(new mxPoint(1,.25),!1)),o.push(new mxConnectionConstraint(new mxPoint(1,.5),!1)),o.push(new mxConnectionConstraint(new mxPoint(1,.75),!1)),o.push(new mxConnectionConstraint(new mxPoint(1,.85),!1)),o.push(new mxConnectionConstraint(new mxPoint(.75,.745),!1)),o.push(new mxConnectionConstraint(new mxPoint(.5,.85),!1)),o.push(new mxConnectionConstraint(new mxPoint(.25,.955),!1)),o.push(new mxConnectionConstraint(new mxPoint(0,.85),!1)),o.push(new mxConnectionConstraint(new mxPoint(0,.75),!1)),o.push(new mxConnectionConstraint(new mxPoint(0,.5),!1)),o.push(new mxConnectionConstraint(new mxPoint(0,.25),!1)),o},mxUtils.extend(mxArchiMate3Location,mxShape),mxArchiMate3Location.prototype.cst={LOCATION:"mxgraph.archimate3.location"},mxArchiMate3Location.prototype.paintVertexShape=function(n,t,e,o,i){n.translate(t,e),this.background(n,0,0,o,i),n.setShadow(!1),n.translate(o-20,5),this.foreground(n,o-20,5,15,15)},mxArchiMate3Location.prototype.background=function(n,t,e,o,i){n.rect(0,0,o,i),n.fillAndStroke()},mxArchiMate3Location.prototype.foreground=function(n,t,e,o,i){n.setDashed(!1),n.translate(3,0),o-=6,n.begin(),n.moveTo(.5*o,i),n.arcTo(.1775*o,.3*i,0,0,0,.345*o,.7*i),n.arcTo(.538*o,.364*i,0,0,1,.5*o,0),n.arcTo(.538*o,.364*i,0,0,1,.655*o,.7*i),n.arcTo(.1775*o,.3*i,0,0,0,.5*o,i),n.stroke()},mxCellRenderer.registerShape(mxArchiMate3Location.prototype.cst.LOCATION,mxArchiMate3Location),mxUtils.extend(mxArchiMate3Gap,mxShape),mxArchiMate3Gap.prototype.cst={GAP:"mxgraph.archimate3.gap"},mxArchiMate3Gap.prototype.paintVertexShape=function(n,t,e,o,i){n.translate(t,e),this.background(n,0,0,o,i),n.setShadow(!1),n.translate(o-20,5),this.foreground(n,o-20,5,15,15)},mxArchiMate3Gap.prototype.background=function(n,t,e,o,i){n.begin(),n.moveTo(0,0),n.lineTo(o,0),n.lineTo(o,.85*i),n.arcTo(.35*o,.35*i,0,0,0,.5*o,.85*i),n.arcTo(.35*o,.35*i,0,0,1,0,.85*i),n.close(),n.fillAndStroke()},mxArchiMate3Gap.prototype.foreground=function(n,t,e,o,i){n.setDashed(!1),n.translate(0,2),i-=4,n.ellipse(.15*o,0,.7*o,i),n.stroke(),n.begin(),n.moveTo(0,.35*i),n.lineTo(o,.35*i),n.moveTo(0,.65*i),n.lineTo(o,.65*i),n.stroke()},mxCellRenderer.registerShape(mxArchiMate3Gap.prototype.cst.GAP,mxArchiMate3Gap),mxArchiMate3Gap.prototype.getConstraints=function(n,t,e){var o=[];return o.push(new mxConnectionConstraint(new mxPoint(0,0),!1)),o.push(new mxConnectionConstraint(new mxPoint(.25,0),!1)),o.push(new mxConnectionConstraint(new mxPoint(.5,0),!1)),o.push(new mxConnectionConstraint(new mxPoint(.75,0),!1)),o.push(new mxConnectionConstraint(new mxPoint(1,0),!1)),o.push(new mxConnectionConstraint(new mxPoint(1,.25),!1)),o.push(new mxConnectionConstraint(new mxPoint(1,.5),!1)),o.push(new mxConnectionConstraint(new mxPoint(1,.75),!1)),o.push(new mxConnectionConstraint(new mxPoint(1,.85),!1)),o.push(new mxConnectionConstraint(new mxPoint(.75,.745),!1)),o.push(new mxConnectionConstraint(new mxPoint(.5,.85),!1)),o.push(new mxConnectionConstraint(new mxPoint(.25,.955),!1)),o.push(new mxConnectionConstraint(new mxPoint(0,.85),!1)),o.push(new mxConnectionConstraint(new mxPoint(0,.75),!1)),o.push(new mxConnectionConstraint(new mxPoint(0,.5),!1)),o.push(new mxConnectionConstraint(new mxPoint(0,.25),!1)),o},mxUtils.extend(mxArchiMate3Tech,mxShape),mxArchiMate3Tech.prototype.cst={TECH:"mxgraph.archimate3.tech",TYPE:"techType",DEVICE:"device",PLATEAU:"plateau",FACILITY:"facility",EQUIPMENT:"equipment",SYS_SW:"sysSw"},mxArchiMate3Tech.prototype.paintVertexShape=function(n,t,e,o,i){n.translate(t,e),this.background(n,0,0,o,i),n.setShadow(!1),n.translate(o-30,15),this.foreground(n,o-30,15,15,15)},mxArchiMate3Tech.prototype.background=function(n,t,e,o,i){n.begin(),n.moveTo(0,10),n.lineTo(10,0),n.lineTo(o,0),n.lineTo(o,i-10),n.lineTo(o-10,i),n.lineTo(0,i),n.close(),n.moveTo(0,10),n.lineTo(o-10,10),n.lineTo(o-10,i),n.moveTo(o,0),n.lineTo(o-10,10),n.fillAndStroke()},mxArchiMate3Tech.prototype.foreground=function(n,t,e,o,i){var r=mxUtils.getValue(this.style,mxArchiMate3Tech.prototype.cst.TYPE,mxArchiMate3Tech.prototype.cst.DEVICE);if(n.setDashed(!1),r===mxArchiMate3Tech.prototype.cst.PLATEAU){var a=mxUtils.getValue(this.style,mxConstants.STYLE_STROKECOLOR,"#000000");n.setFillColor(a),n.rect(.4*o,0,.6*o,.2*i),n.fill(),n.rect(.2*o,.4*i,.6*o,.2*i),n.fill(),n.rect(0,.8*i,.6*o,.2*i),n.fill()}else r===mxArchiMate3Tech.prototype.cst.FACILITY?(n.begin(),n.moveTo(0,i),n.lineTo(0,0),n.lineTo(.13*o,0),n.lineTo(.13*o,.7*i),n.lineTo(.42*o,.55*i),n.lineTo(.42*o,.7*i),n.lineTo(.71*o,.55*i),n.lineTo(.71*o,.7*i),n.lineTo(o,.55*i),n.lineTo(o,i),n.close(),n.stroke()):r===mxArchiMate3Tech.prototype.cst.EQUIPMENT?(n.begin(),n.moveTo(.72*o,.38*i),n.curveTo(.78*o,.38*o,.85*o,.34*i,.85*o,.26*i),n.curveTo(.85*o,.18*o,.78*o,.14*i,.73*o,.14*i),n.curveTo(.64*o,.14*o,.59*o,.2*i,.59*o,.26*i),n.curveTo(.59*o,.33*i,.65*o,.38*o,.72*o,.38*i),n.close(),n.moveTo(.68*o,.52*i),n.lineTo(.67*o,.45*i),n.lineTo(.61*o,.43*i),n.lineTo(.56*o,.48*i),n.lineTo(.5*o,.42*i),n.lineTo(.54*o,.36*i),n.lineTo(.52*o,.31*i),n.lineTo(.45*o,.31*i),n.lineTo(.45*o,.22*i),n.lineTo(.52*o,.21*i),n.lineTo(.54*o,.16*i),n.lineTo(.5*o,.11*i),n.lineTo(.56*o,.05*i),n.lineTo(.62*o,.09*i),n.lineTo(.67*o,.07*i),n.lineTo(.68*o,0),n.lineTo(.77*o,0),n.lineTo(.78*o,.07*i),n.lineTo(.83*o,.09*i),n.lineTo(.89*o,.05*i),n.lineTo(.95*o,.11*i),n.lineTo(.91*o,.16*i),n.lineTo(.93*o,.21*i),n.lineTo(o,.22*i),n.lineTo(o,.31*i),n.lineTo(.93*o,.31*i),n.lineTo(.91*o,.36*i),n.lineTo(.95*o,.41*i),n.lineTo(.89*o,.47*i),n.lineTo(.83*o,.43*i),n.lineTo(.78*o,.45*i),n.lineTo(.77*o,.52*i),n.lineTo(.68*o,.52*i),n.close(),n.moveTo(.36*o,.81*i),n.curveTo(.44*o,.81*i,.52*o,.75*i,.52*o,.67*i),n.curveTo(.52*o,.59*i,.45*o,.51*i,.35*o,.51*i),n.curveTo(.27*o,.51*i,.19*o,.58*i,.19*o,.67*i),n.curveTo(.19*o,.74*i,.27*o,.82*i,.36*o,.81*i),n.close(),n.moveTo(.21*o,.98*i),n.lineTo(.22*o,.89*i),n.lineTo(.16*o,.85*i),n.lineTo(.08*o,.88*i),n.lineTo(.02*o,.79*i),n.lineTo(.09*o,.74*i),n.lineTo(.08*o,.67*i),n.lineTo(0,.63*i),n.lineTo(.03*o,.53*i),n.lineTo(.12*o,.54*i),n.lineTo(.16*o,.48*i),n.lineTo(.13*o,.4*i),n.lineTo(.22*o,.35*i),n.lineTo(.28*o,.42*i),n.lineTo(.36*o,.41*i),n.lineTo(.39*o,.33*i),n.lineTo(.5*o,.36*i),n.lineTo(.49*o,.45*i),n.lineTo(.55*o,.49*i),n.lineTo(.63*o,.45*i),n.lineTo(.69*o,.54*i),n.lineTo(.62*o,.6*i),n.lineTo(.63*o,.67*i),n.lineTo(.71*o,.7*i),n.lineTo(.68*o,.8*i),n.lineTo(.59*o,.79*i),n.lineTo(.55*o,.85*i),n.lineTo(.59*o,.79*i),n.lineTo(.55*o,.85*i),n.lineTo(.59*o,.93*i),n.lineTo(.49*o,.98*i),n.lineTo(.43*o,.91*i),n.lineTo(.36*o,.92*i),n.lineTo(.32*o,i),n.lineTo(.21*o,.98*i),n.close(),n.stroke()):r===mxArchiMate3Tech.prototype.cst.SYS_SW?mxArchiMate3SysSw.prototype.background(n,t,e,o,i):r===mxArchiMate3Tech.prototype.cst.DEVICE&&mxArchiMate3Device.prototype.background(n,t,e,o,i)},mxCellRenderer.registerShape(mxArchiMate3Tech.prototype.cst.TECH,mxArchiMate3Tech),mxArchiMate3Tech.prototype.getConstraints=function(n,t,e){var o=[];return o.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,10,0)),o.push(new mxConnectionConstraint(new mxPoint(.25,0),!1)),o.push(new mxConnectionConstraint(new mxPoint(.5,0),!1)),o.push(new mxConnectionConstraint(new mxPoint(.75,0),!1)),o.push(new mxConnectionConstraint(new mxPoint(1,0),!1)),o.push(new mxConnectionConstraint(new mxPoint(1,.25),!1)),o.push(new mxConnectionConstraint(new mxPoint(1,.5),!1)),o.push(new mxConnectionConstraint(new mxPoint(1,.75),!1)),o.push(new mxConnectionConstraint(new mxPoint(1,1),!1,null,0,-10)),o.push(new mxConnectionConstraint(new mxPoint(1,1),!1,null,-10,0)),o.push(new mxConnectionConstraint(new mxPoint(.75,1),!1)),o.push(new mxConnectionConstraint(new mxPoint(.5,1),!1)),o.push(new mxConnectionConstraint(new mxPoint(.25,1),!1)),o.push(new mxConnectionConstraint(new mxPoint(0,1),!1)),o.push(new mxConnectionConstraint(new mxPoint(0,.75),!1)),o.push(new mxConnectionConstraint(new mxPoint(0,.5),!1)),o.push(new mxConnectionConstraint(new mxPoint(0,.25),!1)),o.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,0,10)),o},mxUtils.extend(mxArchiMate3Distribution,mxShape),mxArchiMate3Distribution.prototype.cst={DISTRIBUTION:"mxgraph.archimate3.distribution"},mxArchiMate3Distribution.prototype.paintVertexShape=function(n,t,e,o,i){n.translate(t,e),this.background(n,0,0,o,i),n.setShadow(!1)},mxArchiMate3Distribution.prototype.background=function(n,t,e,o,i){n.begin(),n.moveTo(.1*o,.25*i),n.lineTo(.9*o,.25*i),n.lineTo(o,.5*i),n.lineTo(.9*o,.75*i),n.lineTo(.1*o,.75*i),n.lineTo(0,.5*i),n.fillAndStroke(),n.begin(),n.moveTo(.2*o,0),n.lineTo(0,.5*i),n.lineTo(.2*o,i),n.moveTo(.8*o,0),n.lineTo(o,.5*i),n.lineTo(.8*o,i),n.stroke()},mxCellRenderer.registerShape(mxArchiMate3Distribution.prototype.cst.DISTRIBUTION,mxArchiMate3Distribution),mxArchiMate3Distribution.prototype.getConstraints=function(n,t,e){var o=[];return o.push(new mxConnectionConstraint(new mxPoint(0,.5),!1)),o.push(new mxConnectionConstraint(new mxPoint(.2,0),!1)),o.push(new mxConnectionConstraint(new mxPoint(.5,.25),!1)),o.push(new mxConnectionConstraint(new mxPoint(.8,0),!1)),o.push(new mxConnectionConstraint(new mxPoint(1,.5),!1)),o.push(new mxConnectionConstraint(new mxPoint(.8,1),!1)),o.push(new mxConnectionConstraint(new mxPoint(.5,.75),!1)),o.push(new mxConnectionConstraint(new mxPoint(.2,1),!1)),o.push(new mxConnectionConstraint(new mxPoint(0,.5),!1)),o},mxUtils.extend(mxArchiMate3Resource,mxShape),mxArchiMate3Resource.prototype.cst={RESOURCE:"mxgraph.archimate3.resource"},mxArchiMate3Resource.prototype.paintVertexShape=function(n,t,e,o,i){n.translate(t,e),this.background(n,0,0,o,i),n.setShadow(!1)},mxArchiMate3Resource.prototype.background=function(n,t,e,o,i){n.begin(),n.moveTo(.51*o,.34*i),n.lineTo(.51*o,.65*i),n.moveTo(.35*o,.34*i),n.lineTo(.35*o,.65*i),n.moveTo(.19*o,.34*i),n.lineTo(.19*o,.65*i),n.moveTo(.91*o,.4*i),n.curveTo(.93*o,.39*i,.95*o,.39*i,.97*o,.4*i),n.curveTo(.99*o,.4*i,o,.41*i,o,.43*i),n.curveTo(o,.48*i,o,.52*i,o,.57*i),n.curveTo(o,.58*i,.99*o,.59*i,.98*o,.6*i),n.curveTo(.96*o,.6*i,.93*o,.6*i,.91*o,.6*i),n.moveTo(0,.73*i),n.curveTo(0,.6*i,0,.43*i,0,.27*i),n.curveTo(0,.24*i,.03*o,.21*i,.08*o,.21*i),n.curveTo(.33*o,.2*i,.61*o,.2*i,.84*o,.21*i),n.curveTo(.88*o,.22*i,.89*o,.24*i,.9*o,.26*i),n.curveTo(.91*o,.41*i,.91*o,.57*i,.9*o,.72*i),n.curveTo(.9*o,.74*i,.88*o,.78*i,.83*o,.79*i),n.curveTo(.57*o,.79*i,.32*o,.79*i,.06*o,.79*i),n.curveTo(.02*o,.78*i,0,.76*i,0,.73*i),n.close(),n.stroke()},mxCellRenderer.registerShape(mxArchiMate3Resource.prototype.cst.RESOURCE,mxArchiMate3Resource),mxUtils.extend(mxArchiMate3Capability,mxShape),mxArchiMate3Capability.prototype.cst={CAPABILITY:"mxgraph.archimate3.capability"},mxArchiMate3Capability.prototype.paintVertexShape=function(n,t,e,o,i){n.translate(t,e),this.background(n,0,0,o,i),n.setShadow(!1)},mxArchiMate3Capability.prototype.background=function(n,t,e,o,i){n.begin(),n.moveTo(o,0),n.lineTo(o,i),n.lineTo(0,i),n.lineTo(0,.67*i),n.lineTo(.33*o,.67*i),n.lineTo(.33*o,.33*i),n.lineTo(.67*o,.33*i),n.lineTo(.67*o,0),n.close(),n.moveTo(.67*o,.33*i),n.lineTo(o,.33*i),n.moveTo(.33*o,.67*i),n.lineTo(o,.67*i),n.moveTo(.33*o,.67*i),n.lineTo(.33*o,i),n.moveTo(.67*o,.33*i),n.lineTo(.67*o,i),n.stroke()},mxCellRenderer.registerShape(mxArchiMate3Capability.prototype.cst.CAPABILITY,mxArchiMate3Capability),mxUtils.extend(mxArchiMate3Course,mxShape),mxArchiMate3Course.prototype.cst={COURSE:"mxgraph.archimate3.course"},mxArchiMate3Course.prototype.paintVertexShape=function(n,t,e,o,i){n.translate(t,e),this.background(n,0,0,o,i),n.setShadow(!1)},mxArchiMate3Course.prototype.background=function(n,t,e,o,i){n.begin(),n.moveTo(0,i),n.arcTo(.7*o,.7*i,0,0,1,.41*o,.56*i),n.moveTo(.14*o,.54*i),n.lineTo(.41*o,.56*i),n.lineTo(.3*o,.78*i),n.stroke(),n.ellipse(.4*o,0,.6*o,.6*i),n.stroke(),n.ellipse(.5*o,.1*i,.4*o,.4*i),n.stroke();var r=mxUtils.getValue(this.style,mxConstants.STYLE_FILLCOLOR,"#000000");n.setFillColor(r),n.ellipse(.6*o,.2*i,.2*o,.2*i),n.fill()},mxCellRenderer.registerShape(mxArchiMate3Course.prototype.cst.COURSE,mxArchiMate3Course),mxUtils.extend(mxArchiMate3Node,mxShape),mxArchiMate3Node.prototype.cst={NODE:"mxgraph.archimate3.node"},mxArchiMate3Node.prototype.paintVertexShape=function(n,t,e,o,i){n.translate(t,e),this.background(n,0,0,o,i),n.setShadow(!1)},mxArchiMate3Node.prototype.background=function(n,t,e,o,i){n.begin(),n.moveTo(0,.25*i),n.lineTo(.25*o,0),n.lineTo(o,0),n.lineTo(o,.75*i),n.lineTo(.75*o,i),n.lineTo(0,i),n.close(),n.moveTo(0,.25*i),n.lineTo(.75*o,.25*i),n.lineTo(.75*o,i),n.moveTo(o,0),n.lineTo(.75*o,.25*i),n.fillAndStroke()},mxCellRenderer.registerShape(mxArchiMate3Node.prototype.cst.NODE,mxArchiMate3Node),mxArchiMate3Node.prototype.getConstraints=function(n,t,e){var