Browse Source

fixed corpus map canvas resolution

Bachir Soussi Chiadmi 7 years ago
parent
commit
2df8d15d91

+ 1 - 1
sites/all/modules/figli/edlp_corpus/assets/dist/scripts/corpus.min.js

@@ -1,5 +1,5 @@
 
-(function($,Drupal,drupalSettings){EdlpCorpus=function(){var _activated=true;var _$body=$('body');var _$container=_$body;var _dpi=window.devicePixelRatio;var _$canvas=$('<canvas id="corpus-map">').appendTo(_$container);var _canvas=_$canvas[0];var _ctx=_canvas.getContext('2d');var _canvas_props={'margin_top':0,'margin_right':0,'margin_bottom':0,'margin_left':0};var _physics=new Physics();var _nodes=[];var _articles_nodes=[];var _no_articles_nodes=[];var _articles_filter_on=false;var _nodes_by_entries={};var _nodes_by_nid={};var _nodes_Nid_Id={};var _nodes_centered=[];var _nodes_centered_attractions=[];var _playlist=[];var _p_velocity_factor=0.5;var _mouse_in=true;var _m_pos={x:0,y:0};var _node_hover_id=-1;var _node_opened_id=-1;var _$entrees_block=$('#block-edlpentreesblock');var _$entrees_block_termlinks=$('a.term-link',_$entrees_block);var _$articles_link;var _node_pop_up;var _settings=drupalSettings.edlp_corpus;var _ecolors=_settings.colors;var _attracter;function init(){initCanvas();if(_activated){loadCorpus();}else{_$canvas.addClass('de-activated');}};function initCanvas(){window.addEventListener('resize',onResizeCanvas,false);onResizeCanvas();};function onResizeCanvas(){_canvas.width=window.innerWidth*_dpi;_canvas.height=window.innerHeight*_dpi;if(_nodes.length){for(var i=0;i<_nodes.length;i++){_nodes[i].onResizeCanvas();}
+(function($,Drupal,drupalSettings){EdlpCorpus=function(){var _activated=true;var _$body=$('body');var _$container=_$body;var _$canvas=$('<canvas id="corpus-map">').appendTo(_$container);var _canvas=_$canvas[0];var _ctx=_canvas.getContext('2d');var _dpi=window.devicePixelRatio;var _canvas_props={'margin_top':0,'margin_right':0,'margin_bottom':0,'margin_left':0};var _physics=new Physics();var _nodes=[];var _articles_nodes=[];var _no_articles_nodes=[];var _articles_filter_on=false;var _nodes_by_entries={};var _nodes_by_nid={};var _nodes_Nid_Id={};var _nodes_centered=[];var _nodes_centered_attractions=[];var _playlist=[];var _p_velocity_factor=0.5;var _mouse_in=true;var _m_pos={x:0,y:0};var _node_hover_id=-1;var _node_opened_id=-1;var _$entrees_block=$('#block-edlpentreesblock');var _$entrees_block_termlinks=$('a.term-link',_$entrees_block);var _$articles_link;var _node_pop_up;var _settings=drupalSettings.edlp_corpus;var _ecolors=_settings.colors;var _attracter;function init(){initCanvas();if(_activated){loadCorpus();}else{_$canvas.addClass('de-activated');}};function initCanvas(){window.addEventListener('resize',onResizeCanvas,false);onResizeCanvas();};function onResizeCanvas(){_canvas.style.width=window.innerWidth;_canvas.style.height=window.innerHeight;_canvas.width=window.innerWidth*_dpi;_canvas.height=window.innerHeight*_dpi;_ctx.scale(_dpi,_dpi);if(_nodes.length){for(var i=0;i<_nodes.length;i++){_nodes[i].onResizeCanvas();}
 resizePhysics();}};function loadCorpus(){var ajax_path=_settings.load_corpus_ajax_url;var path=window.location.origin+Drupal.url(ajax_path);$.getJSON(path,{}).done(function(data){onCorpusLoaded(data);}).fail(function(jqxhr,textStatus,error){onCorpusLoadError(jqxhr,textStatus,error);});};function onCorpusLoadError(jqxhr,textStatus,error){void 0;};function onCorpusLoaded(data){initPhysics();buildNodes(data.nodes);initArtilesLink();initNodePopup();initEvents();checkPreOpenedEntry();startAnime();};function initPhysics(){_attracter=_physics.makeParticle(1000);_attracter.fixed=true;resizePhysics();};function resizePhysics(){_attracter.position={x:_canvas.width/2,y:_canvas.height/2};};function buildNodes(nodes){var d;for(var i in nodes){d=i<1?true:false;new Node(i,nodes[i],d);_playlist.push({'id':i,'nid':nodes[i].nid,'audio_url':nodes[i].audio_url});}};function Node(i,node,d){this.id=i;for(key in node)
 this[key]=node[key];_nodes.push(this);_nodes_by_nid[this.nid]=this;_nodes_Nid_Id[this.nid]=this.id;if(this.has_article==1){_articles_nodes.push(this);}else{_no_articles_nodes.push(this);}
 for(var j=0;j<this.entrees.length;j++){if(typeof _nodes_by_entries[this.entrees[j]]=='undefined')

+ 4 - 2
sites/all/modules/figli/edlp_corpus/assets/scripts/corpus.js

@@ -21,10 +21,10 @@
     var _activated = true;
     var _$body = $('body');
     var _$container = _$body;
-    var _dpi = window.devicePixelRatio;
     var _$canvas = $('<canvas id="corpus-map">').appendTo(_$container);
     var _canvas = _$canvas[0];
     var _ctx = _canvas.getContext('2d');
+    var _dpi = window.devicePixelRatio;
     var _canvas_props = {
       // 'margin_top':90, // with red border on head
       // 'margin_top':75, // without red border on head
@@ -95,9 +95,11 @@
       onResizeCanvas();
     };
     function onResizeCanvas() {
-      // https://medium.com/wdstack/fixing-html5-2d-canvas-blur-8ebe27db07da
+      _canvas.style.width = window.innerWidth;
+      _canvas.style.height = window.innerHeight;
       _canvas.width = window.innerWidth*_dpi;
       _canvas.height = window.innerHeight*_dpi;
+      _ctx.scale(_dpi, _dpi);
 
 
       if(_nodes.length){