/*\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\ \\ \\ \\ VIZ \\ \\ by NeoAmsterdam <2600@NeoAmsterdam.net> \\ \\ ______ ______ \\ \\ \_(_)_\ /_(_)_/ \\ \\ \\ \\ all rights reserved \\ \\ \\ \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\*/ // ____________________________________________________________________ // | | // | NOTICE: | // | | // | DO NOT put any code between this comment and the "INSERT YOUR CODE | // | HERE" comment. Thie floorplans and labels MUST be drawn FIRST! | // | | // | Read the end of the document FIRST. Processing is abnormal about | // | where user-defined subroutines and functions may not go, and there | // | are several often-called functions down there. | // | | // | The last argument in the line `{PApplet.main(new String[] | // | { "--present", "_____" });}` MUST BE THE NAME OF THE EXPORTED APP! | // | | // | And in case you're wondering, yes I do mean it when I say "I will | // | fucking kill you if...". Take comments seriously !-) | // |____________________________________________________________________| /* ////////////////////////////////////////////////////////////////////////// */ // Load the OpenGL thingamajiggie import processing.opengl.*; // Run the program in full screen //static public void main(String args[]) {PApplet.main(new String[] { "--present", "VIZ" });} // Vertex scaling; cuts down on verbosity; makes the map proportional to the screen's size float vScale=0.5*screen.width; // Vertex offset; cuts down on verbosity; add or subtract this from a -1...+1 coordinate to place your object on the mezzanine or 18th floor (respectively) float vXoffset=0.5*screen.width; /* ////////////////////////////////////////////////////////////////////////// */ void setup(){ // Run the program in full screen... // size(screen.width, screen.height, OPENGL); // ...or run the program in quarter-HD size(960, 540, OPENGL); frameRate(45); // Set it to 60 if you like noCursor(); colorMode(HSB, 1.0); // Hue-Sat-Bright-Alpha; 0...+1 } // end setup /* ////////////////////////////////////////////////////////////////////////// */ // ____________________________________________________________________ // | | // | DO NOT FUCK WITH THE COORDINATES OR I WILL FUCKIN' KILL YOU! | // | | // | You've got no idea how much of a fucking bitch it was to get this | // | together and I'll kill whoever messes it up - I'm not gonna put | // | one more millisecond of work on the coordinates without seeing | // | some blood splatter first - *YOUR* BLOOD! | // |____________________________________________________________________| void draw(){ // All of the rooms and stuff gets composed off-screen in the framebuffer beginCamera(); // Clear the screen background(0); // ____________________________________________________________________ // | | // | Mezzanine: White Zone | // |____________________________________________________________________| // DTMF(350.0, 440.0); // Dial Tone beginShape(); vertex(vScale * 0.870644 + vXoffset, vScale * 0.965945, 0.000000); vertex(vScale * -0.905719 + vXoffset, vScale * 0.965945, 0.000000); vertex(vScale * -0.905719 + vXoffset, vScale * 0.949178, 0.000000); vertex(vScale * -0.935230 + vXoffset, vScale * 0.949178, 0.000000); vertex(vScale * -0.935230 + vXoffset, vScale * -0.971754, 0.000000); vertex(vScale * -0.013120 + vXoffset, vScale * -0.971754, 0.000000); vertex(vScale * -0.013120 + vXoffset, vScale * -0.664501, 0.000000); vertex(vScale * -0.099535 + vXoffset, vScale * -0.664501, 0.000000); vertex(vScale * -0.099535 + vXoffset, vScale * -0.539502, 0.000000); vertex(vScale * -0.138059 + vXoffset, vScale * -0.539502, 0.000000); vertex(vScale * -0.138059 + vXoffset, vScale * -0.511462, 0.000000); vertex(vScale * -0.099535 + vXoffset, vScale * -0.511462, 0.000000); vertex(vScale * -0.099535 + vXoffset, vScale * -0.377894, 0.000000); vertex(vScale * -0.138059 + vXoffset, vScale * -0.377894, 0.000000); vertex(vScale * -0.138059 + vXoffset, vScale * -0.349620, 0.000000); vertex(vScale * -0.083984 + vXoffset, vScale * -0.349620, 0.000000); vertex(vScale * -0.083984 + vXoffset, vScale * -0.302879, 0.000000); vertex(vScale * 0.072234 + vXoffset, vScale * -0.302879, 0.000000); vertex(vScale * 0.072234 + vXoffset, vScale * -0.349620, 0.000000); vertex(vScale * 0.962520 + vXoffset, vScale * -0.349620, 0.000000); vertex(vScale * 0.962520 + vXoffset, vScale * 0.283765, 0.000000); vertex(vScale * 0.870644 + vXoffset, vScale * 0.283765, 0.000000); vertex(vScale * 0.870644 + vXoffset, vScale * 0.353980, 0.000000); vertex(vScale * 0.759311 + vXoffset, vScale * 0.353980, 0.000000); vertex(vScale * 0.759311 + vXoffset, vScale * 0.583713, 0.000000); vertex(vScale * 0.870644 + vXoffset, vScale * 0.583713, 0.000000); vertex(vScale * 0.870644 + vXoffset, vScale * 0.622236, 0.000000); vertex(vScale * 0.841307 + vXoffset, vScale * 0.622236, 0.000000); vertex(vScale * 0.841307 + vXoffset, vScale * 0.650747, 0.000000); vertex(vScale * 0.870644 + vXoffset, vScale * 0.650747, 0.000000); vertex(vScale * 0.870644 + vXoffset, vScale * 0.852794, 0.000000); vertex(vScale * 0.842367 + vXoffset, vScale * 0.852794, 0.000000); vertex(vScale * 0.842367 + vXoffset, vScale * 0.881776, 0.000000); vertex(vScale * 0.870644 + vXoffset, vScale * 0.881776, 0.000000); vertex(vScale * 0.870644 + vXoffset, vScale * 0.965945, 0.000000); endShape(); // ____________________________________________________________________ // | | // | 18th Floor: White Zone | // |____________________________________________________________________| // DTMF(440.0, 350.0); // Dial Tone, reversed beginShape(); vertex(vScale * 0.962302 - vXoffset, vScale * -0.208570, 0.000000); vertex(vScale * 0.957050 - vXoffset, vScale * -0.208570, 0.000000); vertex(vScale * 0.933440 - vXoffset, vScale * -0.208570, 0.000000); vertex(vScale * 0.535557 - vXoffset, vScale * -0.208570, 0.000000); vertex(vScale * 0.511731 - vXoffset, vScale * -0.208570, 0.000000); vertex(vScale * 0.332418 - vXoffset, vScale * -0.208570, 0.000000); vertex(vScale * 0.309076 - vXoffset, vScale * -0.208570, 0.000000); vertex(vScale * 0.043429 - vXoffset, vScale * -0.208570, 0.000000); vertex(vScale * 0.043429 - vXoffset, vScale * -0.139239, 0.000000); vertex(vScale * 0.043429 - vXoffset, vScale * -0.115613, 0.000000); vertex(vScale * 0.043429 - vXoffset, vScale * 0.010187, 0.000000); vertex(vScale * 0.043429 - vXoffset, vScale * 0.033260, 0.000000); vertex(vScale * 0.043429 - vXoffset, vScale * 0.112762, 0.000000); vertex(vScale * 0.022047 - vXoffset, vScale * 0.112762, 0.000000); vertex(vScale * -0.024628 - vXoffset, vScale * 0.112762, 0.000000); vertex(vScale * -0.049524 - vXoffset, vScale * 0.112762, 0.000000); vertex(vScale * -0.049524 - vXoffset, vScale * -0.026756, 0.000000); vertex(vScale * -0.049524 - vXoffset, vScale * -0.050123, 0.000000); vertex(vScale * -0.049524 - vXoffset, vScale * -0.208570, 0.000000); vertex(vScale * -0.569927 - vXoffset, vScale * -0.208570, 0.000000); vertex(vScale * -0.569927 - vXoffset, vScale * -0.210521, 0.000000); vertex(vScale * -0.569927 - vXoffset, vScale * -0.304911, 0.000000); vertex(vScale * -0.569927 - vXoffset, vScale * -0.318518, 0.000000); vertex(vScale * -0.569927 - vXoffset, vScale * -0.366242, 0.000000); vertex(vScale * -0.569927 - vXoffset, vScale * -0.370130, 0.000000); vertex(vScale * -0.437136 - vXoffset, vScale * -0.370130, 0.000000); vertex(vScale * -0.437136 - vXoffset, vScale * -0.412623, 0.000000); vertex(vScale * -0.419538 - vXoffset, vScale * -0.412623, 0.000000); vertex(vScale * -0.395783 - vXoffset, vScale * -0.412623, 0.000000); vertex(vScale * -0.317752 - vXoffset, vScale * -0.412623, 0.000000); vertex(vScale * -0.317752 - vXoffset, vScale * -0.368443, 0.000000); vertex(vScale * -0.197269 - vXoffset, vScale * -0.368443, 0.000000); vertex(vScale * -0.197269 - vXoffset, vScale * -0.301468, 0.000000); vertex(vScale * -0.079420 - vXoffset, vScale * -0.301468, 0.000000); vertex(vScale * -0.079420 - vXoffset, vScale * -0.726093, 0.000000); vertex(vScale * 0.080097 - vXoffset, vScale * -0.726093, 0.000000); vertex(vScale * 0.080097 - vXoffset, vScale * -0.301677, 0.000000); vertex(vScale * 0.200925 - vXoffset, vScale * -0.301677, 0.000000); vertex(vScale * 0.248223 - vXoffset, vScale * -0.301677, 0.000000); vertex(vScale * 0.262684 - vXoffset, vScale * -0.301677, 0.000000); vertex(vScale * 0.310184 - vXoffset, vScale * -0.301677, 0.000000); vertex(vScale * 1.000000 - vXoffset, vScale * -0.301677, 0.000000); endShape(); // ____________________________________________________________________ // | | // | Mezzanine: Blackout Zones | // |____________________________________________________________________| // DTMF(350.0, 440.0); // Dial tone, matching Mezz White Zone fill(0xFF000000); // Black-out the inner region beginShape(); // SW Zone vertex(vScale * -0.319193 + vXoffset, vScale * 0.830940, 0.100000); vertex(vScale * -0.319193 + vXoffset, vScale * 0.686297, 0.100000); vertex(vScale * -0.290390 + vXoffset, vScale * 0.686297, 0.100000); vertex(vScale * -0.290390 + vXoffset, vScale * 0.714041, 0.100000); vertex(vScale * -0.158204 + vXoffset, vScale * 0.714041, 0.100000); vertex(vScale * -0.158204 + vXoffset, vScale * 0.686297, 0.100000); vertex(vScale * -0.119680 + vXoffset, vScale * 0.686297, 0.100000); vertex(vScale * -0.119680 + vXoffset, vScale * 0.830940, 0.100000); vertex(vScale * -0.319193 + vXoffset, vScale * 0.830940, 0.100000); endShape(); beginShape(); // SE Zone vertex(vScale * -0.018422 + vXoffset, vScale * 0.877328, 0.100000); vertex(vScale * -0.018422 + vXoffset, vScale * 0.866823, 0.100000); vertex(vScale * 0.010207 + vXoffset, vScale * 0.866823, 0.100000); vertex(vScale * 0.010207 + vXoffset, vScale * 0.746381, 0.100000); vertex(vScale * -0.017008 + vXoffset, vScale * 0.746381, 0.100000); vertex(vScale * -0.017008 + vXoffset, vScale * 0.623386, 0.100000); vertex(vScale * 0.177911 + vXoffset, vScale * 0.623386, 0.100000); vertex(vScale * 0.177911 + vXoffset, vScale * 0.652102, 0.100000); vertex(vScale * 0.149283 + vXoffset, vScale * 0.652102, 0.100000); vertex(vScale * 0.149283 + vXoffset, vScale * 0.852794, 0.100000); vertex(vScale * 0.177911 + vXoffset, vScale * 0.852794, 0.100000); vertex(vScale * 0.177911 + vXoffset, vScale * 0.877328, 0.100000); vertex(vScale * -0.018422 + vXoffset, vScale * 0.877328, 0.100000); endShape(); beginShape(); // Escalator vertex(vScale * -0.408966 + vXoffset, vScale * -0.025343, 0.100000); vertex(vScale * -0.415328 + vXoffset, vScale * -0.025343, 0.100000); vertex(vScale * -0.415328 + vXoffset, vScale * -0.076769, 0.100000); vertex(vScale * -0.424627 + vXoffset, vScale * -0.076769, 0.100000); vertex(vScale * -0.424627 + vXoffset, vScale * -0.105396, 0.100000); vertex(vScale * -0.415328 + vXoffset, vScale * -0.105396, 0.100000); vertex(vScale * -0.415328 + vXoffset, vScale * -0.145158, 0.100000); vertex(vScale * -0.388291 + vXoffset, vScale * -0.145158, 0.100000); vertex(vScale * -0.388291 + vXoffset, vScale * -0.214785, 0.100000); vertex(vScale * -0.594342 + vXoffset, vScale * -0.214785, 0.100000); vertex(vScale * -0.594342 + vXoffset, vScale * -0.186332, 0.100000); vertex(vScale * -0.623148 + vXoffset, vScale * -0.186332, 0.100000); vertex(vScale * -0.623148 + vXoffset, vScale * -0.214785, 0.100000); vertex(vScale * -0.765935 + vXoffset, vScale * -0.214785, 0.100000); vertex(vScale * -0.765935 + vXoffset, vScale * -0.507104, 0.100000); vertex(vScale * -0.262999 + vXoffset, vScale * -0.507104, 0.100000); vertex(vScale * -0.262999 + vXoffset, vScale * -0.338399, 0.100000); vertex(vScale * -0.298695 + vXoffset, vScale * -0.338399, 0.100000); vertex(vScale * -0.298695 + vXoffset, vScale * -0.214785, 0.100000); vertex(vScale * -0.266886 + vXoffset, vScale * -0.214785, 0.100000); vertex(vScale * -0.266886 + vXoffset, vScale * -0.201178, 0.100000); vertex(vScale * -0.260348 + vXoffset, vScale * -0.201178, 0.100000); vertex(vScale * -0.260348 + vXoffset, vScale * -0.154435, 0.100000); vertex(vScale * -0.296575 + vXoffset, vScale * -0.154435, 0.100000); vertex(vScale * -0.296575 + vXoffset, vScale * -0.061747, 0.100000); vertex(vScale * -0.270066 + vXoffset, vScale * -0.061747, 0.100000); vertex(vScale * -0.270066 + vXoffset, vScale * -0.025343, 0.100000); vertex(vScale * -0.377688 + vXoffset, vScale * -0.025343, 0.100000); vertex(vScale * -0.408966 + vXoffset, vScale * -0.025343, 0.100000); endShape(); beginShape(QUADS); // Columns adjacent to escalator // SW corner vertex(vScale * -0.794386 + vXoffset, vScale * -0.214785, 0.100000); vertex(vScale * -0.765935 + vXoffset, vScale * -0.214785, 0.100000); vertex(vScale * -0.765935 + vXoffset, vScale * -0.186332, 0.100000); vertex(vScale * -0.794386 + vXoffset, vScale * -0.186332, 0.100000); // NW corner vertex(vScale * -0.794386 + vXoffset, vScale * -0.535968, 0.100000); vertex(vScale * -0.765935 + vXoffset, vScale * -0.535968, 0.100000); vertex(vScale * -0.765935 + vXoffset, vScale * -0.507104, 0.100000); vertex(vScale * -0.794386 + vXoffset, vScale * -0.507104, 0.100000); // Along the north face vertex(vScale * -0.626859 + vXoffset, vScale * -0.538204, 0.100000); vertex(vScale * -0.598408 + vXoffset, vScale * -0.538204, 0.100000); vertex(vScale * -0.598408 + vXoffset, vScale * -0.507104, 0.100000); vertex(vScale * -0.626859 + vXoffset, vScale * -0.507104, 0.100000); vertex(vScale * -0.438479 + vXoffset, vScale * -0.538204, 0.100000); vertex(vScale * -0.410026 + vXoffset, vScale * -0.538204, 0.100000); vertex(vScale * -0.410026 + vXoffset, vScale * -0.507104, 0.100000); vertex(vScale * -0.438479 + vXoffset, vScale * -0.507104, 0.100000); vertex(vScale * -0.290390 + vXoffset, vScale * -0.539502, 0.100000); vertex(vScale * -0.262999 + vXoffset, vScale * -0.539502, 0.100000); vertex(vScale * -0.262999 + vXoffset, vScale * -0.507104, 0.100000); vertex(vScale * -0.290390 + vXoffset, vScale * -0.507104, 0.100000); endShape(); // ____________________________________________________________________ // | | // | Mezzanine: Handicapped elevator | // |____________________________________________________________________| // DTMF(941.0, 1477.0); // DTMF # beginShape(); vertex(vScale * -0.408966 + vXoffset, vScale * -0.025343, 0.200000); vertex(vScale * -0.415328 + vXoffset, vScale * -0.025343, 0.200000); vertex(vScale * -0.415328 + vXoffset, vScale * -0.145158, 0.200000); vertex(vScale * -0.296575 + vXoffset, vScale * -0.145158, 0.200000); vertex(vScale * -0.296575 + vXoffset, vScale * -0.061747, 0.200000); vertex(vScale * -0.316544 + vXoffset, vScale * -0.061747, 0.200000); vertex(vScale * -0.316544 + vXoffset, vScale * -0.025343, 0.200000); vertex(vScale * -0.377688 + vXoffset, vScale * -0.025343, 0.200000); vertex(vScale * -0.408966 + vXoffset, vScale * -0.025343, 0.200000); endShape(); beginShape(LINES); // Stairs (go fig.) vertex(vScale * -0.371502 + vXoffset, vScale * -0.083104, 0.400000); vertex(vScale * -0.371502 + vXoffset, vScale * -0.025343, 0.400000); vertex(vScale * -0.371502 + vXoffset, vScale * -0.057152, 0.400000); vertex(vScale * -0.316544 + vXoffset, vScale * -0.057152, 0.400000); vertex(vScale * -0.371502 + vXoffset, vScale * -0.048670, 0.400000); vertex(vScale * -0.316544 + vXoffset, vScale * -0.048670, 0.400000); vertex(vScale * -0.371502 + vXoffset, vScale * -0.040277, 0.400000); vertex(vScale * -0.316544 + vXoffset, vScale * -0.040277, 0.400000); vertex(vScale * -0.371502 + vXoffset, vScale * -0.032148, 0.400000); vertex(vScale * -0.316544 + vXoffset, vScale * -0.032148, 0.400000); endShape(); // ____________________________________________________________________ // | | // | Mezzanine: Northern Escalator | // |____________________________________________________________________| // DTMF(852.0, 1477.0); // DTMF C beginShape(QUADS); vertex(vScale * -0.262999 + vXoffset, vScale * -0.450878, 0.200000); vertex(vScale * -0.765935 + vXoffset, vScale * -0.450878, 0.200000); vertex(vScale * -0.765935 + vXoffset, vScale * -0.492495, 0.200000); vertex(vScale * -0.262999 + vXoffset, vScale * -0.492495, 0.200000); endShape(); // ____________________________________________________________________ // | | // | Mezzanine: Southern Escalator | // |____________________________________________________________________| // DTMF(770.0, 1209.0); // DTMF 4 beginShape(QUADS); vertex(vScale * -0.262999 + vXoffset, vScale * -0.388410, 0.200000); vertex(vScale * -0.765935 + vXoffset, vScale * -0.388410, 0.200000); vertex(vScale * -0.765935 + vXoffset, vScale * -0.433031, 0.200000); vertex(vScale * -0.262999 + vXoffset, vScale * -0.433031, 0.200000); endShape(); // ____________________________________________________________________ // | | // | Mezzanine: Main Stairway | // |____________________________________________________________________| // DTMF(697.0, 1336.0); // DTMF 2 beginShape(); vertex(vScale * -0.138059 + vXoffset, vScale * -0.349620, 0.000000); vertex(vScale * -0.138059 + vXoffset, vScale * -0.377894, 0.000000); vertex(vScale * -0.099535 + vXoffset, vScale * -0.377894, 0.000000); vertex(vScale * -0.099535 + vXoffset, vScale * -0.664501, 0.000000); vertex(vScale * 0.082131 + vXoffset, vScale * -0.664501, 0.000000); vertex(vScale * 0.082131 + vXoffset, vScale * -0.349620, 0.000000); vertex(vScale * 0.072234 + vXoffset, vScale * -0.349620, 0.000000); vertex(vScale * 0.072234 + vXoffset, vScale * -0.302879, 0.000000); vertex(vScale * -0.083984 + vXoffset, vScale * -0.302879, 0.000000); vertex(vScale * -0.083984 + vXoffset, vScale * -0.349620, 0.000000); vertex(vScale * -0.138059 + vXoffset, vScale * -0.349620, 0.000000); endShape(); beginShape(LINES); // Outer Steps vertex(vScale * -0.083984 + vXoffset, vScale * -0.349620, 0.000000); vertex(vScale * -0.075855 + vXoffset, vScale * -0.349620, 0.000000); vertex(vScale * -0.013120 + vXoffset, vScale * -0.349620, 0.000000); vertex(vScale * -0.072178 + vXoffset, vScale * -0.349620, 0.000000); vertex(vScale * 0.059687 + vXoffset, vScale * -0.349620, 0.000000); vertex(vScale * 0.059687 + vXoffset, vScale * -0.302879, 0.000000); vertex(vScale * 0.047318 + vXoffset, vScale * -0.349620, 0.000000); vertex(vScale * 0.047318 + vXoffset, vScale * -0.302879, 0.000000); vertex(vScale * 0.034771 + vXoffset, vScale * -0.349620, 0.000000); vertex(vScale * 0.034771 + vXoffset, vScale * -0.302879, 0.000000); vertex(vScale * 0.022223 + vXoffset, vScale * -0.349620, 0.000000); vertex(vScale * 0.022223 + vXoffset, vScale * -0.302879, 0.000000); // Stairwell Divider vertex(vScale * 0.000311 + vXoffset, vScale * -0.456003, 0.000000); vertex(vScale * 0.000311 + vXoffset, vScale * -0.577585, 0.000000); vertex(vScale * -0.020366 + vXoffset, vScale * -0.577585, 0.000000); vertex(vScale * -0.020366 + vXoffset, vScale * -0.456003, 0.000000); // Inner Steps vertex(vScale * -0.099535 + vXoffset, vScale * -0.577585, 0.000000); vertex(vScale * -0.020366 + vXoffset, vScale * -0.577585, 0.000000); vertex(vScale * 0.000311 + vXoffset, vScale * -0.577585, 0.000000); vertex(vScale * 0.082131 + vXoffset, vScale * -0.577585, 0.000000); vertex(vScale * -0.099535 + vXoffset, vScale * -0.567424, 0.000000); vertex(vScale * -0.020366 + vXoffset, vScale * -0.567424, 0.000000); vertex(vScale * 0.000311 + vXoffset, vScale * -0.567424, 0.000000); vertex(vScale * 0.082131 + vXoffset, vScale * -0.567424, 0.000000); vertex(vScale * -0.099535 + vXoffset, vScale * -0.556997, 0.000000); vertex(vScale * -0.020366 + vXoffset, vScale * -0.556997, 0.000000); vertex(vScale * 0.000311 + vXoffset, vScale * -0.556997, 0.000000); vertex(vScale * 0.082131 + vXoffset, vScale * -0.556997, 0.000000); vertex(vScale * -0.099535 + vXoffset, vScale * -0.546748, 0.000000); vertex(vScale * -0.020366 + vXoffset, vScale * -0.546748, 0.000000); vertex(vScale * 0.000311 + vXoffset, vScale * -0.546748, 0.000000); vertex(vScale * 0.082131 + vXoffset, vScale * -0.546748, 0.000000); vertex(vScale * -0.099535 + vXoffset, vScale * -0.536232, 0.000000); vertex(vScale * -0.020366 + vXoffset, vScale * -0.536232, 0.000000); vertex(vScale * 0.000311 + vXoffset, vScale * -0.536232, 0.000000); vertex(vScale * 0.082131 + vXoffset, vScale * -0.536232, 0.000000); vertex(vScale * -0.099535 + vXoffset, vScale * -0.526867, 0.000000); vertex(vScale * -0.020366 + vXoffset, vScale * -0.526867, 0.000000); vertex(vScale * 0.000311 + vXoffset, vScale * -0.526867, 0.000000); vertex(vScale * 0.082131 + vXoffset, vScale * -0.526867, 0.000000); vertex(vScale * -0.099535 + vXoffset, vScale * -0.518473, 0.000000); vertex(vScale * -0.020366 + vXoffset, vScale * -0.518473, 0.000000); vertex(vScale * 0.000311 + vXoffset, vScale * -0.518473, 0.000000); vertex(vScale * 0.082131 + vXoffset, vScale * -0.518473, 0.000000); vertex(vScale * -0.099535 + vXoffset, vScale * -0.508046, 0.000000); vertex(vScale * -0.020366 + vXoffset, vScale * -0.508046, 0.000000); vertex(vScale * 0.000311 + vXoffset, vScale * -0.508046, 0.000000); vertex(vScale * 0.082131 + vXoffset, vScale * -0.508046, 0.000000); vertex(vScale * -0.099535 + vXoffset, vScale * -0.497709, 0.000000); vertex(vScale * -0.020366 + vXoffset, vScale * -0.497709, 0.000000); vertex(vScale * 0.000311 + vXoffset, vScale * -0.497709, 0.000000); vertex(vScale * 0.082131 + vXoffset, vScale * -0.497709, 0.000000); vertex(vScale * -0.099535 + vXoffset, vScale * -0.487281, 0.000000); vertex(vScale * -0.020366 + vXoffset, vScale * -0.487281, 0.000000); vertex(vScale * 0.000311 + vXoffset, vScale * -0.487281, 0.000000); vertex(vScale * 0.082131 + vXoffset, vScale * -0.487281, 0.000000); vertex(vScale * -0.099535 + vXoffset, vScale * -0.477032, 0.000000); vertex(vScale * -0.020366 + vXoffset, vScale * -0.477032, 0.000000); vertex(vScale * 0.000311 + vXoffset, vScale * -0.477032, 0.000000); vertex(vScale * 0.082131 + vXoffset, vScale * -0.477032, 0.000000); vertex(vScale * -0.099535 + vXoffset, vScale * -0.466431, 0.000000); vertex(vScale * -0.020366 + vXoffset, vScale * -0.466431, 0.000000); vertex(vScale * 0.000311 + vXoffset, vScale * -0.466431, 0.000000); vertex(vScale * 0.082131 + vXoffset, vScale * -0.466431, 0.000000); vertex(vScale * -0.099535 + vXoffset, vScale * -0.456003, 0.000000); vertex(vScale * -0.020366 + vXoffset, vScale * -0.456003, 0.000000); vertex(vScale * 0.000311 + vXoffset, vScale * -0.456003, 0.000000); vertex(vScale * 0.082131 + vXoffset, vScale * -0.456003, 0.000000); endShape(); // ____________________________________________________________________ // | | // | 18th Floor: Penn-top North | // |____________________________________________________________________| // DTMF(697.0, 1209.0); // DTMF 1 beginShape(); vertex(vScale * -1.000000 - vXoffset, vScale * -0.431075, 0.000000); vertex(vScale * -1.000000 - vXoffset, vScale * -0.814203, 0.000000); vertex(vScale * -0.596316 - vXoffset, vScale * -0.814203, 0.000000); vertex(vScale * -0.596316 - vXoffset, vScale * -0.718170, 0.000000); vertex(vScale * -0.569927 - vXoffset, vScale * -0.718170, 0.000000); vertex(vScale * -0.569927 - vXoffset, vScale * -0.431075, 0.000000); vertex(vScale * -0.584201 - vXoffset, vScale * -0.431075, 0.000000); vertex(vScale * -0.632295 - vXoffset, vScale * -0.431075, 0.000000); vertex(vScale * -0.645553 - vXoffset, vScale * -0.431075, 0.000000); vertex(vScale * -0.645553 - vXoffset, vScale * -0.436816, 0.000000); vertex(vScale * -0.673632 - vXoffset, vScale * -0.436816, 0.000000); vertex(vScale * -0.673632 - vXoffset, vScale * -0.417868, 0.000000); vertex(vScale * -0.896213 - vXoffset, vScale * -0.417868, 0.000000); vertex(vScale * -0.896213 - vXoffset, vScale * -0.436816, 0.000000); vertex(vScale * -0.924434 - vXoffset, vScale * -0.436816, 0.000000); vertex(vScale * -0.924434 - vXoffset, vScale * -0.431075, 0.000000); vertex(vScale * -0.937289 - vXoffset, vScale * -0.431075, 0.000000); vertex(vScale * -0.985253 - vXoffset, vScale * -0.431075, 0.000000); vertex(vScale * -1.000000 - vXoffset, vScale * -0.431075, 0.000000); endShape(); // ____________________________________________________________________ // | | // | 18th Floor: Penn-top Center | // |____________________________________________________________________| // DTMF(770.0, 1336.0); // DTMF 5 beginShape(); vertex(vScale * -1.000000 - vXoffset, vScale * -0.046344, 0.000000); vertex(vScale * -1.000000 - vXoffset, vScale * -0.431075, 0.000000); vertex(vScale * -0.985253 - vXoffset, vScale * -0.431075, 0.000000); vertex(vScale * -0.937289 - vXoffset, vScale * -0.431075, 0.000000); vertex(vScale * -0.933973 - vXoffset, vScale * -0.431075, 0.000000); vertex(vScale * -0.933973 - vXoffset, vScale * -0.404752, 0.000000); vertex(vScale * -0.896213 - vXoffset, vScale * -0.404752, 0.000000); vertex(vScale * -0.896213 - vXoffset, vScale * -0.417868, 0.000000); vertex(vScale * -0.673632 - vXoffset, vScale * -0.417868, 0.000000); vertex(vScale * -0.673632 - vXoffset, vScale * -0.404752, 0.000000); vertex(vScale * -0.636402 - vXoffset, vScale * -0.404752, 0.000000); vertex(vScale * -0.636402 - vXoffset, vScale * -0.431075, 0.000000); vertex(vScale * -0.632295 - vXoffset, vScale * -0.431075, 0.000000); vertex(vScale * -0.584201 - vXoffset, vScale * -0.431075, 0.000000); vertex(vScale * -0.569927 - vXoffset, vScale * -0.431075, 0.000000); vertex(vScale * -0.569927 - vXoffset, vScale * -0.366242, 0.000000); vertex(vScale * -0.569927 - vXoffset, vScale * -0.318518, 0.000000); vertex(vScale * -0.569927 - vXoffset, vScale * -0.304911, 0.000000); vertex(vScale * -0.569927 - vXoffset, vScale * -0.210521, 0.000000); vertex(vScale * -0.569927 - vXoffset, vScale * -0.046344, 0.000000); vertex(vScale * -0.584201 - vXoffset, vScale * -0.046344, 0.000000); vertex(vScale * -0.632295 - vXoffset, vScale * -0.046344, 0.000000); vertex(vScale * -0.645553 - vXoffset, vScale * -0.046344, 0.000000); vertex(vScale * -0.645553 - vXoffset, vScale * -0.051726, 0.000000); vertex(vScale * -0.673632 - vXoffset, vScale * -0.051726, 0.000000); vertex(vScale * -0.673632 - vXoffset, vScale * -0.032821, 0.000000); vertex(vScale * -0.896213 - vXoffset, vScale * -0.032821, 0.000000); vertex(vScale * -0.896213 - vXoffset, vScale * -0.051726, 0.000000); vertex(vScale * -0.924434 - vXoffset, vScale * -0.051726, 0.000000); vertex(vScale * -0.924434 - vXoffset, vScale * -0.046344, 0.000000); vertex(vScale * -0.937289 - vXoffset, vScale * -0.046344, 0.000000); vertex(vScale * -0.985253 - vXoffset, vScale * -0.046344, 0.000000); vertex(vScale * -1.000000 - vXoffset, vScale * -0.046344, 0.000000); endShape(); // ____________________________________________________________________ // | | // | 18th Floor: Penn-top South | // |____________________________________________________________________| // DTMF(852.0, 1477.0); // DTMF 9 beginShape(); vertex(vScale * -1.000000 - vXoffset, vScale * 0.808378, 0.000000); vertex(vScale * -1.000000 - vXoffset, vScale * -0.046344, 0.000000); vertex(vScale * -0.985253 - vXoffset, vScale * -0.046344, 0.000000); vertex(vScale * -0.937289 - vXoffset, vScale * -0.046344, 0.000000); vertex(vScale * -0.933973 - vXoffset, vScale * -0.046344, 0.000000); vertex(vScale * -0.933973 - vXoffset, vScale * -0.019671, 0.000000); vertex(vScale * -0.896213 - vXoffset, vScale * -0.019671, 0.000000); vertex(vScale * -0.896213 - vXoffset, vScale * -0.032821, 0.000000); vertex(vScale * -0.673632 - vXoffset, vScale * -0.032821, 0.000000); vertex(vScale * -0.673632 - vXoffset, vScale * -0.019671, 0.000000); vertex(vScale * -0.636402 - vXoffset, vScale * -0.019671, 0.000000); vertex(vScale * -0.636402 - vXoffset, vScale * -0.046344, 0.000000); vertex(vScale * -0.632295 - vXoffset, vScale * -0.046344, 0.000000); vertex(vScale * -0.584201 - vXoffset, vScale * -0.046344, 0.000000); vertex(vScale * -0.569927 - vXoffset, vScale * -0.046344, 0.000000); vertex(vScale * -0.569927 - vXoffset, vScale * -0.015182, 0.000000); vertex(vScale * -0.558999 - vXoffset, vScale * -0.015182, 0.000000); vertex(vScale * -0.558999 - vXoffset, vScale * -0.007937, 0.000000); vertex(vScale * -0.558999 - vXoffset, vScale * 0.039247, 0.000000); vertex(vScale * -0.558999 - vXoffset, vScale * 0.045903, 0.000000); vertex(vScale * -0.569927 - vXoffset, vScale * 0.045903, 0.000000); vertex(vScale * -0.569927 - vXoffset, vScale * 0.449820, 0.000000); vertex(vScale * -0.547277 - vXoffset, vScale * 0.449820, 0.000000); vertex(vScale * -0.547277 - vXoffset, vScale * 0.478860, 0.000000); vertex(vScale * -0.547629 - vXoffset, vScale * 0.534409, 0.000000); vertex(vScale * -0.547629 - vXoffset, vScale * 0.563212, 0.000000); vertex(vScale * -0.569927 - vXoffset, vScale * 0.563212, 0.000000); vertex(vScale * -0.569927 - vXoffset, vScale * 0.702644, 0.000000); vertex(vScale * -0.600410 - vXoffset, vScale * 0.702644, 0.000000); vertex(vScale * -0.600410 - vXoffset, vScale * 0.808378, 0.000000); vertex(vScale * -1.000000 - vXoffset, vScale * 0.808378, 0.000000); endShape(); // ____________________________________________________________________ // | | // | 18th Floor: Penn-top Ballroom | // |____________________________________________________________________| // DTMF(697.0, 1477.0); // DTMF 3 beginShape(); vertex(vScale * -0.225004 - vXoffset, vScale * 0.814626, 0.000000); vertex(vScale * -0.225004 - vXoffset, vScale * 0.534409, 0.000000); vertex(vScale * -0.225004 - vXoffset, vScale * 0.478860, 0.000000); vertex(vScale * -0.225004 - vXoffset, vScale * 0.449820, 0.000000); vertex(vScale * -0.215639 - vXoffset, vScale * 0.449820, 0.000000); vertex(vScale * -0.215639 - vXoffset, vScale * 0.404401, 0.000000); vertex(vScale * -0.232951 - vXoffset, vScale * 0.404401, 0.000000); vertex(vScale * -0.232951 - vXoffset, vScale * 0.344438, 0.000000); vertex(vScale * -0.218819 - vXoffset, vScale * 0.344438, 0.000000); vertex(vScale * -0.218819 - vXoffset, vScale * 0.085723, 0.000000); vertex(vScale * -0.211908 - vXoffset, vScale * 0.085723, 0.000000); vertex(vScale * -0.166147 - vXoffset, vScale * 0.085723, 0.000000); vertex(vScale * -0.159971 - vXoffset, vScale * 0.085723, 0.000000); vertex(vScale * -0.159971 - vXoffset, vScale * 0.112762, 0.000000); vertex(vScale * -0.024628 - vXoffset, vScale * 0.112762, 0.000000); vertex(vScale * 0.022047 - vXoffset, vScale * 0.112762, 0.000000); vertex(vScale * 0.214669 - vXoffset, vScale * 0.112762, 0.000000); vertex(vScale * 0.214669 - vXoffset, vScale * 0.813798, 0.000000); vertex(vScale * -0.225004 - vXoffset, vScale * 0.813798, 0.000000); endShape(); // ____________________________________________________________________ // | | // | 18th Floor: Main Stairway | // |____________________________________________________________________| // DTMF(852.0, 1209.0); // DTMF 7 beginShape(); // Outline vertex(vScale * 0.043429 - vXoffset, vScale * -0.112377, 0.000000); vertex(vScale * 0.043429 - vXoffset, vScale * -0.115613, 0.000000); vertex(vScale * 0.043429 - vXoffset, vScale * -0.139239, 0.000000); vertex(vScale * 0.043429 - vXoffset, vScale * -0.208570, 0.000000); vertex(vScale * 0.179325 - vXoffset, vScale * -0.208570, 0.000000); vertex(vScale * 0.179325 - vXoffset, vScale * -0.112377, 0.000000); vertex(vScale * 0.043429 - vXoffset, vScale * -0.112377, 0.000000); endShape(); beginShape(LINES); // Divider vertex(vScale * 0.073649 - vXoffset, vScale * -0.160620, 0.000000); vertex(vScale * 0.179325 - vXoffset, vScale * -0.160620, 0.000000); // Steps vertex(vScale * 0.164127 - vXoffset, vScale * -0.208570, 0.000000); vertex(vScale * 0.164127 - vXoffset, vScale * -0.112377, 0.000000); vertex(vScale * 0.149107 - vXoffset, vScale * -0.208570, 0.000000); vertex(vScale * 0.149107 - vXoffset, vScale * -0.112377, 0.000000); vertex(vScale * 0.134085 - vXoffset, vScale * -0.208570, 0.000000); vertex(vScale * 0.134085 - vXoffset, vScale * -0.112377, 0.000000); vertex(vScale * 0.118887 - vXoffset, vScale * -0.208570, 0.000000); vertex(vScale * 0.118887 - vXoffset, vScale * -0.112377, 0.000000); vertex(vScale * 0.103691 - vXoffset, vScale * -0.208570, 0.000000); vertex(vScale * 0.103691 - vXoffset, vScale * -0.112377, 0.000000); vertex(vScale * 0.088669 - vXoffset, vScale * -0.208570, 0.000000); vertex(vScale * 0.088669 - vXoffset, vScale * -0.112377, 0.000000); vertex(vScale * 0.073649 - vXoffset, vScale * -0.208570, 0.000000); vertex(vScale * 0.073649 - vXoffset, vScale * -0.112377, 0.000000); endShape(); // ____________________________________________________________________ // | | // | 18th Floor: West Elevator Bank | // |____________________________________________________________________| // DTMF(697.0, 1633.0); // DTMF A beginShape(); vertex(vScale * -0.197269 - vXoffset, vScale * -0.301677, 0.000000); vertex(vScale * -0.197269 - vXoffset, vScale * -0.726093, 0.000000); vertex(vScale * -0.079420 - vXoffset, vScale * -0.726093, 0.000000); vertex(vScale * -0.079420 - vXoffset, vScale * -0.301677, 0.000000); vertex(vScale * -0.197269 - vXoffset, vScale * -0.301677, 0.000000); endShape(); // ____________________________________________________________________ // | | // | 18th Floor: West Elevator Bank | // |____________________________________________________________________| // DTMF(770.0, 1477.0); // DTMF 6 beginShape(); vertex(vScale * 0.146075 - vXoffset, vScale * -0.301677, 0.000000); vertex(vScale * 0.146075 - vXoffset, vScale * -0.726093, 0.000000); vertex(vScale * 0.080097 - vXoffset, vScale * -0.726093, 0.000000); vertex(vScale * 0.080097 - vXoffset, vScale * -0.301677, 0.000000); vertex(vScale * 0.146075 - vXoffset, vScale * -0.301677, 0.000000); endShape(); // ____________________________________________________________________ // | | // | 18th Floor: Madison | // |____________________________________________________________________| // DTMF(852.0, 1336.0); // DTMF 8 beginShape(); vertex(vScale * 0.146075 - vXoffset, vScale * -0.482655, 0.000000); vertex(vScale * 0.146075 - vXoffset, vScale * -0.726093, 0.000000); vertex(vScale * 0.659377 - vXoffset, vScale * -0.726093, 0.000000); vertex(vScale * 0.659377 - vXoffset, vScale * -0.482655, 0.000000); vertex(vScale * 0.413829 - vXoffset, vScale * -0.482655, 0.000000); vertex(vScale * 0.390061 - vXoffset, vScale * -0.482655, 0.000000); vertex(vScale * 0.310184 - vXoffset, vScale * -0.482655, 0.000000); vertex(vScale * 0.262684 - vXoffset, vScale * -0.482655, 0.000000); vertex(vScale * 0.248223 - vXoffset, vScale * -0.482655, 0.000000); vertex(vScale * 0.200925 - vXoffset, vScale * -0.482655, 0.000000); vertex(vScale * 0.146075 - vXoffset, vScale * -0.482655, 0.000000); endShape(); // ____________________________________________________________________ // | | // | 18th Floor: Madison Hall | // |____________________________________________________________________| // DTMF(941.0, 1209.0); // DTMF * beginShape(); vertex(vScale * 0.146075 - vXoffset, vScale * -0.301677, 0.000000); vertex(vScale * 0.146075 - vXoffset, vScale * -0.482655, 0.000000); vertex(vScale * 0.200925 - vXoffset, vScale * -0.482655, 0.000000); vertex(vScale * 0.248223 - vXoffset, vScale * -0.482655, 0.000000); vertex(vScale * 0.262684 - vXoffset, vScale * -0.482655, 0.000000); vertex(vScale * 0.310184 - vXoffset, vScale * -0.482655, 0.000000); vertex(vScale * 0.313100 - vXoffset, vScale * -0.482655, 0.000000); vertex(vScale * 0.313100 - vXoffset, vScale * -0.313090, 0.000000); vertex(vScale * 0.310184 - vXoffset, vScale * -0.313090, 0.000000); vertex(vScale * 0.262684 - vXoffset, vScale * -0.313090, 0.000000); vertex(vScale * 0.248223 - vXoffset, vScale * -0.313090, 0.000000); vertex(vScale * 0.200925 - vXoffset, vScale * -0.313090, 0.000000); vertex(vScale * 0.146075 - vXoffset, vScale * -0.313090, 0.000000); endShape(); beginShape(LINES); // Stairwell Partition vertex(vScale * 0.198144 - vXoffset, vScale * -0.376532, 0.000000); vertex(vScale * 0.198144 - vXoffset, vScale * -0.482655, 0.000000); // Steps vertex(vScale * 0.146075 - vXoffset, vScale * -0.482655, 0.000000); vertex(vScale * 0.198144 - vXoffset, vScale * -0.482655, 0.000000); vertex(vScale * 0.146075 - vXoffset, vScale * -0.467154, 0.000000); vertex(vScale * 0.198144 - vXoffset, vScale * -0.467154, 0.000000); vertex(vScale * 0.146075 - vXoffset, vScale * -0.451912, 0.000000); vertex(vScale * 0.198144 - vXoffset, vScale * -0.451912, 0.000000); vertex(vScale * 0.146075 - vXoffset, vScale * -0.436816, 0.000000); vertex(vScale * 0.198144 - vXoffset, vScale * -0.436816, 0.000000); vertex(vScale * 0.146075 - vXoffset, vScale * -0.421974, 0.000000); vertex(vScale * 0.198144 - vXoffset, vScale * -0.421974, 0.000000); vertex(vScale * 0.146075 - vXoffset, vScale * -0.406605, 0.000000); vertex(vScale * 0.198144 - vXoffset, vScale * -0.406605, 0.000000); vertex(vScale * 0.146075 - vXoffset, vScale * -0.391636, 0.000000); vertex(vScale * 0.198144 - vXoffset, vScale * -0.391636, 0.000000); vertex(vScale * 0.146075 - vXoffset, vScale * -0.376532, 0.000000); vertex(vScale * 0.198144 - vXoffset, vScale * -0.376532, 0.000000); endShape(); // ____________________________________________________________________ // | | // | 18th Floor: Far Stairway | // |____________________________________________________________________| // DTMF(770.0, 1633.0); // DTMF B beginShape(); vertex(vScale * 0.865977 - vXoffset, vScale * -0.208570, 0.000000); vertex(vScale * 0.962302 - vXoffset, vScale * -0.208570, 0.000000); vertex(vScale * 0.962302 - vXoffset, vScale * -0.062719, 0.000000); vertex(vScale * 0.865977 - vXoffset, vScale * -0.062719, 0.000000); vertex(vScale * 0.865977 - vXoffset, vScale * -0.208570, 0.000000); endShape(); beginShape(LINES); // Divider vertex(vScale * 0.914191 - vXoffset, vScale * -0.168104, 0.000000); vertex(vScale * 0.914191 - vXoffset, vScale * -0.062719, 0.000000); // Tiers vertex(vScale * 0.865977 - vXoffset, vScale * -0.077416, 0.000000); vertex(vScale * 0.962302 - vXoffset, vScale * -0.077416, 0.000000); vertex(vScale * 0.865977 - vXoffset, vScale * -0.092350, 0.000000); vertex(vScale * 0.962302 - vXoffset, vScale * -0.092350, 0.000000); vertex(vScale * 0.865977 - vXoffset, vScale * -0.107458, 0.000000); vertex(vScale * 0.962302 - vXoffset, vScale * -0.107458, 0.000000); vertex(vScale * 0.865977 - vXoffset, vScale * -0.122656, 0.000000); vertex(vScale * 0.962302 - vXoffset, vScale * -0.122656, 0.000000); vertex(vScale * 0.865977 - vXoffset, vScale * -0.137676, 0.000000); vertex(vScale * 0.962302 - vXoffset, vScale * -0.137676, 0.000000); vertex(vScale * 0.865977 - vXoffset, vScale * -0.152872, 0.000000); vertex(vScale * 0.962302 - vXoffset, vScale * -0.152872, 0.000000); vertex(vScale * 0.865977 - vXoffset, vScale * -0.168104, 0.000000); vertex(vScale * 0.962302 - vXoffset, vScale * -0.168104, 0.000000); endShape(); // ____________________________________________________________________ // | | // | Mezzanine: Elevators | // |____________________________________________________________________| // DTMF(941.0, 1336.0); // DTMF 0 (intended for Schyler) beginShape(); vertex(vScale * 0.082131 + vXoffset, vScale * -0.349620, 0.000000); vertex(vScale * 0.082131 + vXoffset, vScale * -0.508046, 0.000000); vertex(vScale * 0.210126 + vXoffset, vScale * -0.508046, 0.000000); vertex(vScale * 0.210126 + vXoffset, vScale * -0.450878, 0.000000); vertex(vScale * 0.422860 + vXoffset, vScale * -0.450878, 0.000000); vertex(vScale * 0.422860 + vXoffset, vScale * -0.349620, 0.000000); vertex(vScale * 0.082131 + vXoffset, vScale * -0.349620, 0.000000); endShape(); // ____________________________________________________________________ // | | // | Mezzanine and 18th Floor: Grid | // |____________________________________________________________________| // noFill(); stroke(0x10000000); // Black, 1/16th opacity (AARRGGBB) for(float w=0; w<=screen.width; w=w+(0.01*screen.width)){ line(w, screen.width/2, 0.5, w, -screen.width/2, 0.5); if(w!=0.0){ // Don't draw the same line twice line(-w, screen.width/2, 0.5, -w, -screen.width/2, 0.5); } // end if } // next w for(float w=0; w<=screen.width/2; w=w+(0.01*screen.width)){ line(screen.width, w, 0.5, -screen.width, w, 0.5); if(w!=0.0){ // Don't draw the same line twice line(screen.width, -w, 0.5, -screen.width, -w, 0.5); } // end if } // next w // ____________________________________________________________________ // | | // | LABELS | // | | // | Why do this the hard way? Beacuase Processing's way of putting | // | text on the screen is fucking anal and looks like crap. | // |____________________________________________________________________| // noFill(); colorMode(HSB, 1.0); stroke((PI+atan2(cos(rt()/sqrt(941.0)),sin(rt()/sqrt(1633.0))))/TWO_PI, sqrt(pow(cos(rt()/sqrt(941.0)),2)+pow(sin(rt()/sqrt(1633.0)),2)), 1.0, 1.0); beginShape(LINES); // T vertex(vScale * -1.425000, vScale * -1.170000, 0.000000); vertex(vScale * -1.275004, vScale * -1.170000, 0.000000); vertex(vScale * -1.350000, vScale * -1.170000, 0.000000); vertex(vScale * -1.350000, vScale * -1.020000, 0.000000); // H vertex(vScale * -1.200000, vScale * -1.170000, 0.000000); vertex(vScale * -1.200000, vScale * -1.020000, 0.000000); vertex(vScale * -1.200000, vScale * -1.095000, 0.000000); vertex(vScale * -1.050000, vScale * -1.095000, 0.000000); vertex(vScale * -1.050000, vScale * -1.170000, 0.000000); vertex(vScale * -1.050000, vScale * -1.020000, 0.000000); // E vertex(vScale * -0.825000, vScale * -1.170000, 0.000000); vertex(vScale * -0.975000, vScale * -1.170000, 0.000000); vertex(vScale * -0.975000, vScale * -1.170000, 0.000000); vertex(vScale * -0.975000, vScale * -1.020000, 0.000000); vertex(vScale * -0.975000, vScale * -1.020000, 0.000000); vertex(vScale * -0.825000, vScale * -1.020000, 0.000000); vertex(vScale * -0.975000, vScale * -1.095000, 0.000000); vertex(vScale * -0.900000, vScale * -1.095000, 0.000000); // L vertex(vScale * -0.525000, vScale * -1.170000, 0.000000); vertex(vScale * -0.525000, vScale * -1.020000, 0.000000); vertex(vScale * -0.525000, vScale * -1.020000, 0.000000); vertex(vScale * -0.375000, vScale * -1.020000, 0.000000); // A vertex(vScale * -0.300000, vScale * -1.170000, 0.000000); vertex(vScale * -0.300000, vScale * -1.020000, 0.000000); vertex(vScale * -0.150000, vScale * -1.170000, 0.000000); vertex(vScale * -0.150000, vScale * -1.020000, 0.000000); vertex(vScale * -0.300000, vScale * -1.170000, 0.000000); vertex(vScale * -0.150000, vScale * -1.170000, 0.000000); vertex(vScale * -0.300000, vScale * -1.095000, 0.000000); vertex(vScale * -0.150000, vScale * -1.095000, 0.000000); // S vertex(vScale * 0.075000, vScale * -1.170000, 0.000000); vertex(vScale * -0.075000, vScale * -1.170000, 0.000000); vertex(vScale * -0.075000, vScale * -1.170000, 0.000000); vertex(vScale * -0.075000, vScale * -1.095000, 0.000000); vertex(vScale * -0.075000, vScale * -1.095000, 0.000000); vertex(vScale * 0.075000, vScale * -1.095000, 0.000000); vertex(vScale * 0.075000, vScale * -1.095000, 0.000000); vertex(vScale * 0.075000, vScale * -1.020000, 0.000000); vertex(vScale * 0.075000, vScale * -1.020000, 0.000000); vertex(vScale * -0.075000, vScale * -1.020000, 0.000000); // T vertex(vScale * 0.150000, vScale * -1.170000, 0.000000); vertex(vScale * 0.300000, vScale * -1.170000, 0.000000); vertex(vScale * 0.225000, vScale * -1.170000, 0.000000); vertex(vScale * 0.225000, vScale * -1.020000, 0.000000); // H vertex(vScale * 0.600000, vScale * -1.170000, 0.000000); vertex(vScale * 0.600000, vScale * -1.020000, 0.000000); vertex(vScale * 0.750000, vScale * -1.170000, 0.000000); vertex(vScale * 0.750000, vScale * -1.020000, 0.000000); vertex(vScale * 0.600000, vScale * -1.095000, 0.000000); vertex(vScale * 0.750000, vScale * -1.095000, 0.000000); // O vertex(vScale * 0.825000, vScale * -1.170000, 0.000000); vertex(vScale * 0.975000, vScale * -1.170000, 0.000000); vertex(vScale * 0.975000, vScale * -1.170000, 0.000000); vertex(vScale * 0.975000, vScale * -1.020000, 0.000000); vertex(vScale * 0.975000, vScale * -1.020000, 0.000000); vertex(vScale * 0.825000, vScale * -1.020000, 0.000000); vertex(vScale * 0.825000, vScale * -1.020000, 0.000000); vertex(vScale * 0.825000, vScale * -1.170000, 0.000000); // P vertex(vScale * 1.050000, vScale * -1.020000, 0.000000); vertex(vScale * 1.050000, vScale * -1.170000, 0.000000); vertex(vScale * 1.050000, vScale * -1.170000, 0.000000); vertex(vScale * 1.200000, vScale * -1.170000, 0.000000); vertex(vScale * 1.200000, vScale * -1.170000, 0.000000); vertex(vScale * 1.200000, vScale * -1.095000, 0.000000); vertex(vScale * 1.200000, vScale * -1.095000, 0.000000); vertex(vScale * 1.050000, vScale * -1.095000, 0.000000); // E vertex(vScale * 1.425000, vScale * -1.170000, 0.000000); vertex(vScale * 1.275000, vScale * -1.170000, 0.000000); vertex(vScale * 1.275000, vScale * -1.170000, 0.000000); vertex(vScale * 1.275000, vScale * -1.020000, 0.000000); vertex(vScale * 1.275000, vScale * -1.020000, 0.000000); vertex(vScale * 1.425000, vScale * -1.020000, 0.000000); vertex(vScale * 1.350000, vScale * -1.095000, 0.000000); vertex(vScale * 1.275000, vScale * -1.095000, 0.000000); // H vertex(vScale * 1.325000, vScale * 1.120000, 0.000000); vertex(vScale * 1.325000, vScale * 1.020000, 0.000000); vertex(vScale * 1.325000, vScale * 1.070000, 0.000000); vertex(vScale * 1.225000, vScale * 1.070000, 0.000000); vertex(vScale * 1.225000, vScale * 1.120000, 0.000000); vertex(vScale * 1.225000, vScale * 1.020000, 0.000000); // O vertex(vScale * 1.175000, vScale * 1.120000, 0.000000); vertex(vScale * 1.075000, vScale * 1.120000, 0.000000); vertex(vScale * 1.075000, vScale * 1.120000, 0.000000); vertex(vScale * 1.075000, vScale * 1.020000, 0.000000); vertex(vScale * 1.075000, vScale * 1.020000, 0.000000); vertex(vScale * 1.175000, vScale * 1.020000, 0.000000); vertex(vScale * 1.175000, vScale * 1.020000, 0.000000); vertex(vScale * 1.175000, vScale * 1.120000, 0.000000); // T vertex(vScale * 1.025000, vScale * 1.120000, 0.000000); vertex(vScale * 0.925000, vScale * 1.120000, 0.000000); vertex(vScale * 0.975000, vScale * 1.120000, 0.000000); vertex(vScale * 0.975000, vScale * 1.020000, 0.000000); // E vertex(vScale * 0.775000, vScale * 1.120000, 0.000000); vertex(vScale * 0.875000, vScale * 1.120000, 0.000000); vertex(vScale * 0.875000, vScale * 1.120000, 0.000000); vertex(vScale * 0.875000, vScale * 1.020000, 0.000000); vertex(vScale * 0.875000, vScale * 1.020000, 0.000000); vertex(vScale * 0.775000, vScale * 1.020000, 0.000000); vertex(vScale * 0.825000, vScale * 1.070000, 0.000000); vertex(vScale * 0.875000, vScale * 1.070000, 0.000000); // L vertex(vScale * 0.725000, vScale * 1.120000, 0.000000); vertex(vScale * 0.725000, vScale * 1.020000, 0.000000); vertex(vScale * 0.725000, vScale * 1.020000, 0.000000); vertex(vScale * 0.625000, vScale * 1.020000, 0.000000); // P vertex(vScale * 0.425000, vScale * 1.020000, 0.000000); vertex(vScale * 0.425000, vScale * 1.120000, 0.000000); vertex(vScale * 0.425000, vScale * 1.120000, 0.000000); vertex(vScale * 0.325000, vScale * 1.120000, 0.000000); vertex(vScale * 0.325000, vScale * 1.120000, 0.000000); vertex(vScale * 0.325000, vScale * 1.070000, 0.000000); vertex(vScale * 0.325000, vScale * 1.070000, 0.000000); vertex(vScale * 0.425000, vScale * 1.070000, 0.000000); // E vertex(vScale * 0.175000, vScale * 1.120000, 0.000000); vertex(vScale * 0.275000, vScale * 1.120000, 0.000000); vertex(vScale * 0.275000, vScale * 1.120000, 0.000000); vertex(vScale * 0.275000, vScale * 1.020000, 0.000000); vertex(vScale * 0.275000, vScale * 1.020000, 0.000000); vertex(vScale * 0.175000, vScale * 1.020000, 0.000000); vertex(vScale * 0.225000, vScale * 1.070000, 0.000000); vertex(vScale * 0.275000, vScale * 1.070000, 0.000000); // N vertex(vScale * 0.125000, vScale * 1.020000, 0.000000); vertex(vScale * 0.125000, vScale * 1.120000, 0.000000); vertex(vScale * 0.125000, vScale * 1.120000, 0.000000); vertex(vScale * 0.025000, vScale * 1.020000, 0.000000); vertex(vScale * 0.025000, vScale * 1.020000, 0.000000); vertex(vScale * 0.025000, vScale * 1.120000, 0.000000); // N vertex(vScale * -0.025000, vScale * 1.020000, 0.000000); vertex(vScale * -0.025000, vScale * 1.120000, 0.000000); vertex(vScale * -0.025000, vScale * 1.120000, 0.000000); vertex(vScale * -0.125000, vScale * 1.020000, 0.000000); vertex(vScale * -0.125000, vScale * 1.020000, 0.000000); vertex(vScale * -0.125000, vScale * 1.120000, 0.000000); // S vertex(vScale * -0.175000, vScale * 1.020000, 0.000000); vertex(vScale * -0.275000, vScale * 1.020000, 0.000000); vertex(vScale * -0.275000, vScale * 1.020000, 0.000000); vertex(vScale * -0.275000, vScale * 1.070000, 0.000000); vertex(vScale * -0.275000, vScale * 1.070000, 0.000000); vertex(vScale * -0.175000, vScale * 1.070000, 0.000000); vertex(vScale * -0.175000, vScale * 1.070000, 0.000000); vertex(vScale * -0.175000, vScale * 1.120000, 0.000000); vertex(vScale * -0.175000, vScale * 1.120000, 0.000000); vertex(vScale * -0.275000, vScale * 1.120000, 0.000000); // Y vertex(vScale * -0.325000, vScale * 1.120000, 0.000000); vertex(vScale * -0.375000, vScale * 1.070000, 0.000000); vertex(vScale * -0.425000, vScale * 1.120000, 0.000000); vertex(vScale * -0.375000, vScale * 1.070000, 0.000000); vertex(vScale * -0.375000, vScale * 1.020000, 0.000000); vertex(vScale * -0.375000, vScale * 1.070000, 0.000000); // L vertex(vScale * -0.475000, vScale * 1.120000, 0.000000); vertex(vScale * -0.475000, vScale * 1.020000, 0.000000); vertex(vScale * -0.475000, vScale * 1.020000, 0.000000); vertex(vScale * -0.575000, vScale * 1.020000, 0.000000); // V vertex(vScale * -0.625000, vScale * 1.120000, 0.000000); vertex(vScale * -0.625000, vScale * 1.070000, 0.000000); vertex(vScale * -0.625000, vScale * 1.070000, 0.000000); vertex(vScale * -0.675000, vScale * 1.020000, 0.000000); vertex(vScale * -0.675000, vScale * 1.020000, 0.000000); vertex(vScale * -0.725000, vScale * 1.070000, 0.000000); vertex(vScale * -0.725000, vScale * 1.070000, 0.000000); vertex(vScale * -0.725000, vScale * 1.120000, 0.000000); // A vertex(vScale * -0.775000, vScale * 1.020000, 0.000000); vertex(vScale * -0.775000, vScale * 1.120000, 0.000000); vertex(vScale * -0.775000, vScale * 1.120000, 0.000000); vertex(vScale * -0.875000, vScale * 1.120000, 0.000000); vertex(vScale * -0.875000, vScale * 1.120000, 0.000000); vertex(vScale * -0.875000, vScale * 1.020000, 0.000000); vertex(vScale * -0.775000, vScale * 1.070000, 0.000000); vertex(vScale * -0.875000, vScale * 1.070000, 0.000000); // N vertex(vScale * -0.925000, vScale * 1.020000, 0.000000); vertex(vScale * -0.925000, vScale * 1.120000, 0.000000); vertex(vScale * -0.925000, vScale * 1.120000, 0.000000); vertex(vScale * -1.025000, vScale * 1.020000, 0.000000); vertex(vScale * -1.025000, vScale * 1.020000, 0.000000); vertex(vScale * -1.025000, vScale * 1.120000, 0.000000); // I vertex(vScale * -1.075000, vScale * 1.120000, 0.000000); vertex(vScale * -1.175000, vScale * 1.120000, 0.000000); vertex(vScale * -1.075000, vScale * 1.020000, 0.000000); vertex(vScale * -1.175000, vScale * 1.020000, 0.000000); vertex(vScale * -1.125000, vScale * 1.120000, 0.000000); vertex(vScale * -1.125000, vScale * 1.020000, 0.000000); // A vertex(vScale * -1.225000, vScale * 1.020000, 0.000000); vertex(vScale * -1.225000, vScale * 1.120000, 0.000000); vertex(vScale * -1.225000, vScale * 1.120000, 0.000000); vertex(vScale * -1.325000, vScale * 1.120000, 0.000000); vertex(vScale * -1.325000, vScale * 1.120000, 0.000000); vertex(vScale * -1.325000, vScale * 1.020000, 0.000000); vertex(vScale * -1.225000, vScale * 1.070000, 0.000000); vertex(vScale * -1.325000, vScale * 1.070000, 0.000000); // 1 vertex(vScale * -1.120000 - vXoffset, vScale * 0.700000, 0.000000); vertex(vScale * -1.020000 - vXoffset, vScale * 0.700000, 0.000000); // 8 vertex(vScale * -1.120000 - vXoffset, vScale * 0.600000, 0.000000); vertex(vScale * -1.120000 - vXoffset, vScale * 0.500000, 0.000000); vertex(vScale * -1.120000 - vXoffset, vScale * 0.500000, 0.000000); vertex(vScale * -1.020000 - vXoffset, vScale * 0.500000, 0.000000); vertex(vScale * -1.020000 - vXoffset, vScale * 0.500000, 0.000000); vertex(vScale * -1.020000 - vXoffset, vScale * 0.600000, 0.000000); vertex(vScale * -1.020000 - vXoffset, vScale * 0.600000, 0.000000); vertex(vScale * -1.120000 - vXoffset, vScale * 0.600000, 0.000000); vertex(vScale * -1.070000 - vXoffset, vScale * 0.600000, 0.000000); vertex(vScale * -1.070000 - vXoffset, vScale * 0.500000, 0.000000); // T vertex(vScale * -1.120000 - vXoffset, vScale * 0.450000, 0.000000); vertex(vScale * -1.120000 - vXoffset, vScale * 0.350000, 0.000000); vertex(vScale * -1.120000 - vXoffset, vScale * 0.400000, 0.000000); vertex(vScale * -1.020000 - vXoffset, vScale * 0.400000, 0.000000); // H vertex(vScale * -1.120000 - vXoffset, vScale * 0.300000, 0.000000); vertex(vScale * -1.020000 - vXoffset, vScale * 0.300000, 0.000000); vertex(vScale * -1.070000 - vXoffset, vScale * 0.300000, 0.000000); vertex(vScale * -1.070000 - vXoffset, vScale * 0.200000, 0.000000); vertex(vScale * -1.120000 - vXoffset, vScale * 0.200000, 0.000000); vertex(vScale * -1.020000 - vXoffset, vScale * 0.200000, 0.000000); // F vertex(vScale * -1.020000 - vXoffset, vScale * 0.000000, 0.000000); vertex(vScale * -1.120000 - vXoffset, vScale * 0.000000, 0.000000); vertex(vScale * -1.120000 - vXoffset, vScale * 0.000000, 0.000000); vertex(vScale * -1.120000 - vXoffset, vScale * -0.100000, 0.000000); vertex(vScale * -1.070000 - vXoffset, vScale * 0.000000, 0.000000); vertex(vScale * -1.070000 - vXoffset, vScale * -0.050000, 0.000000); // L vertex(vScale * -1.120000 - vXoffset, vScale * -0.150000, 0.000000); vertex(vScale * -1.020000 - vXoffset, vScale * -0.150000, 0.000000); vertex(vScale * -1.020000 - vXoffset, vScale * -0.150000, 0.000000); vertex(vScale * -1.020000 - vXoffset, vScale * -0.250000, 0.000000); // O vertex(vScale * -1.020000 - vXoffset, vScale * -0.300000, 0.000000); vertex(vScale * -1.020000 - vXoffset, vScale * -0.400000, 0.000000); vertex(vScale * -1.020000 - vXoffset, vScale * -0.400000, 0.000000); vertex(vScale * -1.120000 - vXoffset, vScale * -0.400000, 0.000000); vertex(vScale * -1.120000 - vXoffset, vScale * -0.400000, 0.000000); vertex(vScale * -1.120000 - vXoffset, vScale * -0.300000, 0.000000); vertex(vScale * -1.120000 - vXoffset, vScale * -0.300000, 0.000000); vertex(vScale * -1.020000 - vXoffset, vScale * -0.300000, 0.000000); // O vertex(vScale * -1.020000 - vXoffset, vScale * -0.450000, 0.000000); vertex(vScale * -1.020000 - vXoffset, vScale * -0.550000, 0.000000); vertex(vScale * -1.020000 - vXoffset, vScale * -0.550000, 0.000000); vertex(vScale * -1.120000 - vXoffset, vScale * -0.550000, 0.000000); vertex(vScale * -1.120000 - vXoffset, vScale * -0.550000, 0.000000); vertex(vScale * -1.120000 - vXoffset, vScale * -0.450000, 0.000000); vertex(vScale * -1.120000 - vXoffset, vScale * -0.450000, 0.000000); vertex(vScale * -1.020000 - vXoffset, vScale * -0.450000, 0.000000); // R vertex(vScale * -1.020000 - vXoffset, vScale * -0.600000, 0.000000); vertex(vScale * -1.120000 - vXoffset, vScale * -0.600000, 0.000000); vertex(vScale * -1.120000 - vXoffset, vScale * -0.600000, 0.000000); vertex(vScale * -1.120000 - vXoffset, vScale * -0.700000, 0.000000); vertex(vScale * -1.120000 - vXoffset, vScale * -0.700000, 0.000000); vertex(vScale * -1.070000 - vXoffset, vScale * -0.700000, 0.000000); vertex(vScale * -1.070000 - vXoffset, vScale * -0.700000, 0.000000); vertex(vScale * -1.070000 - vXoffset, vScale * -0.600000, 0.000000); vertex(vScale * -1.070000 - vXoffset, vScale * -0.650000, 0.000000); vertex(vScale * -1.020000 - vXoffset, vScale * -0.700000, 0.000000); // M vertex(vScale * 1.020000 + vXoffset, vScale * -0.650000, 0.000000); vertex(vScale * 1.120000 + vXoffset, vScale * -0.650000, 0.000000); vertex(vScale * 1.120000 + vXoffset, vScale * -0.650000, 0.000000); vertex(vScale * 1.070000 + vXoffset, vScale * -0.600000, 0.000000); vertex(vScale * 1.070000 + vXoffset, vScale * -0.600000, 0.000000); vertex(vScale * 1.120000 + vXoffset, vScale * -0.550000, 0.000000); vertex(vScale * 1.120000 + vXoffset, vScale * -0.550000, 0.000000); vertex(vScale * 1.020000 + vXoffset, vScale * -0.550000, 0.000000); // E vertex(vScale * 1.020000 + vXoffset, vScale * -0.400000, 0.000000); vertex(vScale * 1.020000 + vXoffset, vScale * -0.500000, 0.000000); vertex(vScale * 1.020000 + vXoffset, vScale * -0.500000, 0.000000); vertex(vScale * 1.120000 + vXoffset, vScale * -0.500000, 0.000000); vertex(vScale * 1.120000 + vXoffset, vScale * -0.500000, 0.000000); vertex(vScale * 1.120000 + vXoffset, vScale * -0.400000, 0.000000); vertex(vScale * 1.070000 + vXoffset, vScale * -0.500000, 0.000000); vertex(vScale * 1.070000 + vXoffset, vScale * -0.450000, 0.000000); // Z vertex(vScale * 1.120000 + vXoffset, vScale * -0.350000, 0.000000); vertex(vScale * 1.120000 + vXoffset, vScale * -0.250000, 0.000000); vertex(vScale * 1.120000 + vXoffset, vScale * -0.250000, 0.000000); vertex(vScale * 1.020000 + vXoffset, vScale * -0.350000, 0.000000); vertex(vScale * 1.020000 + vXoffset, vScale * -0.350000, 0.000000); vertex(vScale * 1.020000 + vXoffset, vScale * -0.250000, 0.000000); // Z vertex(vScale * 1.120000 + vXoffset, vScale * -0.200000, 0.000000); vertex(vScale * 1.120000 + vXoffset, vScale * -0.100000, 0.000000); vertex(vScale * 1.120000 + vXoffset, vScale * -0.100000, 0.000000); vertex(vScale * 1.020000 + vXoffset, vScale * -0.200000, 0.000000); vertex(vScale * 1.020000 + vXoffset, vScale * -0.200000, 0.000000); vertex(vScale * 1.020000 + vXoffset, vScale * -0.100000, 0.000000); // A vertex(vScale * 1.020000 + vXoffset, vScale * -0.050000, 0.000000); vertex(vScale * 1.120000 + vXoffset, vScale * -0.050000, 0.000000); vertex(vScale * 1.120000 + vXoffset, vScale * -0.050000, 0.000000); vertex(vScale * 1.120000 + vXoffset, vScale * 0.050000, 0.000000); vertex(vScale * 1.120000 + vXoffset, vScale * 0.050000, 0.000000); vertex(vScale * 1.020000 + vXoffset, vScale * 0.050000, 0.000000); vertex(vScale * 1.070000 + vXoffset, vScale * -0.050000, 0.000000); vertex(vScale * 1.070000 + vXoffset, vScale * 0.050000, 0.000000); // N vertex(vScale * 1.020000 + vXoffset, vScale * 0.100000, 0.000000); vertex(vScale * 1.120000 + vXoffset, vScale * 0.100000, 0.000000); vertex(vScale * 1.120000 + vXoffset, vScale * 0.100000, 0.000000); vertex(vScale * 1.020000 + vXoffset, vScale * 0.200000, 0.000000); vertex(vScale * 1.020000 + vXoffset, vScale * 0.200000, 0.000000); vertex(vScale * 1.120000 + vXoffset, vScale * 0.200000, 0.000000); // I vertex(vScale * 1.120000 + vXoffset, vScale * 0.250000, 0.000000); vertex(vScale * 1.120000 + vXoffset, vScale * 0.350000, 0.000000); vertex(vScale * 1.020000 + vXoffset, vScale * 0.250000, 0.000000); vertex(vScale * 1.020000 + vXoffset, vScale * 0.350000, 0.000000); vertex(vScale * 1.020000 + vXoffset, vScale * 0.300000, 0.000000); vertex(vScale * 1.120000 + vXoffset, vScale * 0.300000, 0.000000); // N vertex(vScale * 1.020000 + vXoffset, vScale * 0.400000, 0.000000); vertex(vScale * 1.120000 + vXoffset, vScale * 0.400000, 0.000000); vertex(vScale * 1.120000 + vXoffset, vScale * 0.400000, 0.000000); vertex(vScale * 1.020000 + vXoffset, vScale * 0.500000, 0.000000); vertex(vScale * 1.020000 + vXoffset, vScale * 0.500000, 0.000000); vertex(vScale * 1.120000 + vXoffset, vScale * 0.500000, 0.000000); // E vertex(vScale * 1.020000 + vXoffset, vScale * 0.650000, 0.000000); vertex(vScale * 1.020000 + vXoffset, vScale * 0.550000, 0.000000); vertex(vScale * 1.020000 + vXoffset, vScale * 0.550000, 0.000000); vertex(vScale * 1.120000 + vXoffset, vScale * 0.550000, 0.000000); vertex(vScale * 1.120000 + vXoffset, vScale * 0.550000, 0.000000); vertex(vScale * 1.120000 + vXoffset, vScale * 0.650000, 0.000000); vertex(vScale * 1.070000 + vXoffset, vScale * 0.550000, 0.000000); vertex(vScale * 1.070000 + vXoffset, vScale * 0.600000, 0.000000); endShape(); // ____________________________________________________________________ // | | // | A few reminders: | // | | // | (1) All floor {x,y} coordinates layouts are in the range -1...+1 | // | | // | (2) To plot on the mezzanine, you must first scale the | // | x-coordinate by `vScale` and then ADD `vXoffset`. | // | | // | (3) To plot on the 18th floor, you must first scale the | // | x-coordinate by `vScale` and then SUBTRACT `vXoffset`. | // | | // | (4) To plot anything you will probably have to kill a goat atop a | // | slab of granite, recite some hollow mumbo-jumbo, and beg for | // | divine intervantion because Processing refuses to execute a | // | `translation(x,y,z)` on *anything* I've thrown at it. Read | // | and weep for | // | it lies through its teeth. | // | | // | (5) If you miraculously get Processing to do what it's supposed to | // | then make sure that the z-coordinate is >=+0.5; there are | // | layered 2D objects, so play it safe by "floating" your objects | // | above the grid (otherwise you'll get a nasty overlapping | // | effect that is not only inaesthetic but could also trigger an | // | epileptic seziure - resist the temptation). | // | | // | (6) I am not responsible for your stupidity. | // | | // | (7) Make VIZ proud !-) | // |____________________________________________________________________| // __ // | | // _| |_ // \ / // \ / // \/ // ____________________________________________________________________ // | | // | INSERT YOUR CODE HERE | // |____________________________________________________________________| // // /\ // / \ // / \ // | | // |__| // ____________________________________________________________________ // | | // | CAMERA | // | | // | Once again, DO NOT FUCK WITH THE CAMERA'S COORDINATES. They are | // | specifically designed to produce Lissajous-like {x,y} pairs that | // | coincide once every hour (60+1/60 and 59+59/60). The height seems | // | to be optimal. The fourth term is the x-coordinate at the center | // | of the camera's gaze. Don't fuck with that either. Finally, | // | DO NOT, UNDER PENALTY OF DEATH, ALTER THE LAST THREE COORDINATES. | // | If you fuck with any of them, the display *will not* work. | // |____________________________________________________________________| // camera(screen.width*-sin(rt()/(60.0+(1.0/60.0))*TWO_PI),screen.width/2*cos(rt()/(60.0-(1.0/60.0))*TWO_PI),(0.3*screen.width)+(screen.width*0.1*sin(rt()/60.0)),0.666666*screen.width*-sin(rt()/(45.0+(1.0/45.0))*TWO_PI),0.0,0.0,0.0,0.0,-1.0); endCamera(); } // end draw /* ////////////////////////////////////////////////////////////////////////// */ // ____________________________________________________________________ // | | // | USER-DEFINED FUNCTIONS | // |____________________________________________________________________| // // ____________________________________________________________________ // | | // | RT() - Return the remaining time of the conference in seconds | // | IMPORTANT: This implies that the program starts running on July 18 | // | at 00:00 EDT. All of the `sin()` and `cos()` will culminate after | // | three days' runtime. This most likely will have to be touched-up | // | right before the conference begins (take a wild guess by who). | // |____________________________________________________________________| // float rt(){return 259200.0-0.001*millis();} // 259,200 seconds is 3 days // ____________________________________________________________________ // | | // | DTMF() - Sets color using dual-tone multifrequency pairs | // | | // | I suggest you learn how to use a vectorscope in order undertand | // | how this works. Either way, don't fuck with perfection. | // |____________________________________________________________________| // void DTMF(float lowTone, float highTone){ fill((PI+atan2(cos(rt()/sqrt(lowTone)),sin(rt()/sqrt(highTone))))/TWO_PI, sqrt(pow(cos(rt()/sqrt(lowTone)),2)+pow(sin(rt()/sqrt(highTone)),2)), 1.0, 0.5*(-cos(TWO_PI*rt()/(30.0-1.0/30.0))+1)); stroke((PI+atan2(cos(rt()/sqrt(lowTone)),sin(rt()/sqrt(highTone))))/TWO_PI,sqrt(pow(cos(rt()/sqrt(lowTone)),2)+pow(sin(rt()/sqrt(highTone)),2)),1.0,0.5*(cos(TWO_PI * rt()/(30.0-1.0/30.0) )+1)); // end stroke } // end DTMF(f,f) /*\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\ \\ ______ ______ \\ \\ \_(_)_\ /_(_)_/ \\ \\ \\ \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\*/