Skip to content

@jtopo/core / NodeHelper

Class: NodeHelper

一些操作Node的辅助方法

Table of contents

Constructors

Methods

Constructors

constructor

new NodeHelper()

Methods

getUnionRect

Static getUnionRect(arr): Rectangle

返回所有对象的矩形复合而成的更大矩形

Parameters

NameType
arrNE[]

Returns

Rectangle


resizeByFixedPoint

Static resizeByFixedPoint(node, rectPosition, w, h): Node

固定住某个点位置,改变尺寸

Parameters

NameType
nodeNode
rectPositionRectPositionType
wnumber
hnumber

Returns

Node


rotateAround

Static rotateAround(node, centerX, centerY, radius, angle): Node

绕指定点旋转, 同时改变自身位置和旋转角度

Parameters

NameTypeDescription
nodeNode-
centerXnumber圆心 X 坐标
centerYnumber圆心 Y 坐标
radiusnumber圆周半径
anglenumber角度(弧度)

Returns

Node


setXYButChildFixed

Static setXYButChildFixed(node, dx, dy): void

增量平移,但子节点保持屏幕坐标不变

Parameters

NameTypeDescription
nodeNode
dxnumber增量x
dynumber增量y

Returns

void


sizeFitToChildren

Static sizeFitToChildren(node, padding?): void

调整节点对象的尺寸:尺寸刚好覆盖住所有子节点

Parameters

NameType
nodeNode
padding?number

Returns

void


translateNodesCenterTo

Static translateNodesCenterTo(objects, x, y): void

将一组Node的中心点平移到指定x,y

Parameters

NameType
objectsNode[]
xnumber
ynumber

Returns

void


travel

Static travel(nodeOrLink, fn, parent?, rs?): NE[]

先序递归遍历Node和Link,从指定节点或者连线开始

Static

Parameters

NameTypeDefault valueDescription
nodeOrLinkNEundefined开始对象,可以是Node也可以是Link
fnFunctionundefined-
parentNEnull-
rsNE[]null-

Returns

NE[]

Array 先序排序好的对象数组,有Node、Link对象