g6/packages/site/docs/apis/classes/item/CustomNode.en.md
2023-08-31 21:44:58 +08:00

20 KiB

title
CustomNode

Overview - v5.0.0-beta.1 / Modules / item / CustomNode

item.CustomNode

Hierarchy

Constructors

constructor

new CustomNode(props)

Parameters

Name Type
props any

Defined in

packages/g6/src/stdlib/item/node/base.ts:86

Methods

afterDraw

afterDraw(model, shapeMap, shapesChanged?): Object

Perform additional drawing operations or add custom shapes after drawing node.

Parameters

Name Type Description
model NodeDisplayModel | ComboDisplayModel The displayed model of this node, only for drawing and not received by users.
shapeMap Object The shape map that contains all of the elements to show on the node.
shapesChanged? string[] An array of shape IDs that have changed and need to be updated.

Returns

Object

An object that contains some new shapes to be added to the node.

Defined in

packages/g6/src/stdlib/item/node/base.ts:230


calculateAnchorPosition

calculateAnchorPosition(keyShapeStyle): IAnchorPositionMap

Configures the anchor positions based on the provided keyShapeStyle and returns the configuration. e.g for a CircleNode, it returns: {"right":keyShapeStyle.x+keyShapeStyle.r, keyShapeStyle.y}

Parameters

Name Type Description
keyShapeStyle any The keyShapeStyle object that contains the style information of the key shape.

Returns

IAnchorPositionMap

The anchor position configuration as an IAnchorPositionMap object.

Defined in

packages/g6/src/stdlib/item/node/base.ts:612


draw

Abstract draw(model, shapeMap, diffData?, diffState?): Object

Draw all elements related to the node. You should call drawKeyShape and drawAnchorShape,drawLabelShape,drawIconShape...as you like.

Parameters

Name Type Description
model NodeDisplayModel | ComboDisplayModel The displayed model of this node, only for drawing and not received by users.
shapeMap Object The shape map that contains all of the elements to show on the node.
diffData? Object An object that contains previous and current data.
diffData.current NodeUserModelData | ComboModelData -
diffData.previous NodeUserModelData | ComboModelData -
diffState? Object An object that contains previous and current node's state.
diffState.current State[] -
diffState.previous State[] -

Returns

Object

An object containing the keyShape and optional labelShape, iconShape, and some otherShapes properties

Name Type
iconShape? DisplayObject<any, any>
keyShape DisplayObject<any, any>
labelShape? DisplayObject<any, any>

Defined in

packages/g6/src/stdlib/item/node/base.ts:208


drawAnchorShapes

drawAnchorShapes(model, shapeMap, diffData?, diffState?): Object

Draw the anchors shape of the node

Parameters

Name Type Description
model NodeDisplayModel | ComboDisplayModel The displayed model of this node, only for drawing and not received by users.
shapeMap NodeShapeMap The shape map that contains all of the elements to show on the node.
diffData? Object An object that contains previous and current data.
diffData.current NodeUserModelData | ComboModelData -
diffData.previous NodeUserModelData | ComboModelData -
diffState? Object An object that contains previous and current node's state.
diffState.current State[] -
diffState.previous State[] -

Returns

Object

The display object representing the anchors shape of the node.

Defined in

packages/g6/src/stdlib/item/node/base.ts:534


drawBadgeShapes

drawBadgeShapes(model, shapeMap, diffData?, diffState?): Object

Draw the badges shape of the node

Parameters

Name Type Description
model NodeDisplayModel | ComboDisplayModel The displayed model of this node, only for drawing and not received by users.
shapeMap NodeShapeMap The shape map that contains all of the elements to show on the node.
diffData? Object An object that contains previous and current data.
diffData.current NodeUserModelData | ComboModelData -
diffData.previous NodeUserModelData | ComboModelData -
diffState? Object An object that contains previous and current node's state.
diffState.current State[] -
diffState.previous State[] -

Returns

Object

The display object representing the badges shape of the node.

Defined in

packages/g6/src/stdlib/item/node/base.ts:632


drawHaloShape

drawHaloShape(model, shapeMap, diffData?, diffState?): DisplayObject<any, any>

Draw the halo shape of the node

Parameters

Name Type Description
model NodeDisplayModel | ComboDisplayModel The displayed model of this node, only for drawing and not received by users.
shapeMap NodeShapeMap The shape map that contains all of the elements to show on the node.
diffData? Object An object that contains previous and current data.
diffData.current NodeUserModelData | ComboModelData -
diffData.previous NodeUserModelData | ComboModelData -
diffState? Object An object that contains previous and current node's state.
diffState.current State[] -
diffState.previous State[] -

Returns

DisplayObject<any, any>

The display object representing the halo shape of the node.

Defined in

packages/g6/src/stdlib/item/node/base.ts:494


drawIconShape

drawIconShape(model, shapeMap, diffData?, diffState?): DisplayObject<any, any>

Draw the icon shape of the node

Parameters

Name Type Description
model NodeDisplayModel | ComboDisplayModel The displayed model of this node, only for drawing and not received by users.
shapeMap NodeShapeMap The shape map that contains all of the elements to show on the node.
diffData? Object An object that contains previous and current data.
diffData.current NodeUserModelData | ComboModelData -
diffData.previous NodeUserModelData | ComboModelData -
diffState? Object An object that contains previous and current node's state.
diffState.current State[] -
diffState.previous State[] -

Returns

DisplayObject<any, any>

The display object representing the icon shape of the node.

Defined in

packages/g6/src/stdlib/item/node/base.ts:443


drawKeyShape

Abstract drawKeyShape(model, shapeMap, diffData?, diffState?): DisplayObject<any, any>

The key function of drawing shape. Draw the key shape of the node based on the provided model and shape map.

Parameters

Name Type Description
model NodeDisplayModel | ComboDisplayModel The displayed model of this node, only for drawing and not received by users.
shapeMap NodeShapeMap The shape map that contains all of the elements to show on the node.
diffData? Object An object that contains previous and current data.
diffData.current NodeUserModelData | ComboModelData -
diffData.previous NodeUserModelData | ComboModelData -
diffState? Object An object that contains previous and current node's state.
diffState.current State[] -
diffState.previous State[] -

Returns

DisplayObject<any, any>

The display object representing the key shape of the node.

Defined in

packages/g6/src/stdlib/item/node/base.ts:260


drawLabelBackgroundShape

drawLabelBackgroundShape(model, shapeMap, diffData?, diffState?): DisplayObject<any, any>

Draw the label background shape of the node

Parameters

Name Type Description
model NodeDisplayModel | ComboDisplayModel The displayed model of this node, only for drawing and not received by users.
shapeMap NodeShapeMap The shape map that contains all of the elements to show on the node.
diffData? Object An object that contains previous and current data.
diffData.current NodeUserModelData | ComboModelData -
diffData.previous NodeUserModelData | ComboModelData -
diffState? Object An object that contains previous and current node's state.
diffState.newState State[] -
diffState.oldState State[] -

Returns

DisplayObject<any, any>

The display object representing the label background shape of the node.

Defined in

packages/g6/src/stdlib/item/node/base.ts:386


drawLabelShape

drawLabelShape(model, shapeMap, diffData?, diffState?): DisplayObject<any, any>

Draw the label shape of the node

Parameters

Name Type Description
model NodeDisplayModel | ComboDisplayModel The displayed model of this node, only for drawing and not received by users.
shapeMap NodeShapeMap The shape map that contains all of the elements to show on the node.
diffData? Object An object that contains previous and current data.
diffData.current NodeUserModelData | ComboModelData -
diffData.previous NodeUserModelData | ComboModelData -
diffState? Object An object that contains previous and current node's state.
diffState.current State[] -
diffState.previous State[] -

Returns

DisplayObject<any, any>

The display object representing the label shape of the node.

Defined in

packages/g6/src/stdlib/item/node/base.ts:278


drawOtherShapes

drawOtherShapes(model, shapeMap, diffData?, diffState?): Object

Draw other shapes(such as preRect,stateIcon) of the node

Parameters

Name Type Description
model NodeDisplayModel | ComboDisplayModel The displayed model of this node, only for drawing and not received by users.
shapeMap NodeShapeMap The shape map that contains all of the elements to show on the node.
diffData? Object An object that contains previous and current data.
diffData.current NodeUserModelData | ComboModelData -
diffData.previous NodeUserModelData | ComboModelData -
diffState? Object An object that contains previous and current node's state.
diffState.current State[] -
diffState.previous State[] -

Returns

Object

The display object representing the other shapes of the node.

Defined in

packages/g6/src/stdlib/item/node/base.ts:795


getMergedStyles

getMergedStyles(model): NodeShapeStyles

Merge style

Parameters

Name Type Description
model NodeDisplayModel | ComboDisplayModel The NodeDisplayModel or ComboDisplayModel to retrieve the merged styles from.

Returns

NodeShapeStyles

The merged styles as a NodeShapeStyles object.

Defined in

packages/g6/src/stdlib/item/node/base.ts:113


mergeStyles

mergeStyles(model): void

Get merged styles from getMergedStyles and assigns the merged styles to the 'mergedStyles' property.

Parameters

Name Type Description
model NodeDisplayModel | ComboDisplayModel The NodeDisplayModel or ComboDisplayModel to merge the styles from.

Returns

void

Defined in

packages/g6/src/stdlib/item/node/base.ts:104


onZoom

onZoom(shapeMap, zoom): void

The listener for graph zooming.

  1. show / hide some shapes while zoom level changed;
  2. change the shapes' sizes to make them have same visual size while zooming, e.g. labelShape, labelBackgroundShape.

Parameters

Name Type Description
shapeMap NodeShapeMap The shape map that contains all of the elements to show on the node.
zoom number The zoom level of the graph.

Returns

void

Defined in

packages/g6/src/stdlib/item/node/base.ts:814


updateCache

updateCache(shapeMap): void

Call it after calling draw function to update cache about bounds and zoom levels.

Parameters

Name Type Description
shapeMap any The shape map that contains all of the elements to show on the node.

Returns

void

Defined in

packages/g6/src/stdlib/item/node/base.ts:164


upsertShape

upsertShape(type, id, style, shapeMap, model): DisplayObject<any, any>

Create (if does not exit in shapeMap) or update the shape according to the configurations.

Parameters

Name Type Description
type SHAPE_TYPE | SHAPE_TYPE_3D shape's type
id string unique string to indicates the shape
style Partial<CircleStyleProps & RectStyleProps & EllipseStyleProps & PolygonStyleProps & LineStyleProps & PolylineStyleProps & TextStyleProps & ImageStyleProps & PathStyleProps & SphereGeometryProps & CubeGeometryProps & PlaneGeometryProps & { interactive?: boolean } & { animates?: IAnimates ; lod?: number ; visible?: boolean }> style to be updated
shapeMap NodeShapeMap the shape map of a node / combo
model NodeDisplayModel | ComboDisplayModel data model of the node / combo

Returns

DisplayObject<any, any>

The display object representing the shape.

Defined in

packages/g6/src/stdlib/item/node/base.ts:987

Properties

boundsCache

boundsCache: Object

Type declaration

Name Type
keyShapeLocal? AABB
labelShapeGeometry? AABB

Defined in

packages/g6/src/stdlib/item/node/base.ts:44


defaultStyles

defaultStyles: NodeShapeStyles | ComboShapeStyles

Defined in

packages/g6/src/stdlib/item/node/base.ts:40


lodStrategy

Optional lodStrategy: LodStrategyObj

Defined in

packages/g6/src/stdlib/item/node/base.ts:43


mergedStyles

mergedStyles: NodeShapeStyles | ComboShapeStyles

Defined in

packages/g6/src/stdlib/item/node/base.ts:42


setState

setState: (name: string, value: boolean, shapeMap: { [shapeId: string]: DisplayObject; }) => void

Type declaration

▸ (name, value, shapeMap): void

Set the state for the node.

Parameters
Name Type Description
name string -
value boolean state value
shapeMap Object The shape map that contains all of the elements to show on the node.
Returns

void

Defined in

packages/g6/src/stdlib/item/node/base.ts:245


themeStyles

themeStyles: NodeShapeStyles | ComboShapeStyles

Defined in

packages/g6/src/stdlib/item/node/base.ts:41


type

type: string

Defined in

packages/g6/src/stdlib/item/node/base.ts:39