Skip to content
This repository was archived by the owner on Jul 18, 2022. It is now read-only.
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion docs/assets/js/main.js

Large diffs are not rendered by default.

3 changes: 1 addition & 2 deletions index.html
Original file line number Diff line number Diff line change
Expand Up @@ -25,14 +25,13 @@

<script> var exports = {}; </script>
<script src="./node_modules/vistorian-core/lib/vistorian-core.js"></script>
<script src="./node_modules/vistorian-vis/lib/vistorian-vis.js"></script>
<script src="./lib/vistorian-web.js"></script>

</head>
<title>Node link</title>

<body>
<!-- VS: Call to trace_test_130529 -->
<script type="text/javascript" src="./static/traces/trace_test_130529.js"></script>
<table>
<tr>

Expand Down
6 changes: 3 additions & 3 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -27,19 +27,19 @@
},
"repository": {
"type": "git",
"url": "git+https://github.com/networkcube/vistorian-dynamicego.git"
"url": "git+https://github.com/alkadi-mh/vistorian-dynamicego.git"
},
"collaborators": [
"Jean-Daniel Fekete <Jean-Daniel.Fekete@inria.fr",
"Alexandra Ibarra Cuesta"
],
"homepage": "https://github.com/networkcube/networkcube#readme",
"homepage": "https://github.com/alkadi-mh/vistorian-dynamicego#readme",
"bundledDependencies": [
"jquery",
"jstorage",
"moment",
"vistorian-core",
"vistorian-vis"
"vistorian-web"
],
"dependencies": {
"@types/three": "^0.93.27",
Expand Down
51 changes: 50 additions & 1 deletion src/dynamicego.ts
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,8 @@ import * as timeslider from 'vistorian-core/src/timeslider';
var dgraph: dynamicgraph.DynamicGraph = main.getDynamicGraph();
messenger.setDefaultEventListener(updateEventHandler);
messenger.addEventListener('timeRange', timeRangeHandler);
messenger.addEventListener(messenger.MESSAGE_SET_STATE, setStateHandler);
messenger.addEventListener(messenger.MESSAGE_GET_STATE, getStateHandler);

var nodes: dynamicgraph.Node[] = dgraph.nodes().toArray();
var links: dynamicgraph.Link[] = dgraph.links().toArray();
Expand Down Expand Up @@ -114,7 +116,7 @@ var timeline: tline.Timeline = new tline.Timeline(webgl, dgraph, TABLE_PADDING_L
window.addEventListener("mousewheel", mouseWheelHandler, false);

$('#menu').append('\
<select id="labelOrdering">\
<select id="labelOrdering" onchange=trace.event(\'vis_37\',\'DynamicEgo\',\'labelingType\',this.value)">\
<option value="data">As appear in table</option>\
<option value="alphanumerical">Alphanumerical</option>\
<option value="degree">Number of connections</option>\
Expand Down Expand Up @@ -483,6 +485,7 @@ export function mouseWheelHandler(event: any) {
updateLinks();
updateNodes();
webgl.render();
messenger.zoomInteraction("dynamicego","zoom");
}


Expand Down Expand Up @@ -562,3 +565,49 @@ export function showEgoNetwork(n: dynamicgraph.Node) {

}

function setStateHandler(m: messenger.SetStateMessage){
if (m.viewType=="dynamicego"){

var state: messenger.TimeArchsControls = m.state as messenger.TimeArchsControls;
// unpack / query that state object

LABEL_ORDER=state.labellingType;
updateGlobalOrder();

startUnix=state.timeSliderStart;
endUnix=state.timeSliderEnd;

// set time (start/end)
messenger.timeRange(state.timeSliderStart, state.timeSliderEnd, times[0], true);

// camera
/* webgl=state.webglState;
webgl.camera.position.x=state.camera_position_x ;
webgl.camera.position.y=state.camera_position_y ;
webgl.camera.position.z=state.camera_position_z ; */
}
}

function getStateHandler( m: messenger.GetStateMessage){
if (m.viewType=="dynamicego"){
/* var webglState=webgl;
var camera_position_x=webgl.camera.position.x;
var camera_position_y=webgl.camera.position.y;
var camera_position_z=webgl.camera.position.z; */
var dyEgoNetwork: messenger.NetworkControls=new messenger.TimeArchsControls("dynamicego",startUnix,endUnix,LABEL_ORDER);
//,webglState,camera_position_x,camera_position_y,camera_position_z);
/* var bookmarksArray=JSON.parse(localStorage.getItem("vistorianBookmarks") || "[]");

if (m.bookmarkIndex!=bookmarksArray.length-1){
bookmarksArray[m.bookmarkIndex].controlsValues[2]=dyEgoNetwork;
}
else{
bookmarksArray[m.bookmarkIndex].controlsValues.push(dyEgoNetwork);

}
localStorage.setItem("vistorianBookmarks", JSON.stringify(bookmarksArray)) */
messenger.stateCreated(dyEgoNetwork,m.bookmarkIndex,m.viewType,m.isNewBookmark,m.typeOfMultiView);

}

}
11 changes: 6 additions & 5 deletions static/dataview_styles.css
Original file line number Diff line number Diff line change
Expand Up @@ -95,8 +95,9 @@ img.controlIcon{
display:inline-block;
cursor:pointer;
color:#ffffff;
font-size:12px;
}
background-color:gray;
font-size:14px;
font-weight: bold;}

input#replaceButton{
margin-left: 10px;
Expand All @@ -110,14 +111,14 @@ input#replaceButton{
}

.menuButton{
background-color:#bbb;
background-color:gray;
font-size:14px;
font-weight: bold;
border-radius:15px;
border: none;
display:inline-block;
cursor:pointer;
color:#fff;
font-size:12px;
font-weight: normal;
padding-top: 0px;
padding-right: 6px;
padding-bottom: 0px;
Expand Down
102 changes: 66 additions & 36 deletions static/traces/trace.js
Original file line number Diff line number Diff line change
@@ -1,12 +1,28 @@
(function() {

var _traceq = _traceq || [];
var traceUrl = "http://vizatt.saclay.inria.fr/";
var traceUrl = "/trace";
// "http://localhost:5000/trace";
var _sending = null;
var sessionId;
var starting = true;
var debug = false;
var debug = false;
var loggingEnabled=false;

const storageType=sessionStorage;
const LoggingPhase='acceptLogging';
const SessionLogId='SessionLogId';

function SetLoggingStatus(val) {
localStorage.setItem(LoggingPhase, val);


}
function UpdateLoggingStatus() {
loggingEnabled= Boolean(localStorage.getItem(LoggingPhase));

};
UpdateLoggingStatus();

trace = {version: "0.3"};

Expand All @@ -22,20 +38,27 @@

trace.debug = function(d) {
if (!arguments.length) return debug;
debug = d;
// debug = d;
return trace;
};

var uuid = function() {
var uuid = "", i, random;
for (i = 0; i < 32; i++) {
random = Math.random() * 16 | 0;

if (i == 8 || i == 12 || i == 16 || i == 20) {
uuid += "-";
}
uuid += (i == 12 ? 4 : (i == 16 ? (random & 3 | 8) : random)).toString(16);
}
if (!(localStorage.getItem(SessionLogId))){
var uuid = "", i, random;
for (i = 0; i < 32; i++) {
random = Math.random() * 16 | 0;

if (i == 8 || i == 12 || i == 16 || i == 20) {
uuid += "-";
}
uuid += (i == 12 ? 4 : (i == 16 ? (random & 3 | 8) : random)).toString(16);
}
localStorage.setItem(SessionLogId, uuid);
}
else{
uuid=localStorage.getItem(SessionLogId);
}

return uuid;
};

Expand Down Expand Up @@ -106,29 +129,36 @@
}

function traceEvent(cat, action, label, value) {
// if (starting) {
// starting = false;
// _sending = [];
// traceEvent("_trace", "document.location", "href", document.location.href);
// traceEvent("_trace", "browser", "userAgent", navigator.userAgent);
// traceEvent("_trace", "screen", "size", "w:"+screen.width+";h:"+screen.height);
// traceEvent("_trace", "window", "innerSize", "w:"+window.innerWidth+";h:"+window.innerHeight);
// _sending = null;
// }

// if (debug) {
// window.console && console.log("Track["+cat+","+action+","+label+"]");
// }
// var ts = Date.now();
// _traceq.push({"session": sessionId,
// "ts": ts,
// "cat": cat,
// "action": action,
// "label": label,
// "value": value});
// if (_sending == null)
// sendLogs();
// return trace;

// if (Boolean(localStorage.getItem(LoggingPhase))){
if (starting) {
//if (StartedLogging()) {
// storageType.setItem(LoggingPhase,false);

starting = false;
_sending = [];
traceEvent("log_1", "Vistorian Trace", "Session", "Start");
// traceEvent("_trace", "document.location", "href", localStorage.getItem(SessionLogId));
// traceEvent("_trace", "browser", "userAgent", navigator.userAgent);
// traceEvent("_trace", "screen", "size", "w:"+screen.width+";h:"+screen.height);
// traceEvent("_trace", "window", "innerSize", "w:"+window.innerWidth+";h:"+window.innerHeight);
_sending = null;
}

if (debug) {
window.console && console.log("Track["+cat+","+action+","+label+"]");
}
var ts = Date.now();
_traceq.push({"session": sessionId,
"ts": ts,
"cat": cat,
"action": action,
"label": label,
"value": value});
if (_sending == null)
sendLogs();
return trace;
// }
}

// console.log("Trace initialized with sessionId=%s", sessionId);
Expand All @@ -150,4 +180,4 @@
trace.eventDeferred = traceEventDeferred;
trace.eventClear = traceEventClear;
sessionId = uuid();
})();
})();
32 changes: 0 additions & 32 deletions static/traces/trace_test_130529.js

This file was deleted.

4 changes: 2 additions & 2 deletions web/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -25,14 +25,14 @@

<body>
<!-- VS: Call to trace_test_130529 -->
<script type="text/javascript" src="../static/traces/trace_test_130529.js"></script>
<!-- <script type="text/javascript" src="../static/traces/trace_test_130529.js"></script> -->
<div>
<div id="menu">
<label>Select any node to show only this node's relations.</label></br>
<label>Order labels by:</label>
<!-- VS: Clicks on Manual -->
<a class="manual-button" target="_blank" href="https://github.com/networkcube/networkcube/wiki/Visualization-Manual#dynamic-ego-network-visualization-dynamicego"
onclick="trace.event('help', 'ts_EgoNetworkVisManual', 'CCC', 'DDD')">Manual</a>
onclick="trace.event('hlp_1', 'Vis Dynamic Ego', 'Vis Manual', 'click')">>Manual</a>

</div>
<div id="visDiv"></div>
Expand Down