diff --git a/scripts/make_js_stuff.py b/scripts/make_js_stuff.py
new file mode 100644
index 0000000..13ddbe4
--- /dev/null
+++ b/scripts/make_js_stuff.py
@@ -0,0 +1,25 @@
+from abp import clifford
+import json
+
+with open("../server/tables.js", "w") as f:
+ f.write("var decompositions = ")
+ f.write(json.dumps(clifford.decompositions))
+ f.write(";\n")
+
+ f.write("var conjugation_table = ")
+ f.write(json.dumps(clifford.conjugation_table.tolist()))
+ f.write(";\n")
+
+ f.write("var times_table = ")
+ f.write(json.dumps(clifford.times_table.tolist()))
+ f.write(";\n")
+
+ f.write("var cz_table = ")
+ f.write(json.dumps(clifford.cz_table.tolist()))
+ f.write(";\n")
+
+ f.write("var clifford = ")
+ f.write(json.dumps(clifford.by_name))
+ f.write(";\n")
+
+
diff --git a/server/anders_briegel.js b/server/anders_briegel.js
index f0207e6..f405fe4 100644
--- a/server/anders_briegel.js
+++ b/server/anders_briegel.js
@@ -105,9 +105,3 @@ function log_graph_state() {
console.log(ngbh);
}
-add_node(0);
-add_node(1);
-act_local_rotation(0, 10);
-act_local_rotation(1, 10);
-act_cz(0, 1);
-log_graph_state();
diff --git a/server/api.js b/server/api.js
index 6f8663f..50a900f 100644
--- a/server/api.js
+++ b/server/api.js
@@ -1,10 +1,5 @@
var ws;
-function add_node(node){
- data = {"method": "add_node", "node": node};
- ws.send(JSON.stringify(data));
-}
-
function connect_to_server() {
ws = new WebSocket("ws://localhost:5001");
ws.onopen = function()
diff --git a/server/graph.js b/server/graph.js
index 99acec6..5a16118 100644
--- a/server/graph.js
+++ b/server/graph.js
@@ -1,20 +1,39 @@
-function buildGraph(json) {
+var graph;
+
+function graph_model(){
+ this.geometry = new THREE.Geometry();
+ this.nodes = new THREE.Points(this.geometry, materials.qubit);
+ this.nodes.geometry.dynamic = true;
+ this.object = new THREE.Object3D();
+ this.object.add(this.nodes);
+
+ this.add_node = function(node){
+ var vertex = new THREE.Vector3(0, 0, 0);
+ this.nodes.geometry.vertices.push(vertex);
+ this.nodes.geometry.verticesNeedUpdate = true;
+ render();
+ };
+}
+
+
+
+//function buildGraph(json) {
// Add all the qubits
- var geometry = new THREE.Geometry();
- var vertex = new THREE.Vector3(0, 0, 0);
- geometry.vertices.push(vertex);
- var nodes = new THREE.Points(geometry, materials.node);
+ //var geometry = new THREE.Geometry();
+ //var vertex = new THREE.Vector3(0, 0, 0);
+ //geometry.vertices.push(vertex);
+ //var nodes = new THREE.Points(geometry, materials.node);
// Add all the edges
- var edges = new THREE.Object3D();
- edges.add(makeEdge({
- "start": [0, 0, 0],
- "end": [1, 1, 1]
- }));
+ //var edges = new THREE.Object3D();
+ //edges.add(makeEdge({
+ //"start": [0, 0, 0],
+ //"end": [1, 1, 1]
+ //}));
// Construct and return
- var graph = new THREE.Object3D();
- graph.add(nodes);
- graph.add(edges);
- return graph;
-}
+ //var graph = new THREE.Object3D();
+ //graph.add(nodes);
+ //graph.add(edges);
+ //return graph;
+//}
diff --git a/server/grid.js b/server/grid.js
deleted file mode 100644
index 553927b..0000000
--- a/server/grid.js
+++ /dev/null
@@ -1,5 +0,0 @@
-//TODO Move to THREE.gridhelper
-// Make a grid
-function makeGrid(side, n, color) {
- return grid;
-}
diff --git a/server/index.html b/server/index.html
index 70d5e3b..4e4a49b 100644
--- a/server/index.html
+++ b/server/index.html
@@ -15,6 +15,7 @@
+
diff --git a/server/main.css b/server/main.css
new file mode 100644
index 0000000..ff0f9a6
--- /dev/null
+++ b/server/main.css
@@ -0,0 +1,47 @@
+html, body { margin: 0; padding: 0; overflow: hidden; font-size: 10pt; font-family: "courier new"; }
+#infoholder {
+ background: black;
+ color:white;
+ padding: 5px;
+ margin:0px;
+ position: absolute;
+ top:5px;
+ left:5px;
+ font-family:"courier new";
+ text-align: center;
+ font-size:10pt;
+ height:15px;
+ border-radius:3px;
+}
+
+#pallette {
+ background-color: black;
+ /*border-radius:3px;*/
+ color:white;
+ padding: 10px;
+ font-family:"courier new";
+ position: absolute;
+ top: 10px;
+ right: 10px;
+ font-size: 9pt;
+}
+
+ul {
+ list-style-type: none;
+ padding: 0px;
+ margin: 0px;
+}
+
+.visible {
+ visibility: visible;
+ opacity: 1;
+ transform: scale(1);
+ transition: opacity .08s linear, transform .08s linear;
+}
+
+.hidden {
+ visibility: hidden;
+ opacity: 0;
+ transform: scale(.5);
+ transition: visibility .08s, opacity .08s linear, transform .08s linear;
+}
diff --git a/server/main.js b/server/main.js
index db878d0..597b6b0 100644
--- a/server/main.js
+++ b/server/main.js
@@ -14,6 +14,8 @@ window.onload = init;
function makeScene() {
var myScene = new THREE.Scene();
var grid = new THREE.GridHelper(20, 2);
+ graph = new graph_model();
+ myScene.add(graph.object);
grid.rotation.x = Math.PI/2;
grid.setColors(0xdddddd, 0xeeeeee);
myScene.add(grid);
diff --git a/server/poll.js b/server/poll.js
new file mode 100644
index 0000000..83f4779
--- /dev/null
+++ b/server/poll.js
@@ -0,0 +1,21 @@
+function poll() {
+ var ws = new WebSocket("ws://localhost:5001");
+ ws.onopen = function()
+ {
+ console.log("Connected to server.");
+ };
+
+ ws.onmessage = function (evt)
+ {
+ var received_msg = evt.data;
+ console.log("Message received: " + evt.data);
+ };
+
+ ws.onclose = function()
+ {
+ console.log("Connection was closed.");
+ };
+}
+
+window.onload = poll;
+