Original Usenet thread from rec.arts.ascii, started 21 Jun 1995.
_ _ _ _ _ _ | | | |___ ___ _ __ ___| |_ / \ _ __ ___| |__ (_)_ _____ | | | / __|/ _ \ '_ \ / _ \ __| / _ \ | '__/ __| '_ \| \ \ / / _ \ | |_| \__ \ __/ | | | __/ |_ / ___ \| | | (__| | | | |\ V / __/ \___/|___/\___|_| |_|\___|\__| /_/ \_\_| \___|_| |_|_| \_/ \___|
Request: help doing ascii art for network diagrams
rec.arts.ascii
· 1 message · 21 Jun 1995
I could use some help doing ascii art for network diagrams. These would
be very useful for ascii versions of internet-drafts (working papers I
release as part of my research). Here is what I've tried:
This is my basic network diagram. Just a bunch of interconnected
routers with some sources and receivers designated. Note that my
routers just look like spools of thread! Ideally, they would be nice
round spheres and the interconnections would stand out better.
S
|
--- --- --- ---
| | | | | | | |
--- --- --- ---
\ / \ \ /
--- --- ---
| | | | | |---
--- --- --- \
| | | \
--- --- --- ---
| |-----| |-----| | | |
--- --- --- ---
/ \ / | /
--- --- --- /
| | | |---------| |---
--- --- ---
| | / \
--- --- --- ---
| | | | | | | |
--- --- --- ---
| |
R1 R2
From this basic diagram, I illustrate a sequence of events. In this
case, the two receivers are joining a multicast group via explicit
grafts...each sends a message up into the network, and I try to
illustrate the path the messages take. The M's stand for where R1's
message should go, the N's for R2's message. A number followed by M or
N indicates a sequence of events...first R1's message travels the first
hop. Then R2's etc. You should be able to get the idea...
S
|
--- --- --- ---
| | | | | | | |
--- --- --- ---
\ N M \ / M --- Intended explict route
--- --- --- for R1
| | | | | |---
--- --- --- \ N --- Intended explict route
N M | \ for R2
--- --- --- ---
| |--6N-| |-----| | | | 1M-5M --- Sequence of R1's grafts
--- --- --- ---
3M 5M M4N | / 2N-6N --- Sequence of R2's grafts
--- --- --- /
| | | |---------| |---
--- --- ---
1M 2N / \
--- --- --- ---
| | | | | | | |
--- --- --- ---
| |
R1 R2
And if you can't get the idea, here's a postscript version of what I
want:
-------------snip here! ---------------------------------------
%!
%%BoundingBox: 15 427 416 679
%%Title: black_hole
%%CreationDate: Wed Jun 21 10:52:59 1995
%%Creator: Tgif-2.16-p9 by William Chia-Wei Cheng (wil...@cs.UCLA.edu)
/tgifdict 5 dict def
tgifdict begin
/tgifellipsedict 6 dict def
tgifellipsedict /mtrx matrix put
/tgifellipse
{ tgifellipsedict begin
/yrad exch def
/xrad exch def
/y exch def
/x exch def
/savematrix mtrx currentmatrix def
x y translate
xrad yrad scale
0 0 1 0 360 arc
savematrix setmatrix
end
} def
/tgifarrowtipdict 8 dict def
tgifarrowtipdict /mtrx matrix put
/tgifarrowtip
{ tgifarrowtipdict begin
/dy exch def
/dx exch def
/h exch def
/w exch def
/y exch def
/x exch def
/savematrix mtrx currentmatrix def
x y translate
dy dx atan rotate
0 0 moveto
w neg h lineto
w neg h neg lineto
savematrix setmatrix
end
} def
end
%%PageBoundingBox: 15 427 416 679
tgifdict begin
/tgifsavedpage save def
1 setmiterlimit
1 setlinewidth
0 setgray
72 0 mul 72 11.00 mul translate
72 128 div 100 mul 100 div dup neg scale
gsave
% POLY/OPEN-SPLINE
0.000 0.000 0.000 setrgbcolor
gsave
newpath
156 280 moveto
156 232 lineto
stroke
grestore
% POLY/OPEN-SPLINE
0.000 0.000 0.000 setrgbcolor
gsave
newpath
72 572 moveto
72 608 lineto
stroke
grestore
% POLY/OPEN-SPLINE
0.000 0.000 0.000 setrgbcolor
gsave
newpath
156 572 moveto
156 608 lineto
stroke
grestore
% POLY/OPEN-SPLINE
0.000 0.000 0.000 setrgbcolor
gsave
newpath
73 275 moveto
115 349 lineto
stroke
grestore
% POLY/OPEN-SPLINE
0.000 0.000 1.000 setrgbcolor
gsave
7 setlinewidth
[4 4] 0 setdash
newpath
115 349 moveto
156 275 lineto
stroke
[] 0 setdash
1 setlinewidth
grestore
% POLY/OPEN-SPLINE
0.000 0.000 0.000 setrgbcolor
gsave
newpath
322 275 moveto
280 349 lineto
stroke
grestore
% POLY/OPEN-SPLINE
0.000 0.000 0.000 setrgbcolor
gsave
newpath
280 349 moveto
198 349 lineto
stroke
grestore
% POLY/OPEN-SPLINE
1.000 0.000 0.000 setrgbcolor
gsave
7 setlinewidth
newpath
198 349 moveto
156 275 lineto
stroke
1 setlinewidth
grestore
% POLY/OPEN-SPLINE
0.000 0.000 0.000 setrgbcolor
gsave
newpath
280 349 moveto
363 424 lineto
stroke
grestore
% POLY/OPEN-SPLINE
0.000 0.000 0.000 setrgbcolor
gsave
newpath
280 349 moveto
280 424 lineto
stroke
grestore
% POLY/OPEN-SPLINE
0.000 0.000 0.000 setrgbcolor
gsave
newpath
280 424 moveto
280 499 lineto
stroke
grestore
% POLY/OPEN-SPLINE
0.000 0.000 0.000 setrgbcolor
gsave
newpath
280 499 moveto
363 424 lineto
stroke
grestore
% POLY/OPEN-SPLINE
0.000 0.000 0.000 setrgbcolor
gsave
newpath
322 573 moveto
280 499 lineto
stroke
grestore
% POLY/OPEN-SPLINE
0.000 0.000 0.000 setrgbcolor
gsave
newpath
280 499 moveto
239 573 lineto
stroke
grestore
% POLY/OPEN-SPLINE
0.000 0.000 0.000 setrgbcolor
gsave
newpath
280 499 moveto
156 499 lineto
stroke
grestore
% POLY/OPEN-SPLINE
0.000 0.000 0.000 setrgbcolor
gsave
newpath
156 499 moveto
156 573 lineto
156 554 lineto
stroke
grestore
% POLY/OPEN-SPLINE
1.000 0.000 0.000 setrgbcolor
gsave
7 setlinewidth
newpath
156 499 moveto
198 424 lineto
stroke
1 setlinewidth
grestore
% POLY/OPEN-SPLINE
0.000 0.000 0.000 setrgbcolor
gsave
newpath
198 424 moveto
280 424 lineto
stroke
grestore
% POLY/OPEN-SPLINE
1.000 0.000 0.000 setrgbcolor
gsave
7 setlinewidth
newpath
198 424 moveto
198 349 lineto
stroke
1 setlinewidth
grestore
% POLY/OPEN-SPLINE
0.000 0.000 1.000 setrgbcolor
gsave
7 setlinewidth
[4 4] 0 setdash
newpath
115 349 moveto
115 424 lineto
stroke
[] 0 setdash
1 setlinewidth
grestore
% POLY/OPEN-SPLINE
0.000 0.000 0.000 setrgbcolor
gsave
newpath
115 424 moveto
198 424 lineto
stroke
grestore
% POLY/OPEN-SPLINE
0.000 0.000 0.000 setrgbcolor
gsave
newpath
156 499 moveto
115 424 lineto
stroke
grestore
% POLY/OPEN-SPLINE
0.000 0.000 0.000 setrgbcolor
gsave
newpath
115 424 moveto
73 499 lineto
stroke
grestore
% POLY/OPEN-SPLINE
0.000 0.000 0.000 setrgbcolor
gsave
newpath
73 499 moveto
73 573 lineto
stroke
grestore
% POLY/OPEN-SPLINE
0.000 0.000 0.000 setrgbcolor
gsave
newpath
280 349 moveto
239 275 lineto
stroke
grestore
% OVAL
0.000 0.000 0.000 setrgbcolor
newpath 73 573 20 19 tgifellipse
closepath 1 setgray fill
0.000 0.000 0.000 setrgbcolor
gsave
newpath 73 573 20 19 tgifellipse stroke
grestore
% OVAL
0.000 0.000 0.000 setrgbcolor
newpath 156 573 20 19 tgifellipse
closepath 1 setgray fill
0.000 0.000 0.000 setrgbcolor
gsave
newpath 156 573 20 19 tgifellipse stroke
grestore
% OVAL
0.000 0.000 0.000 setrgbcolor
newpath 239 573 21 19 tgifellipse
closepath 1 setgray fill
0.000 0.000 0.000 setrgbcolor
gsave
newpath 239 573 21 19 tgifellipse stroke
grestore
% OVAL
0.000 0.000 0.000 setrgbcolor
newpath 322 573 21 19 tgifellipse
closepath 1 setgray fill
0.000 0.000 0.000 setrgbcolor
gsave
newpath 322 573 21 19 tgifellipse stroke
grestore
% OVAL
0.000 0.000 0.000 setrgbcolor
newpath 280 498 20 18 tgifellipse
closepath 1 setgray fill
0.000 0.000 0.000 setrgbcolor
gsave
newpath 280 498 20 18 tgifellipse stroke
grestore
% OVAL
0.000 0.000 0.000 setrgbcolor
newpath 156 498 20 18 tgifellipse
closepath 1 setgray fill
0.000 0.000 0.000 setrgbcolor
gsave
newpath 156 498 20 18 tgifellipse stroke
grestore
% OVAL
0.000 0.000 0.000 setrgbcolor
newpath 73 498 20 18 tgifellipse
closepath 1 setgray fill
0.000 0.000 0.000 setrgbcolor
gsave
newpath 73 498 20 18 tgifellipse stroke
grestore
% OVAL
0.000 0.000 0.000 setrgbcolor
newpath 115 424 21 19 tgifellipse
closepath 1 setgray fill
0.000 0.000 0.000 setrgbcolor
gsave
newpath 115 424 21 19 tgifellipse stroke
grestore
% OVAL
0.000 0.000 0.000 setrgbcolor
newpath 197 424 20 19 tgifellipse
closepath 1 setgray fill
0.000 0.000 0.000 setrgbcolor
gsave
newpath 197 424 20 19 tgifellipse stroke
grestore
% OVAL
0.000 0.000 0.000 setrgbcolor
newpath 280 424 20 19 tgifellipse
closepath 1 setgray fill
0.000 0.000 0.000 setrgbcolor
gsave
newpath 280 424 20 19 tgifellipse stroke
grestore
% OVAL
0.000 0.000 0.000 setrgbcolor
newpath 363 424 20 19 tgifellipse
closepath 1 setgray fill
0.000 0.000 0.000 setrgbcolor
gsave
newpath 363 424 20 19 tgifellipse stroke
grestore
% OVAL
0.000 0.000 0.000 setrgbcolor
newpath 280 349 20 18 tgifellipse
closepath 1 setgray fill
0.000 0.000 0.000 setrgbcolor
gsave
newpath 280 349 20 18 tgifellipse stroke
grestore
% OVAL
0.000 0.000 0.000 setrgbcolor
newpath 197 349 20 18 tgifellipse
closepath 1 setgray fill
0.000 0.000 0.000 setrgbcolor
gsave
newpath 197 349 20 18 tgifellipse stroke
grestore
% OVAL
0.000 0.000 0.000 setrgbcolor
newpath 115 349 21 18 tgifellipse
closepath 1 setgray fill
0.000 0.000 0.000 setrgbcolor
gsave
newpath 115 349 21 18 tgifellipse stroke
grestore
% OVAL
0.000 0.000 0.000 setrgbcolor
newpath 73 275 20 19 tgifellipse
closepath 1 setgray fill
0.000 0.000 0.000 setrgbcolor
gsave
newpath 73 275 20 19 tgifellipse stroke
grestore
% OVAL
0.000 0.000 0.000 setrgbcolor
newpath 156 275 20 19 tgifellipse
closepath 1 setgray fill
0.000 0.000 0.000 setrgbcolor
gsave
newpath 156 275 20 19 tgifellipse stroke
grestore
% OVAL
0.000 0.000 0.000 setrgbcolor
newpath 239 275 21 19 tgifellipse
closepath 1 setgray fill
0.000 0.000 0.000 setrgbcolor
gsave
newpath 239 275 21 19 tgifellipse stroke
grestore
% OVAL
0.000 0.000 0.000 setrgbcolor
newpath 322 275 21 19 tgifellipse
closepath 1 setgray fill
0.000 0.000 0.000 setrgbcolor
gsave
newpath 322 275 21 19 tgifellipse stroke
grestore
% POLY/OPEN-SPLINE
1.000 0.000 0.000 setrgbcolor
gsave
7 setlinewidth
newpath
53 512 moveto
47 0 atan dup cos 22 mul exch sin 22 mul rmoveto
53 559 lineto
stroke
1 setlinewidth
grestore
gsave
newpath
53 512 22 9 0 -47 tgifarrowtip
1 setgray closepath fill
1.000 0.000 0.000 setrgbcolor
newpath
53 512 22 9 0 -47 tgifarrowtip
closepath fill
grestore
% POLY/OPEN-SPLINE
1.000 0.000 0.000 setrgbcolor
gsave
7 setlinewidth
newpath
89 438 moveto
37 -21 atan dup cos 22 mul exch sin 22 mul rmoveto
68 475 lineto
stroke
1 setlinewidth
grestore
gsave
newpath
89 438 22 9 21 -37 tgifarrowtip
1 setgray closepath fill
1.000 0.000 0.000 setrgbcolor
newpath
89 438 22 9 21 -37 tgifarrowtip
closepath fill
grestore
% POLY/OPEN-SPLINE
1.000 0.000 0.000 setrgbcolor
gsave
7 setlinewidth
newpath
130 485 moveto
-38 -20 atan dup cos 22 mul exch sin 22 mul rmoveto
110 447 lineto
stroke
1 setlinewidth
grestore
gsave
newpath
130 485 22 9 20 38 tgifarrowtip
1 setgray closepath fill
1.000 0.000 0.000 setrgbcolor
newpath
130 485 22 9 20 38 tgifarrowtip
closepath fill
grestore
% POLY/OPEN-SPLINE
0.000 0.000 1.000 setrgbcolor
gsave
7 setlinewidth
[4 4] 0 setdash
newpath
177 512 moveto
47 0 atan dup cos 22 mul exch sin 22 mul rmoveto
177 559 lineto
stroke
[] 0 setdash
1 setlinewidth
grestore
gsave
newpath
177 512 22 9 0 -47 tgifarrowtip
1 setgray closepath fill
0.000 0.000 1.000 setrgbcolor
newpath
177 512 22 9 0 -47 tgifarrowtip
closepath fill
grestore
% POLY/OPEN-SPLINE
0.000 0.000 1.000 setrgbcolor
gsave
7 setlinewidth
[4 4] 0 setdash
newpath
198 447 moveto
38 -21 atan dup cos 22 mul exch sin 22 mul rmoveto
177 485 lineto
stroke
[] 0 setdash
1 setlinewidth
grestore
gsave
newpath
198 447 22 9 21 -38 tgifarrowtip
1 setgray closepath fill
0.000 0.000 1.000 setrgbcolor
newpath
198 447 22 9 21 -38 tgifarrowtip
closepath fill
grestore
% POLY/OPEN-SPLINE
0.000 0.000 1.000 setrgbcolor
gsave
7 setlinewidth
[4 4] 0 setdash
newpath
136 415 moveto
0 41 atan dup cos 22 mul exch sin 22 mul rmoveto
177 415 lineto
stroke
[] 0 setdash
1 setlinewidth
grestore
gsave
newpath
136 415 22 9 -41 0 tgifarrowtip
1 setgray closepath fill
0.000 0.000 1.000 setrgbcolor
newpath
136 415 22 9 -41 0 tgifarrowtip
closepath fill
grestore
% TEXT
0.000 0.000 0.000 setrgbcolor
/Helvetica findfont [24 0 0 -24 0 0] makefont setfont
gsave
32 555 moveto (1) show
grestore
% TEXT
0.000 0.000 0.000 setrgbcolor
/Helvetica findfont [24 0 0 -24 0 0] makefont setfont
gsave
187 555 moveto (2) show
grestore
% TEXT
0.000 0.000 0.000 setrgbcolor
/Helvetica findfont [24 0 0 -24 0 0] makefont setfont
gsave
192 490 moveto (4) show
grestore
% TEXT
0.000 0.000 0.000 setrgbcolor
/Helvetica findfont [24 0 0 -24 0 0] makefont setfont
gsave
151 398 moveto (6) show
grestore
% TEXT
0.000 0.000 0.000 setrgbcolor
/Helvetica findfont [24 0 0 -24 0 0] makefont setfont
gsave
54 463 moveto (3) show
grestore
% TEXT
0.000 0.000 0.000 setrgbcolor
/Helvetica findfont [24 0 0 -24 0 0] makefont setfont
gsave
100 490 moveto (5) show
grestore
% POLY/OPEN-SPLINE
1.000 0.000 0.000 setrgbcolor
gsave
7 setlinewidth
newpath
464 328 moveto
420 328 lineto
stroke
1 setlinewidth
grestore
% POLY/OPEN-SPLINE
0.000 0.000 1.000 setrgbcolor
gsave
7 setlinewidth
[4 4] 0 setdash
newpath
464 392 moveto
420 392 lineto
stroke
[] 0 setdash
1 setlinewidth
grestore
% POLY/OPEN-SPLINE
1.000 0.000 0.000 setrgbcolor
gsave
7 setlinewidth
newpath
464 452 moveto
0 -44 atan dup cos 22 mul exch sin 22 mul rmoveto
420 452 lineto
stroke
1 setlinewidth
grestore
gsave
newpath
464 452 22 9 44 0 tgifarrowtip
1 setgray closepath fill
1.000 0.000 0.000 setrgbcolor
newpath
464 452 22 9 44 0 tgifarrowtip
closepath fill
grestore
% POLY/OPEN-SPLINE
0.000 0.000 1.000 setrgbcolor
gsave
7 setlinewidth
[4 4] 0 setdash
newpath
464 504 moveto
0 -44 atan dup cos 22 mul exch sin 22 mul rmoveto
420 504 lineto
stroke
[] 0 setdash
1 setlinewidth
grestore
gsave
newpath
464 504 22 9 44 0 tgifarrowtip
1 setgray closepath fill
0.000 0.000 1.000 setrgbcolor
newpath
464 504 22 9 44 0 tgifarrowtip
closepath fill
grestore
% TEXT
0.000 0.000 0.000 setrgbcolor
/Helvetica findfont [24 0 0 -24 0 0] makefont setfont
gsave
480 320 moveto (intended explicit route) show
480 349 moveto (for R1) show
grestore
% TEXT
0.000 0.000 0.000 setrgbcolor
/Helvetica findfont [24 0 0 -24 0 0] makefont setfont
gsave
480 384 moveto (intended explicit route) show
480 413 moveto (for R2) show
grestore
% TEXT
0.000 0.000 0.000 setrgbcolor
/Helvetica findfont [24 0 0 -24 0 0] makefont setfont
gsave
480 460 moveto (sequence of R1's grafts) show
grestore
% TEXT
0.000 0.000 0.000 setrgbcolor
/Helvetica findfont [24 0 0 -24 0 0] makefont setfont
gsave
480 512 moveto (sequence of R2's grafts) show
grestore
% TEXT
0.000 0.000 0.000 setrgbcolor
/Helvetica findfont [24 0 0 -24 0 0] makefont setfont
gsave
64 640 moveto (R1) show
grestore
% TEXT
0.000 0.000 0.000 setrgbcolor
/Helvetica findfont [24 0 0 -24 0 0] makefont setfont
gsave
144 640 moveto (R2) show
grestore
% TEXT
0.000 0.000 0.000 setrgbcolor
/Helvetica findfont [24 0 0 -24 0 0] makefont setfont
gsave
148 228 moveto (S) show
grestore
grestore
tgifsavedpage restore
end
%MatchingCreationDate: Wed Jun 21 10:52:59 1995
-------------snip here! -----------------------------------------
Thanks very much!
Daniel Zappala
dan...@isi.edu
Related ASCII art in the Gallery
Explore these categories from our collection of 11,000+ artworks:
__
\ \ _ _
\**\ ___\/ \
X*#####*+^^\_\
o/\ \
\__\ .------------. |\\//\\//\\//| |//\\//\\//\\| |\\//\\//\\//| |//\\//\\//\\| '------------'
_______ /` _____ `\;, /__(^===^)__\';, / ::: \ ,; | ::: | ,;' '._______.'`jgs
_ _ (o)(o)--. \../ ( )hjw m\/m--m'`--.
_ _
/` \/ `\_ _
\ /` \/ `\
'. .\ /
\/ '. .'
\/jgs __ . . __ (o.\ \/ /.o) \__\/\/__/ /O /==\ O\ (;O/ \/ \O;)
Make your own ASCII art
Turn images, text or 3D into ASCII, or draw your own – right in your browser.
About this thread.
These messages were posted publicly to the newsgroup
rec.arts.ascii
in 1995 and are mirrored here unchanged as part of the Historic Archives – only email addresses are masked.
The artwork and text belong to their original authors: if you copy a piece, keep the artist's initials or signature intact and credit them where you can.
Are you one of the authors? Contact us to get your posts attributed, connected to your artist profile, or removed.
Report this message
Help us keep the archive clean and accurate. Reports are reviewed by a person – nothing is changed automatically.