Appearance
@jtopo/core / NodeHelper
Class: NodeHelper
一些操作Node的辅助方法
Table of contents
Constructors
Methods
- getUnionRect
- resizeByFixedPoint
- rotateAround
- setXYButChildFixed
- sizeFitToChildren
- translateNodesCenterTo
- travel
Constructors
constructor
new NodeHelper()
Methods
getUnionRect
Static
getUnionRect(arr
): Rectangle
返回所有对象的矩形复合而成的更大矩形
Parameters
Name | Type |
---|---|
arr | NE [] |
Returns
resizeByFixedPoint
Static
resizeByFixedPoint(node
, rectPosition
, w
, h
): Node
固定住某个点位置,改变尺寸
Parameters
Name | Type |
---|---|
node | Node |
rectPosition | RectPositionType |
w | number |
h | number |
Returns
rotateAround
Static
rotateAround(node
, centerX
, centerY
, radius
, angle
): Node
绕指定点旋转, 同时改变自身位置和旋转角度
Parameters
Name | Type | Description |
---|---|---|
node | Node | - |
centerX | number | 圆心 X 坐标 |
centerY | number | 圆心 Y 坐标 |
radius | number | 圆周半径 |
angle | number | 角度(弧度) |
Returns
setXYButChildFixed
Static
setXYButChildFixed(node
, dx
, dy
): void
增量平移,但子节点保持屏幕坐标不变
Parameters
Name | Type | Description |
---|---|---|
node | Node | |
dx | number | 增量x |
dy | number | 增量y |
Returns
void
sizeFitToChildren
Static
sizeFitToChildren(node
, padding?
): void
调整节点对象的尺寸:尺寸刚好覆盖住所有子节点
Parameters
Name | Type |
---|---|
node | Node |
padding? | number |
Returns
void
translateNodesCenterTo
Static
translateNodesCenterTo(objects
, x
, y
): void
将一组Node的中心点平移到指定x,y
Parameters
Name | Type |
---|---|
objects | Node [] |
x | number |
y | number |
Returns
void
travel
Static
travel(nodeOrLink
, fn
, parent?
, rs?
): NE
[]
先序递归遍历Node和Link,从指定节点或者连线开始
Static
Parameters
Name | Type | Default value | Description |
---|---|---|---|
nodeOrLink | NE | undefined | 开始对象,可以是Node也可以是Link |
fn | Function | undefined | - |
parent | NE | null | - |
rs | NE [] | null | - |
Returns
NE
[]
Array 先序排序好的对象数组,有Node、Link对象