From 22942add557f242425ae9d9813ff13377d515b51 Mon Sep 17 00:00:00 2001 From: epoch Date: Fri, 13 Mar 2020 09:03:06 -0500 Subject: added an anonet map --- share/hackvr/examples/anonet_map/map | 58 +++++++++++++++++++++++++ share/hackvr/examples/anonet_map/paths-to-edges | 5 +++ share/hackvr/examples/anonet_map/run | 8 ++++ 3 files changed, 71 insertions(+) create mode 100755 share/hackvr/examples/anonet_map/map create mode 100755 share/hackvr/examples/anonet_map/paths-to-edges create mode 100755 share/hackvr/examples/anonet_map/run (limited to 'share/hackvr/examples/anonet_map') diff --git a/share/hackvr/examples/anonet_map/map b/share/hackvr/examples/anonet_map/map new file mode 100755 index 0000000..4c839a7 --- /dev/null +++ b/share/hackvr/examples/anonet_map/map @@ -0,0 +1,58 @@ +#!/bin/bash +paths="$(ncat --recv-only 21.41.41.1 64777 | sort | uniq)" +nodes=$(printf "%s\n" "$paths" | tr ' ' '\n' | sort | uniq) +nodes_count="$(printf "%s\n" "$nodes" | tr ' ' '\n' | wc -l | tr -cd '0-9')" +#echo $nodes +#echo $nodes_count +echo $USER move 0 0 -17 +coords="$( (for node in $nodes;do + printf "AS%s addshape 4 2 0 8 0 0 0 0\n" "$node" + printf "AS* rotate 0 0 +%d\n" "$[360 / ${nodes_count} ]" + printf "AS* flatten\n" +done +printf "* export *\n" +) | hackvr_headless 2>/dev/null | sed 's/^*_AS//g' | cut '-d ' -f5,6)" +#printf "%s\n" "$coords" +xcoords="$(printf "%s\n" "$coords" | cut '-d ' -f1)" +ycoords="$(printf "%s\n" "$coords" | cut '-d ' -f2)" + +#echo $xcoords +#echo $ycoords + +edges=$(printf "%s\n" "$paths" | tr '\n' '\0' | xargs -n1 -0 ./paths-to-edges | sort | uniq | tr ' ' '_') + +index_of() { + printf "%s\n" "$nodes" | grep -n '^'"$1"'$' | cut -d: -f1 +} + +xcoord_by_ASN() { + printf "%s\n" "$xcoords" | head -n "$(index_of $1)" | tail -n1 +} + +ycoord_by_ASN() { + printf "%s\n" "$ycoords" | head -n "$(index_of $1)" | tail -n1 +} + +line_between_nodes() { + a=$(printf "%s\n" "$1" | cut -d_ -f1) + b=$(printf "%s\n" "$1" | cut -d_ -f2) + printf "%s->%s addshape 2 2 %s %s 0 %s %s 0\n" "$a" "$b" $(xcoord_by_ASN $a) $(ycoord_by_ASN $a) $(xcoord_by_ASN $b) $(ycoord_by_ASN $b) +} + +for node in $nodes;do + printf " addshape 5 4 -1 8 0 -1 10 0 1 10 0 1 8 0\n" "$node" + printf "$' | sed 's/^<\(.*\)>$/\1/g' | tr '\n' '\0' | xargs -n1 -0 copy_start_nevermind.sh & + fi + done -- cgit v1.2.3