US Hawks 3D Viewer

Your browser does not support the HTML5 canvas tag.

View:  

JSON Line Segments        

Format for each segment:   [   x1,y1,z1,   x2,y2,z2,   thickness,   "RRGGBB"   ]

Examples:              
General Examples (Details)

  Simple Pyramid
[
 [  -5, -5, -5,    5, -5, -5,    1, "44ff44" ], // Base -X to +X
 [   5, -5, -5,    5,  5, -5,    1, "44ff44" ], // Base -Y to +Y
 [   5,  5, -5,   -5,  5, -5,    1, "44ff44" ], // Base +X to -X
 [  -5,  5, -5,   -5, -5, -5,    1, "44ff44" ], // Base +Y to -Y

 [  -5, -5, -5,    0,  0,  5,    1, "44ff44" ], // Base -X -Y to Top
 [   5, -5, -5,    0,  0,  5,    1, "44ff44" ], // Base +X -Y to Top
 [   5,  5, -5,    0,  0,  5,    1, "44ff44" ], // Base +X +Y to Top
 [  -5,  5, -5,    0,  0,  5,    1, "44ff44" ], // Base -X +Y to Top
]
[
 [ 0, 0, 0,       5, 0, 0,     1,   "ff0000" ], // Line from origin to (5,0,0)
 [ 0, 0, 0,       0, 5, 0,     1,   "00ff00" ], // Line from origin to (0,5,0)
 [ 0, 0, 0,       0, 0, 5,     1,   "0000ff" ], // Line from origin to (0,0,5)
]

  Simple Half Pyramid (experiment with Toggle Mirror button)
[
 [   5, -5, -5,    5,  5, -5,    1, "ff4444" ], // Base +X,-Y to +X,+Y
 [   5, -5, -5,    0, -5, -5,    1, "ff4444" ], // Base +X,-Y to 0X,-Y
 [   5,  5, -5,    0,  5, -5,    1, "ff4444" ], // Base +X,+Y to 0X,+Y
 [   5, -5, -5,    0,  0,  5,    1, "ff4444" ], // Base +X -Y to Top
 [   5,  5, -5,    0,  0,  5,    1, "ff4444" ], // Base +X +Y to Top
]

  Simple Cube
[
 [   5,  5,  5,   -5,  5,  5,    1, "4444ff" ], // Positive Corner to -X
 [   5,  5,  5,    5, -5,  5,    1, "4444ff" ], // Positive Corner to -Y
 [   5,  5,  5,    5,  5, -5,    1, "4444ff" ], // Positive Corner to -Z

 [  -5, -5, -5,    5, -5, -5,    1, "4444ff" ], // Negative Corner to +X
 [  -5, -5, -5,   -5,  5, -5,    1, "4444ff" ], // Negative Corner to +Y
 [  -5, -5, -5,   -5, -5,  5,    1, "4444ff" ], // Negative Corner to +Z

 [  -5,  5,  5,   -5, -5,  5,    1, "4444ff" ], // Top -X Line
 [   5, -5,  5,   -5, -5,  5,    1, "4444ff" ], // Top -Y Line

 [   5,  5, -5,    5, -5, -5,    1, "4444ff" ], // Bottom +X Line
 [   5,  5, -5,   -5,  5, -5,    1, "4444ff" ], // Bottom +Y Line

 [   5, -5,  5,    5, -5, -5,    1, "4444ff" ], // Side +X -Y Line
 [  -5,  5,  5,   -5,  5, -5,    1, "4444ff" ], // Side -X +Y Line
]

  Four Sticks
[
 [ -1, -2, -2,   -1,  2, 2,    8,  "ff0000" ],
 [ -2,  1, -2,    2,  1, 2,    8,  "00ff00" ],
 [  1,  2, -2,    1, -2, 2,    8,  "0000ff" ],
 [  2, -1, -2,   -2, -1, 2,    8,  "ff00ff" ],
]

  Segmented Line
[
 // Draw the full line first to avoid any gaps
 [ 0, 0, 0,   5, 0, 0,    8,  "ff0000" ],  // The full line
 // Re-draw as segments (presumably from back to front)
 [ 0, 0, 0,   1, 0, 0,    8,  "ff0000" ],  // Segment 1
 [ 1, 0, 0,   2, 0, 0,    8,  "ff0000" ],  // Segment 2
 [ 2, 0, 0,   3, 0, 0,    8,  "ff0000" ],  // Segment 3
 [ 3, 0, 0,   4, 0, 0,    8,  "ff0000" ],  // Segment 4
 [ 4, 0, 0,   5, 0, 0,    8,  "ff0000" ],  // Segment 5
]

Build a Glider Examples (Details)

  Start with nothing (experiment with "Toggle Axes" button)
[
]

  Add a Keel
[
 [ 0, 5, 0,    0, -5, 0,     4,    "ff00ff" ], // Keel
]

  Add a Leading Edge (toggle mirror to hide/show mirrored side)
[
 [ 0, 5, 0,    0, -5, 0,     4,   "ff00ff" ], // Keel
 [ 0, 5, 0,   15, -3, 0.2,   4,   "ffff00" ], // Leading Edge
]

  Add a CrossBar
[
 [ 0, 5, 0,      0,  -5, 0,    4,   "ff00ff" ], // Keel
 [ 0, 5, 0,     15,  -3, 0.2,  4,   "ffff00" ], // Leading Edge
 [ 0, 1.6, 0,    9, 0.2, 0.1,  6,   "00ffff" ], // Crossbar
]

  Add a Kingpost
[
 [ 0, 5, 0,      0,  -5, 0,    4,   "ff00ff" ], // Keel
 [ 0, 5, 0,     15,  -3, 0.2,  4,   "ffff00" ], // Leading Edge
 [ 0, 1.6, 0,    9, 0.2, 0.1,  6,   "00ffff" ], // Crossbar
 [ 0, 1, 0,      0, 0.9, 3,    6,   "0000ff" ], // Kingpost
]

  Add a Downtube (will be mirrored)
[
 [ 0, 5, 0,      0,  -5, 0,    4,   "ff00ff" ], // Keel
 [ 0, 5, 0,     15,  -3, 0.2,  4,   "ffff00" ], // Leading Edge
 [ 0, 1.6, 0,    9, 0.2, 0.1,  6,   "00ffff" ], // Crossbar
 [ 0, 1, 0,      0, 0.9, 3,    6,   "0000ff" ], // Kingpost
 [ 0, 1, 0,    1.6, 2,  -3.5,  4,   "ff0000" ], // Downtubes
]

  Add the Basetube (will be mirrored)
[
 [ 0, 5, 0,       0,  -5, 0,    4,   "ff00ff" ], // Keel
 [ 0, 5, 0,      15,  -3, 0.2,  4,   "ffff00" ], // Leading Edge
 [ 0, 1.6, 0,     9, 0.2, 0.1,  6,   "00ffff" ], // Crossbar
 [ 0, 1, 0,       0, 0.9, 3,    6,   "0000ff" ], // Kingpost
 [ 0, 1, 0,     1.6, 2,  -3.5,  4,   "ff0000" ], // Downtubes
 [ 0, 2, -3.5,  1.6, 2,  -3.5,  4,   "ff0000" ], // Basetube (right half)
]

  Add the Wires (will be mirrored)
[
 [ 0, 5, 0,       0,  -5, 0,     4,   "ff00ff" ], // Keel
 [ 0, 1, 0,       0, 0.9, 3,     6,   "0000ff" ], // Kingpost
 [ 0, 1, 0,       1.6, 2, -3.5,  4,   "ff0000" ], // Downtubes
 [ 0, 5, 0,      15,  -3, 0.2,   4,   "ffff00" ], // Leading Edge
 [ 0, 1.6, 0,     9, 0.2, 0.1,   6,   "00ffff" ], // Crossbar
 [ 0, 2, -3.5,    1.6, 2, -3.5,  4,   "ff0000" ], // Basetube (right half)
 [ 0,  5, 0,      1.6, 2, -3.5,  1,   "888888" ], // Nose Wire to BT
 [ 0, -3, 0,      1.6, 2, -3.5,  1,   "888888" ], // Rear Wire to BT
 [ 9,  0.2, 0.1,  1.6, 2, -3.5,  1,   "888888" ], // Side Wire to BT
 [ 9,  0.2, 0.1,  0,  0.9, 3,    1,   "888888" ], // Side Wire to KP
 [ 0,  5, 0,      0,  0.9, 3,    1,   "888888" ], // Nose Wire to KP
 [ 0, -3, 0,      0,  0.9, 3,    1,   "888888" ], // Rear Wire to KP
]