File tree Expand file tree Collapse file tree 3 files changed +15
-4
lines changed Expand file tree Collapse file tree 3 files changed +15
-4
lines changed Original file line number Diff line number Diff line change @@ -21,6 +21,7 @@ import { G6Render } from './knowledge-graph/G6Render';
2121 * @property {string | HTMLElement } container - 创建的容器 id 或容器本身, 默认是'knowledgeGraph'。
2222 * @property {number } width - 图的宽度, 默认是container的width。
2323 * @property {number } height - 图的高度,默认是container的height。
24+ * @property {Array.<number> } [center] - 中心点的渲染坐标。可以通过KnowledgeGraph.prototype.getViewPortCenterPoint获取。
2425 * @property {number } [zoom] - 缩放比例。
2526 * @property {number } [minZoom] - 最小缩放比例。若 fitView、zoom、zoomTo 等操作导致图的缩放比例小于该值,则将使用该值进行缩放,并返回 false。
2627 * @property {number } [maxZoom] - 最大缩放比例。若 fitView、zoom、zoomTo 等操作导致图的缩放比例大于该值,则将使用该值进行缩放,并返回 false。
@@ -43,7 +44,6 @@ import { G6Render } from './knowledge-graph/G6Render';
4344/**
4445 * @typedef {Object } KnowledgeGraph.Layout - 布局。
4546 * @property {string } [type='force'] - 布局类型, 可选值:['force']。 默认'force'。
46- * @property {Array.<number> } [center] - 布局的中心, 图的中心。
4747 */
4848
4949/**
@@ -416,6 +416,9 @@ export class KnowledgeGraph {
416416 if ( this . config . zoom !== undefined ) {
417417 this . zoom ( this . config . zoom ) ;
418418 }
419+ if ( this . config . center !== undefined ) {
420+ this . graphRender . setCenter ( { x : this . config . center [ 0 ] , y : this . config . center [ 1 ] } ) ;
421+ }
419422 } ;
420423 this . graph . on ( 'beforelayout' , cb ) ;
421424 return graph ;
Original file line number Diff line number Diff line change @@ -360,6 +360,14 @@ export class G6Render {
360360 getHeight ( ) {
361361 return this . graph . getHeight ( ) ;
362362 }
363+
364+ setCenter ( centerDrawPoint ) {
365+ var centerCanvasPointX = this . graph . getWidth ( ) / 2 ;
366+ var centerCanvasPointY = this . graph . getHeight ( ) / 2 ;
367+ var centerCanvasPointNew = this . graph . getCanvasByPoint ( centerDrawPoint . x , centerDrawPoint . y ) ;
368+ this . graph . translate ( centerCanvasPointX - centerCanvasPointNew . x , centerCanvasPointY - centerCanvasPointNew . y ) ;
369+ }
370+
363371 /**
364372 * @function G6Render.prototype._setToolBarStyle
365373 * @description 隐藏工具栏的redo undo realZoom按钮
Original file line number Diff line number Diff line change @@ -36,10 +36,10 @@ describe('GraphMap mapboxgl', () => {
3636 return Promise . resolve ( new Response ( graphmapData ) ) ;
3737 }
3838 } ) ;
39- var graphMap = new GraphMap ( knowledgegraphmapURL ) ;
40- graphMap . on ( 'loaded' , ( ) => {
39+ var graphMap = new GraphMap ( knowledgegraphmapURL , { config : { center : [ 0 , 0 ] } } ) ;
40+ graphMap . on ( 'loaded' , ( ) => {
4141 expect ( graphMap ) . not . toBeNull ( ) ;
4242 done ( ) ;
43- } )
43+ } ) ;
4444 } ) ;
4545} ) ;
You can’t perform that action at this time.
0 commit comments