搜索此API

y.layout.多页
类MultiPageLayouter

java.lang.Object(java.lang.对象)由扩展 y.布局。抽象布局阶段
      由扩展 y.layout.多页。多页布局器
所有实现的接口:
层外(Layour),布局阶段

公众阶级多页布局器
延伸抽象布局阶段

该布局算法将输入图形细分为几个LayoutGraph布局图s(称为页面图),以便布局(根据指定的核心布局算法)每个图形的指定的最大页面大小

该算法添加了特殊节点以保证信息不会丢失当分割连接不同页面上的节点的边时(有关详细信息,请查看概念描述如下)。


输入图形。


输入图形按大小分为两页500 x 500圆形节点表示所谓的连接器将边拆分为其他页面上的节点。连接器的标签与分割边的相反节点的标签相对应。

布局样式

此多阶段布局算法将输入图形细分为几个较小的图形并应用现有的布局算法。因此,其布局样式在很大程度上取决于所选的核心布局算法用于每个页面。此外,该算法使用几个细化步骤来生成更紧凑的结果。

特征

与布局样式类似,支持的功能集主要取决于指定的核心布局算法注意,由于多页布局器它不支持分区网格第条。此外,虽然多页布局器能够支持团队(请参阅setGroupMode(字节)),它不支持与组节点相关的边。

概念

为了保证不丢失任何信息,此布局算法将不同页面上节点之间的边替换为所谓的连接器节点此外,它可以复制节点(克隆称为代理节点)和插入特殊节点以引用此类节点(所谓的代理引用节点)。

与其他yFiles布局算法不同,多页布局器不修改其输入图形,但将其结果作为多页布局。为了能够该布局算法实现了层外(Layour)接口,尽管方法do布局没有指定返回值。因此,客户端代码必须登记布局回调当算法计算出新的多阶段结果时调用。

 
此布局算法不考虑图形的初始绘制。
 
客户代码必须注册数据提供程序s代表钥匙节点ID_DPKEY,边缘_ID_DPKEY,节点_标签_ID_DPKEY、和EDGE_LABEL_ID_DPKEY(边缘_标签_ID_DPKEY)之前打电话doLayout(y.layout.LayoutGraph)calcLayout(y.layout.LayoutGraph)
 

现场总结
静态字节 边缘_边界_方向
边束模式常量,指定应区分多条边(具有相同端点的边)如果他们有不同的方向。
静态字节 边_边_边_多边
边束模式常量,指定应区分所有多边(具有相同端点的边)。
静态字节 EDGE_BUNDLE_DISTINGUISH_类型
边束模式常量,指定应区分多条边(具有相同端点的边)如果它们是不同的(用户指定的)类型,请参阅边缘_类型_ DPKEY
静态java.lang.Object 边缘_ID_DPKEY
A类数据提供程序键,用于将输入图形的每条边映射到唯一ID。
静态java.lang.Object EDGE_LABEL_ID_DPKEY(边缘_标签_ID_DPKEY)
A类数据提供程序用于将输入图形的每个边标签映射到唯一ID的键。
静态java.lang.Object 边缘_类型_ DPKEY
A类数据提供程序键指定多条边的类型。
静态字节 组_代码_全部_代码
当特殊节点如连接器和代理节点时使用的节点分组说明符(请参见节点信息。类型_连接器节点信息。类型_代理)也应分配给组节点。
静态字节 组_模式_ GNORE
应忽略组节点时使用的节点分组说明符。
静态字节 组_模式_原始_节点_唯一
仅应将原始节点分配给组节点时使用的节点分组说明符。
静态java.lang.Object 节点集群ID密钥
A类数据提供程序用于将集群ID分配给公共(非组)节点的键。
静态java.lang.Object 节点ID_DPKEY
A类数据提供程序用于将输入图的每个节点映射到唯一ID的键。
静态java.lang.Object 节点_标签_ID_DPKEY
A类数据提供程序用于将输入图的每个节点标签映射到唯一ID的键。
 
从接口y.layout继承的字段。层外(Layour)
节点_类型_DP键,选定的边缘,所选节点
 
构造方法摘要
多页布局器(层外(Layour)堆芯)
创建新的多页布局器实例。
 
方法摘要
 多页布局 计算布局(LayoutGraph布局图图表)
计算指定图形的新多页布局。
布尔值 can布局(LayoutGraph布局图图表)
首先,此方法检查是否所有ID数据提供者已注册(节点ID_DPKEY,边缘_ID_DPKEY,节点_标签_ID_DPKEYEDGE_LABEL_ID_DPKEY(边缘_标签_ID_DPKEY))。
受保护的元素工厂 创建元素工厂()
此方法创建元件厂用于多页布局。
保护空隙 do增量布局(LayoutGraph布局图图表,数据提供程序增量节点DP,布局上下文上下文)
调用此方法以进一步改进布局结果。
空隙 do布局(LayoutGraph布局图图表)
计算指定图形的新多页布局。
整数 获取附加家长计数()
返回其他树父级的数目代理人算法试图放置在页面上。
整数 获取边缘绑定模式任务()
返回用于定义边束的位掩码。
 元素工厂 获取元素工厂()
返回元件厂用于创建特殊节点和多页布局中的边。
字节 获取组模式()
返回如何处理与组相关的特殊节点(如连接器和代理节点)。
 布局阶段 获取标签布局器()
返回布局阶段它放置输入图形的标签。
 布局回调 获取布局回调()
返回回调在完成多页时通知布局计算运行。
 Y尺寸 获取最大页面大小()
返回单个页面的最大大小。
获取首选最大持续时间()
返回布局算法的首选时间限制(以毫秒为单位)。
布尔值 已启用标签布局()
返回给定的标记算法放置输入图形的标签。
布尔值 启用了单一页面位置上的多个组件()
返回是否可以在单个页面上放置不同的连接组件。
布尔值 isProxyReferenceNodeCreateEnabled(代理引用节点创建已启用)()
返回算法是否应创建代理引用节点
布尔值 已启用严格群集分隔()
返回算法是否应使用不同的群集ID
受保护布尔值 删除连接器对(节点连接器1,节点连接器2,Y列表原始边缘ID,布局上下文上下文)
在减少连接器数量的后处理步骤中调用此方法。
保护空隙 路由RestoredEdges(LayoutGraph布局图图表,数据提供程序所选边缘DP,Y矩形boundingRectangle)
每当需要在不更改节点位置的情况下对某些单边进行布线时,就会调用此方法(例如,由删除连接器对(y.base.Node、y.base.Node、y.base.YList、LayoutContext)以路由恢复的边缘)。
空隙 设置附加家长计数(int additionalParentCount)
指定其他树父级的数目代理人算法试图放置在页面上。
空隙 setEdgeBundleMode任务(内部边缘绑定模式任务)
指定用于定义边束的位掩码。
空隙 setElementFactory(设置元素工厂)(元素工厂工厂)
指定元件厂用于创建特殊节点和多页布局中的边。
空隙 设置组模式(字节组模式)
指定如何处理与组相关的特殊节点(如连接器和代理节点)。
空隙 设置标签布局器(布局阶段贴标机)
指定布局阶段它放置输入图形的标签。
空隙 setLabelLayouterEnabled(设置标签布局已启用)(布尔标签LayouterEnabled)
指定给定的标记算法放置输入图形的标签。
空隙 setLayoutCallback(设置布局回调)(布局回调回调)
指定回调完成多阶段后通知布局计算运行。
空隙 设置最大页面大小(Y尺寸最大页面大小)
指定单个页面的最大大小。
空隙 设置单一页面位置上的多个组件已启用(布尔型多个组件OnSingle PagePlacementEnabled)
指定是否可以在单个页面上放置不同的连接组件。
空隙 设置首选最大持续时间(长首选最大持续时间)
设置布局算法的首选时间限制(以毫秒为单位)。
空隙 setProxyReferenceNodeCreateEnabled(设置代理引用节点创建启用)(布尔proxyReferenceNodeCreateEnabled)
指定算法是否应创建代理引用节点
空隙 setStrictClusterSeparationEnabled(设置严格群集分隔启用)(布尔型strictClusterSeparationEnabled)
指定算法是否应使用不同的群集ID
 
从y.layout类继承的方法。抽象布局阶段
can布局核心,doLayoutCore(do布局核心),获取核心布局器,设置核心层
 
从类java.lang.Object继承的方法
clone,equals,finalize,getClass,hashCode,notify,notifyAll,toString,wait,wait
 

字段详细信息

节点_ LUSTER_ID_DPKEY

公共静态最终java.lang.Object节点_ LUSTER_ID_DPKEY
A类数据提供程序用于将集群ID分配给公共(非组)节点的键。

 
如果没有数据提供程序与此密钥关联时,算法假定没有此类密钥偏好。
另请参阅:
setStrictClusterSeparationEnabled(布尔值)

节点ID_DPKEY

公共静态最终java.lang.Object节点ID_DPKEY
A类数据提供程序用于将输入图的每个节点映射到唯一ID的键。

 
这个数据提供程序必须由用户指定!

边缘_ID_DPKEY

公共静态最终java.lang.Object边缘_ID_DPKEY
A类数据提供程序键,用于将输入图形的每条边映射到唯一ID。

 
这个数据提供程序必须由用户指定!

EDGE_LABEL_ID_DPKEY(边缘_标签_ID_DPKEY)

公共静态最终java.lang.ObjectEDGE_LABEL_ID_DPKEY(边缘_标签_ID_DPKEY)
A类数据提供程序用于将输入图形的每个边标签映射到唯一ID的键。

 
这个数据提供程序必须由用户指定!

节点_标签_ID_DPKEY

公共静态最终java.lang.Object节点_标签_ID_DPKEY
A类数据提供程序用于将输入图的每个节点标签映射到唯一ID的键。

 
这个数据提供程序必须由用户指定!

边缘_类型_ DPKEY

公共静态最终java.lang.Object边缘_类型_ DPKEY
A类数据提供程序键指定多条边的类型。

如果获取边缘绑定模式任务()&边缘_边_边_类型==1,多边缘与不同类型(对象)关联的(具有相同端点的边)被区分,即。,它们由不同的连接器对分开(请参阅节点信息。类型_连接器)。

另请参阅:
EDGE_BUNDLE_DISTINGUISH_类型,setEdgeBundleMode任务(int)

组_模式_ GNORE

公共静态最终字节组_模式_ GNORE
应忽略组节点时使用的节点分组说明符。

另请参阅:
setGroupMode(字节),常量字段值

组_模式_原始_节点_唯一

公共静态最终字节组_模式_原始_节点_唯一
仅应将原始节点分配给组节点时使用的节点分组说明符。因此,连接器和代理节点(请参见节点信息。类型_连接器节点信息。类型_代理)永远不会分配给组节点,即使关联的节点位于组内。

 
组节点可能是碎片化的,也就是说,其内容可能放在不同的页面上。
另请参阅:
setGroupMode(字节),常量字段值
示例图形:

组_代码_全部_代码

公共静态最终字节组模式所有模式
当特殊节点如连接器和代理节点时使用的节点分组说明符(请参见节点信息。类型_连接器节点信息。类型_代理)也应分配给组节点。

 
组节点可能是碎片化的,也就是说,其内容可能放在不同的页面上。
另请参阅:
setGroupMode(字节),常量字段值
示例图形:

EDGE_BUNDLE_DISTINGUISH_MULTIEDGE公司

公共静态最终字节EDGE_BUNDLE_DISTINGUISH_MULTIEDGE公司
边束模式常量,指定应区分所有多边(具有相同端点的边)。因此,如果这样的边连接不同页面上的两个节点,则单独的连接器对(请参见节点信息。类型_连接器)用于它们中的每一个。

另请参阅:
setEdgeBundleMode任务(int),常量字段值
示例图形:

圆形节点表示连接器。连接器的标签与分割边的相反节点的标签相对应。

EDGE_BUNDLE_DISTINGUISH_方向

公共静态最终字节EDGE_BUNDLE_DISTINGUISH_方向
边束模式常量,指定应区分多条边(具有相同端点的边)如果他们有不同的方向。因此,具有相同端点的两条边可能共享一个连接器对(请参见节点信息。类型_连接器)如果它们指向同一方向(即,两者具有相同的源节点和目标节点)。

另请参阅:
setEdgeBundleMode任务(int),常量字段值
示例图形:

圆形节点表示连接器。连接器的标签与分割边的相反节点的标签相对应。

EDGE_BUNDLE_DISTINGUISH_类型

公共静态最终字节EDGE_BUNDLE_DISTINGUISH_类型
边束模式常量,指定应区分多条边(具有相同端点的边)如果它们是不同的(用户指定的)类型,请参阅边缘_类型_ DPKEY因此,具有相同端点和相同类型的两条边可以共享一对连接器(请参见节点信息。类型_连接器)。

另请参阅:
setEdgeBundleMode任务(int),边缘_类型_ DPKEY,常量字段值
建造商详图

多页布局器

公众的多页布局器(层外(Layour)堆芯)
创建新的多页布局器实例。

参数:
核心-用于单个页面的布局算法
方法详细信息

isProxyReferenceNodeCreateEnabled(代理引用节点创建已启用)

公共布尔值isProxyReferenceNodeCreateEnabled(代理引用节点创建已启用)()
返回算法是否应创建代理引用节点

如果禁用此选项,则算法不会创建代理引用节点,在这种情况下这个引用节点代理节点对应于其表示的节点

退货:
真的如果算法创建代理引用节点,否则
另请参阅:
setProxyReferenceNodeCreateEnabled(布尔值),节点信息。类型_代理_参考,节点信息。类型_代理,节点信息获取引用节点(),节点信息.getRepresentedNode()

setProxyReferenceNodeCreateEnabled(设置代理引用节点创建启用)

公共空虚setProxyReferenceNodeCreateEnabled(设置代理引用节点创建启用)(布尔proxyReferenceNodeCreateEnabled)
指定算法是否应创建代理引用节点

如果禁用此选项,则算法不会创建代理引用节点,在这种情况下这个引用节点代理节点对应于其表示的节点

默认值:
默认值为true。该算法创建代理引用节点。
参数:
代理引用节点创建已启用-真的如果算法应该创建代理引用节点,否则
另请参阅:
节点信息。类型_代理_参考,节点信息。类型_代理,节点信息获取引用节点(),节点信息.getRepresentedNode()

已启用严格群集分隔

公共布尔值已启用严格群集分隔()
返回算法是否应使用不同的群集ID更准确地说,如果启用此选项,则算法不会将具有不同集群ID的节点放置在同一页面上。否则,这样的放置是可能的。

 
没有群集ID的节点可以放置在任何页面上,即,即使启用了此选项页面可能包含一个具有集群ID的节点和一个不具有集群ID的节点。
退货:
真的如果算法将具有不同群集ID的节点分开,否则
另请参阅:
节点_ LUSTER_ID_DPKEY,setStrictClusterSeparationEnabled(布尔值)

setStrictClusterSeparationEnabled(设置严格群集分隔启用)

公共空虚setStrictClusterSeparationEnabled(设置严格群集分隔启用)(布尔型strictClusterSeparationEnabled)
指定算法是否应使用不同的群集ID更准确地说,如果启用此选项,则算法不会将具有不同集群ID的节点放置在同一页上。否则,这样的放置是可能的。

 
没有群集ID的节点可以放置在任何页面上,即,即使启用了此选项页面可能包含一个具有群集ID的节点和一个不具有集群ID的节点。
默认值:
默认值为false。具有不同集群ID的节点可以放置在同一页面上。
参数:
已启用strictClusterSeparationEnabled-真的算法是否应该将具有不同簇的节点分开ID、,否则
另请参阅:
节点_ LUSTER_ID_DPKEY

已启用标签布局

公共布尔值已启用标签布局()
返回给定的标记算法放置输入图形的标签。如果禁用此选项,标签将被忽略或核心布局算法

退货:
真的如果给定的标签布局器放置标签,否则
另请参阅:
setLabelLayouter(y.layout.LayoutStage),setLabelLayouterEnabled(布尔值)

setLabelLayouterEnabled(设置标签布局已启用)

公共空虚setLabelLayouterEnabled(设置标签布局已启用)(布尔标签LayouterEnabled)
指定给定的标记算法放置输入图形的标签。如果禁用此选项,则标签将被忽略或核心布局算法

默认值:
默认值为false。给定的标签算法不放置标签。
参数:
已启用标签布局-真的如果给定的标签算法应该放置标签,否则
另请参阅:
setLabelLayouter(LayoutStage)

创建元素工厂

受保护的元素工厂 创建元素工厂()
此方法创建元件厂用于多页布局。它从调用一次获取元素工厂()如果没有明确的工厂设置使用setElementFactory(元素工厂)默认情况下,此方法返回DefaultElementFactory(默认元素工厂)

子类可以创建元素工厂的自定义实现。

退货:
创建的元素工厂
另请参阅:
setElementFactory(元素工厂),获取元素因子(),元素工厂

获取元素工厂

公众的元素工厂 获取元素工厂()
返回元件厂用于创建特殊节点和多页布局中的边。如果没有显式设置元素工厂(请参见方法setElementFactory(元素工厂)),通过方法创建和设置新实例创建元素工厂()在第一次布局运行期间。

退货:
用于创建特殊节点和边的元素工厂
另请参阅:
setElementFactory(元素工厂),创建元素工厂(),元素工厂

setElementFactory(设置元素工厂)

公共空虚setElementFactory(设置元素工厂)(元素工厂工厂)
指定元件厂用于创建特殊节点和多页布局中的边。如果没有显式设置元素工厂(请参见方法setElementFactory(元素工厂)),通过方法创建并设置新实例创建元素工厂()在第一次布局运行期间。

默认值:
默认值为DefaultElementFactory(默认元素工厂)。如果没有显式设置元素工厂,则算法使用的实例DefaultElementFactory(默认元素工厂)
参数:
工厂-用于创建特殊节点和边的元素工厂
另请参阅:
创建元素工厂(),元素工厂

获取布局回调

公众的布局回调 获取布局回调()
返回回调完成多阶段后通知布局计算运行。

退货:
这个布局回调已通知的实例
另请参阅:
setLayoutCallback(布局回调)

setLayoutCallback(设置布局回调)

公共空虚setLayoutCallback(设置布局回调)(布局回调回调)
指定回调完成多阶段后通知布局计算运行。

默认值:
默认值为null。未设置布局回调。
参数:
回调-的布局回调通知的实例
另请参阅:
布局回调

设置附加家长计数

公共空虚设置附加家长计数(int additionalParentCount)
指定其他树父级的数量代理人算法试图将其放置在页面上。

如果输入图是一棵树,并且堆芯布置图算法是的实例GenericTreeLayouter(通用树布局器)树布局器,该算法可以在页面上放置子树的其他父代理。数字这些额外的父代理受此值的限制。请注意,这些附加节点是代理人以及现有节点的副本。原因可能是添加其他代理的适当方式是,您可以更好地标识树结构的其他父级。此外,如果附加计数大于0,则算法不会插入任何连接器节点但使用代理节点而不是。

 
只有当输入图形是树并且堆芯布置图算法是的实例GenericTreeLayouter(通用树布局器)树布局器
默认值:
默认值为0。页面上没有放置其他父代理。
参数:
其他家长计数-附加树父代理的(非负)最大数量
投掷次数:
java.lang.Illegal参数异常-如果给定的附加父计数为负数

获取附加家长计数

公共int获取附加家长计数()
返回其他树父级的数目代理人算法试图放置在页面上。

如果输入图是一棵树,并且堆芯布置图算法是的实例GenericTreeLayouter(通用树布局器)树布局器,该算法可以在页面上放置子树的其他父代理。数字这些额外的父代理受此值的限制。请注意,这些附加节点是代理人以及现有节点的副本。原因可能是添加其他代理的适当方式是,您可以更好地标识树结构的其他父级。此外,如果附加计数大于0,则算法不会插入任何连接器节点但使用代理节点而不是。

 
只有当输入图形是树并且堆芯布置图算法是的实例GenericTreeLayouter(通用树布局器)树布局器
退货:
附加树父代理的(非负)最大数量
另请参阅:
setAdditionalParentCount(int)

获取边缘绑定模式任务

公共int获取边缘绑定模式任务()
返回用于定义边束的位掩码。属于同一边束的所有多边(具有相同端点的边)都是由相同的连接器对拆分(参见节点信息。类型_连接器)。

退货:
定义边束的位掩码
另请参阅:
setEdgeBundleModeMask(int),节点信息。类型_连接器

setEdgeBundle模式掩码

公共空虚setEdgeBundleMode任务(内部边缘绑定模式任务)
指定用于定义边束的位掩码。属于同一边束的所有多边(具有相同端点的边)都是由相同的连接器对拆分(参见节点信息。类型_连接器)。

默认值:
默认值为0。所有多条边都属于同一个边束。
参数:
边缘绑定模式任务-定义边束的位掩码
另请参阅:
节点信息。类型_连接器

获取组模式

公共字节获取组模式()
返回如何处理与组相关的特殊节点(如连接器和代理节点)。

 
多页布局器能够处理组(请参见setGroupMode(字节)),它不支持与组节点相关的边。
退货:
当前节点分组说明符
另请参阅:
setGroupMode(字节),节点信息。类型_连接器,节点信息。类型_代理

设置组模式

公共空虚设置组模式(字节组模式)
指定如何处理与组相关的特殊节点(如连接器和代理节点)。

 
多页布局器能够处理组(请参见setGroupMode(字节)),它不支持与组节点相关的边。
默认值:
默认值为组_代码_全部_代码。特殊节点也被分配给关联的组。
参数:
组模式-节点分组说明符
投掷次数:
java.lang.Illegal参数异常-如果指定的组模式未知
另请参阅:
节点信息。类型_连接器,节点信息。类型_代理

获取首选最大持续时间

公共长获取首选最大持续时间()
返回布局算法的首选时间限制(以毫秒为单位)。

 
限制最大持续时间可能会导致布局质量下降。此外,实际运行时可能会超过布局算法以来的最大持续时间仍然需要找到有效的解决方案。
退货:
首选时限
另请参阅:
setPreferredMaximalDuration(长)

设置首选最大持续时间

公共空虚设置首选最大持续时间(长首选最大持续时间)
设置布局算法的首选时间限制(以毫秒为单位)。

指定的值必须为非负值。

 
限制最大持续时间可能会导致布局质量下降。此外,由于布局算法,实际运行时间可能超过最大持续时间仍然需要找到有效的解决方案。
默认值:
默认值为长。最大值(_V)。布局算法不受限制地运行。
参数:
首选最大持续时间-首选时限
投掷次数:
java.lang.Illegal参数异常-如果首选时限为负

获取标签布局器

公众的布局阶段 获取标签外层()
返回布局阶段它放置输入图形的标签。

 
这个布局阶段需要激活为了获得效果。
退货:
这个布局阶段实例
另请参阅:
setLabelLayouter(布局阶段),setLabelLayouterEnabled(布尔值),SALabeling公司,贪婪MIS标签

设置标签外层

公共空虚设置标签布局器(布局阶段贴标机)
指定布局阶段它放置输入图形的标签。

 
这个布局阶段需要激活为了获得效果。
默认值:
默认值为SALabeling公司。的实例SALabeling公司具有SALabeling.setMaximalDuration(长)设置为0
参数:
贴标机-的布局阶段实例
另请参阅:
setLabelLayouterEnabled(布尔值),SALabeling公司,贪婪MIS标签

启用了单一页面位置上的多个组件

公共布尔值启用了单一页面位置上的多个组件()
返回是否可以在单个页面上放置不同的连接组件。

退货:
真的如果在一个页面上可以放置不同的连接组件,否则
另请参阅:
setMultipleComponentsOnSinglePagePlacementEnabled(布尔值)

设置单一页面位置上的多个组件已启用

公共空虚设置单一页面位置上的多个组件已启用(布尔多个组件OnSinglePagePlacementEnabled)
指定是否可以在单个页面上放置不同的连接组件。

默认值:
默认值为true。不同的组件可以放在一个页面上。
参数:
启用单个页面放置上的多个组件-真的如果可以放置不同的连接组件一页,否则

do布局

公共空虚do布局(LayoutGraph布局图图表)
计算指定图形的新多页布局。此方法调用calcLayout(y.layout.LayoutGraph)并通知已注册的布局回调计算结果。

 
与其他实现不同Layouter.doLayout(y.layout.LayoutGraph)方法,结果布局计算的应用于输入图形。
参数:
图表-输入图形
另请参阅:
Layouter.canLayout(LayoutGraph)

计算布局

公众的多页布局 计算布局(LayoutGraph布局图图表)
计算指定图形的新多页布局。与方法不同doLayout(y.layout.LayoutGraph),此方法忽略已注册的布局回调并直接返回计算多页布局

 
与其他实现不同Layouter.doLayout(y.layout.LayoutGraph)方法,结果布局计算的应用于输入图形。
参数:
图表-输入图形
退货:
的实例多页布局表示布局运行结果的
投掷次数:
java.lang.Illegal参数异常-如果是其中一把钥匙节点ID_DPKEY,边缘_ID_DPKEY,节点标签ID_DPKEYEDGE_LABEL_ID_DPKEY(边缘_标签_ID_DPKEY)数据提供程序使用给定的图形注册
另请参阅:
多页布局

删除连接器对

受保护布尔值删除连接器对(节点连接器1,节点连接器2,Y列表原始边缘ID,布局上下文上下文)
在减少连接器数量的后处理步骤中调用此方法。如果两个连接器节点都位于同一页面上,则可以移除一对连接器。该方法通过调用routeRestoredEdges(y.layout.LayoutGraph、y.base.DataProvider、y.geom.YRectangle)

子类可以实现自定义删除/恢复策略。

 
如果此方法返回图表不是已更改,即连接器对仍然存在。
参数:
连接器1-连接器对的第一个连接器
连接器2-连接器对的第二个连接器
原始边缘ID-必须恢复的原始边的ID
上下文-当前布局上下文
退货:
真的如果连接器对的拆卸成功,否则
另请参阅:
routeRestoredEdges(y.layout.LayoutGraph、y.base.DataProvider、y.geom.YRectangle)

can布局

公共布尔值can布局(LayoutGraph布局图图表)
首先,此方法检查是否所有ID数据提供者已注册(节点ID_DPKEY,边缘_ID_DPKEY,节点_标签_ID_DPKEYEDGE_LABEL_ID_DPKEY(边缘_标签_ID_DPKEY))。如果不是,此方法将返回。否则,它将此呼叫委托给Layouter.canLayout(y.layout.LayoutGraph)方法指定的堆芯布置机

参数:
图表-输入图形
退货:
真的如果局部布局算法可以应用于指定的图形,否则
另请参阅:
Layouter.doLayout(布局图)

获取最大页面大小

公众的Y尺寸 获取最大页面大小()
返回单个页面的最大大小。布局算法对输入图形进行细分,使每个部分都位于适合的不同页面上指定的最大大小。

指定的宽度和高度都必须为正数。

 
较大的页面大小可能会显著增加运行时。要限制运行时,请使用方法设置首选最大持续时间(长)
退货:
单个页面的最大大小
另请参阅:
设置最大页面大小(Y维度),设置首选最大持续时间(长)

设置最大页面大小

公共空虚设置最大页面大小(Y尺寸最大页面大小)
指定单个页面的最大大小。布局算法对输入图形进行细分,使每个部分都位于适合的不同页面上指定的最大大小。

指定的宽度和高度都必须为正数。

 
较大的页面大小可能会显著增加运行时。要限制运行时,请使用方法setPreferredMaximalDuration(长)
默认值:
默认值为1000x1000。页面的宽度和高度设置为1000
参数:
最大页面大小-单个页面的最大大小
投掷次数:
java.lang.Illegal参数异常-如果指定的宽度或高度不是正数
另请参阅:
setPreferredMaximalDuration(长)
示例图表:

大小250x250毫米

整个图表放在一页上。


大小150x250像素

圆形节点表示所谓的连接器将边缘拆分为放置在其他页面上的节点。连接器的标签与分割边的相反节点的标签相对应。


大小200x200像素

圆形节点表示所谓的连接器将边拆分为其他页面上的节点。连接器的标签与分割边的相反节点的标签相对应。


do增量布局

保护空隙do增量布局(LayoutGraph布局图图表,数据提供程序增量节点DP,布局上下文上下文)
调用此方法以进一步改进布局结果。必须在不更改固定(未标记)元素坐标的情况下放置标记的节点并且不超过指定的最大页面大小。此外,基本布局属性应该是维护。

子类可以实现此步骤的自定义布局策略。

参数:
图表-输入图形
增量节点DP-一个数据提供程序返回一个布尔值,指示节点是否标记;不允许更改未标记节点的位置
上下文-当前布局上下文
另请参阅:
布局上下文

路由RestoredEdges

保护空隙路由RestoredEdges(LayoutGraph布局图图表,数据提供程序所选边缘DP,Y矩形boundingRectangle)
每当需要在不更改节点位置的情况下对某些单边进行布线时,就会调用此方法(例如,由删除连接器对(y.base.Node、y.base.Node、y.base.YList、LayoutContext)布线恢复的边)。它必须确保路由完全包含在给定的边框内。

子类可以为恢复的边实现自定义路由策略。

参数:
图表-相关图表
所选边DP-一个数据提供程序返回一个布尔值,指示是否为边应该重新路由
boundingRectangle(边界矩形)-边缘路线应完全包含在此矩形内
另请参阅:
删除连接器对(y.base.Node、y.base.Node、y.base.YList、LayoutContext)

©版权所有2000-2022,
yWorks股份有限公司
保留所有权利。