diff --git a/src/BehaviorHelper/dragCanvasWithLeak.ts b/src/BehaviorHelper/dragCanvasWithLeak.ts index c4762d9..8a2521c 100644 --- a/src/BehaviorHelper/dragCanvasWithLeak.ts +++ b/src/BehaviorHelper/dragCanvasWithLeak.ts @@ -5,7 +5,7 @@ import { ViewContainer } from "../View/viewContainer"; /** - * 初始化视图拖拽功能 + * * @param g6Instance * @param hasLeak */ diff --git a/src/BehaviorHelper/fixNodeMarkerDrag.ts b/src/BehaviorHelper/fixNodeMarkerDrag.ts index 4f7592d..d14cff7 100644 --- a/src/BehaviorHelper/fixNodeMarkerDrag.ts +++ b/src/BehaviorHelper/fixNodeMarkerDrag.ts @@ -7,7 +7,7 @@ import { LayoutGroupOptions } from "../options"; * 在初始化渲染器之后,修正节点拖拽时,外部指针没有跟着动的问题 * */ -export function FixNodeMarkerDrag(g6Instance: Graph, optionsTable: { [key: string]: LayoutGroupOptions }) { +export function FixNodeMarkerDrag(g6Instance: Graph) { let dragActive: boolean = false; const nodeData = { @@ -36,16 +36,6 @@ export function FixNodeMarkerDrag(g6Instance: Graph, optionsTable: { [key: strin return false; } - const dragNode = optionsTable[node.layout].behavior.dragNode; - - if (dragNode === false) { - return; - } - - if (Array.isArray(dragNode) && dragNode.find(item => item === node.sourceType) === undefined) { - return; - } - dragActive = true; nodeData.startX = event.canvasX; nodeData.startY = event.canvasY; diff --git a/src/BehaviorHelper/initViewBehaviors.ts b/src/BehaviorHelper/initViewBehaviors.ts index e37e74e..087d435 100644 --- a/src/BehaviorHelper/initViewBehaviors.ts +++ b/src/BehaviorHelper/initViewBehaviors.ts @@ -1,5 +1,4 @@ import { SVModel } from "../Model/SVModel"; -import { LayoutGroupOptions } from "../options"; @@ -8,15 +7,8 @@ import { LayoutGroupOptions } from "../options"; * @param optionsTable * @returns */ -export function InitViewBehaviors(optionsTable: { [key: string]: LayoutGroupOptions }) { - const dragNodeTable: { [key: string]: boolean | string[] } = {}, - selectNodeTable: { [key: string]: boolean | string[] } = {}, - defaultModes = []; - - Object.keys(optionsTable).forEach(item => { - dragNodeTable[item] = optionsTable[item].behavior.dragNode; - selectNodeTable[item] = optionsTable[item].behavior.selectNode; - }); +export function InitViewBehaviors() { + const defaultModes = []; const dragNodeFilter = event => { let g6Item = event.item, @@ -26,16 +18,6 @@ export function InitViewBehaviors(optionsTable: { [key: string]: LayoutGroupOpti return false; } - let dragNode = optionsTable[node.layout].behavior.dragNode; - - if (typeof dragNode === 'boolean') { - return dragNode; - } - - if (Array.isArray(dragNode) && dragNode.indexOf(node.sourceType) > -1) { - return true; - } - return false; } @@ -47,16 +29,6 @@ export function InitViewBehaviors(optionsTable: { [key: string]: LayoutGroupOpti return false; } - let selectNode = optionsTable[node.layout].behavior.selectNode; - - if (typeof selectNode === 'boolean') { - return selectNode; - } - - if (Array.isArray(selectNode) && selectNode.indexOf(node.sourceType) > -1) { - return true; - } - return false; } diff --git a/src/BehaviorHelper/zoomCanvas.ts b/src/BehaviorHelper/zoomCanvas.ts deleted file mode 100644 index 15cc65f..0000000 --- a/src/BehaviorHelper/zoomCanvas.ts +++ /dev/null @@ -1,59 +0,0 @@ -import { Graph, IGroup } from "@antv/g6-pc"; -import { ext } from '@antv/matrix-util'; - -const transform = ext.transform; - - -/** - * 初始化视图缩放功能 - * @param g6Instance - * @param generalModelsGroup - */ -export function InitZoomCanvas(g6Instance: Graph, g6GeneralGroup: IGroup) { - const minZoom = 0.2, - maxZoom = 2, - step = 0.15; - - g6Instance.on('wheel', event => { - let delta = event.wheelDelta, - matrix = g6GeneralGroup.getMatrix(), - center = [event.x, event.y], - targetScale = 1; - - if (delta > 0) { - targetScale += step; - } - - if (delta < 0) { - targetScale -= step; - } - - matrix = transform(matrix, [ - ['t', -center[0], -center[1]], - ['s', targetScale, targetScale], - ['t', center[0], center[1]], - ]); - - if ((minZoom && matrix[0] < minZoom) || (maxZoom && matrix[0] > maxZoom)) { - return false; - } - - g6GeneralGroup.setMatrix(matrix); - g6Instance.paint(); - }); -} - - - - - - - - - - - - - - - diff --git a/src/BehaviorHelper/zoomCanvasWithLeak.ts b/src/BehaviorHelper/zoomCanvasWithLeak.ts new file mode 100644 index 0000000..481ed8d --- /dev/null +++ b/src/BehaviorHelper/zoomCanvasWithLeak.ts @@ -0,0 +1,31 @@ +import { Graph, IGroup } from "@antv/g6-pc"; +import { ext } from '@antv/matrix-util'; + +const transform = ext.transform; + + +/** + * + * @param g6Instance + * @param generalModelsGroup + */ +export function InitZoomCanvasWithLeak(g6Instance: Graph) { + g6Instance.on('wheel', event => { + + }); +} + + + + + + + + + + + + + + + diff --git a/src/View/renderer.ts b/src/View/renderer.ts index 5a56f6a..62a5dc6 100644 --- a/src/View/renderer.ts +++ b/src/View/renderer.ts @@ -55,7 +55,7 @@ export class Renderer { }, fitView: false, modes: { - default: InitViewBehaviors(this.engine.optionsTable) + default: InitViewBehaviors() }, plugins: [tooltip] }); diff --git a/src/View/viewContainer.ts b/src/View/viewContainer.ts index 7712190..18c3d36 100644 --- a/src/View/viewContainer.ts +++ b/src/View/viewContainer.ts @@ -50,7 +50,7 @@ export class ViewContainer { // InitZoomCanvas(g6Instance, g6GeneralGroup); } - FixNodeMarkerDrag(g6Instance, this.engine.optionsTable); + FixNodeMarkerDrag(g6Instance); } @@ -144,10 +144,6 @@ export class ViewContainer { this.prevLayoutGroupTable = layoutGroupTable; this.prevModelList = modelList; - - // modelList.forEach(item => { - // console.log(item.getModelType(), item.getBound()); - // }); } /**