jointjs-3-defaultRouter

关于paper.options中的几个default的属性

1.defaultRouter - 有五个可选值

  • 'manhattan' - 自动避免在他们的道路上设置障碍
  • 'metro' -  自动避免在他们的道路上设置障碍
  • 'normal' -  默认
  • 'orthogonal' - 
  • 'oneSide' 

  使用方法:

defaultRouter: { 
    name: 'oneSide',
    args:{   //可有可无,额外的参数配置对象
         padding: 10,
excludeEnds: ['source'],
excludeTypes: ['myNamespace.MyCommentElement'],
startDirections: ['top'],
endDirections: ['bottom']

} },

  当然,args中还有其他可选项   -不同的name,args中可配置的不同

name 属性 属性类型 描述
manhattan step number

虚拟网格的大小,然后是“曼哈顿”寻路算法。

更低的数字->更高的复杂性。当step的值与dia. paper .opt . gridsize相同时,“manhattan”router的性能最好。默认是10。

manhattan/oneSide/orthogonal padding number/object 开始/结束元素和障碍物周围的填充;默认值分别为     上面step的值/ 40 / 20
manhattan/metro maximumLoops number

manhattan:寻路循环的最大迭代次数。如果迭代的次数超过了这个最大值,

则放弃寻路,转而使用回退路由器(“正交”)。更高的数字->更高的复杂性。默认是2000

metro:如果在给定的迭代次数中找不到路径,则不使用“正交”路由器作为后备

manhattan/metro maxAllowedDirectionChange number

“manhattan”路线的最大方向改变,以度为单位。默认是90

metro 默认是45

manhattan perpendicular boolean

这导致路由器不能精确地链接到结束元素的锚点,而是链接到相邻的正交点。

这将在元素和路由的第一个/最后一个顶点之间创建一个干净的连接。默认是true

manhattan excludeEnds Array<string>

一个包含字符串“source” and/or “target”的数组,它告诉算法给定的结束

元素不应该被认为是一个障碍。默认是[] (两者都被认为是障碍)。

manhattan excludeTypes Array<string> 在计算路线时不应被视为障碍的元素类型数组。默认是“basic.Text”。
manhattan/metro startDirections Array<string>

指定元素可能的起始方向的数组。在需要链接的情况下,例如,总是从源

元素的底部开始(然后,值将是['bottom']),请对此进行更改。

默认是['left', 'right', 'top', 'bottom'](所有方向都允许)

manhattan/metro endDirections Array<string>

指定元素可能的结束方向的数组。在需要链接的情况下,

例如,总是在源元素的底部结束(然后,值将是['bottom']),请对此进行更改。

默认是['left', 'right', 'top', 'bottom'](所有方向都允许)。

oneSide side string 路线的方向。'left', 'right', 'top', 'bottom'。默认设置是'bottom'。
 
原文地址:https://www.cnblogs.com/fyjz/p/12613471.html