less copy protection, more size visualization
Você não pode selecionar mais de 25 tópicos Os tópicos devem começar com uma letra ou um número, podem incluir traços ('-') e podem ter até 35 caracteres.
 
 
 

313 linhas
12 KiB

  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="utf-8">
  5. <title>Macrovision</title>
  6. <link rel="stylesheet" href="reset.css">
  7. <link rel="stylesheet" href="macrovision.css">
  8. <script src="https://kit.fontawesome.com/10a16c6083.js" crossorigin="anonymous"></script>
  9. <script src="math.min.js"></script>
  10. <script src="presets/characters.js"></script>
  11. <script src="presets/buildings.js"></script>
  12. <script src="presets/real-buildings.js"></script>
  13. <script src="presets/real-terrain.js"></script>
  14. <script src="presets/landmarks.js"></script>
  15. <script src="presets/species.js"></script>
  16. <script src="presets/objects.js"></script>
  17. <script src="presets/dildos.js"></script>
  18. <script src="presets/fiction.js"></script>
  19. <script src="presets/food.js"></script>
  20. <script src="presets/naturals.js"></script>
  21. <script src="presets/vehicles.js"></script>
  22. <script src="presets/pokemon.js"></script>
  23. <script src="presets/scenes.js"></script>
  24. <script src="presets/creatures.js"></script>
  25. <script src="media/attribution.js"></script>
  26. <script src="macrovision.js"></script>
  27. <meta name="viewport" content="width=device-width, initial-scale=0.75, maximum-scale=0.75, user-scalable=0" />
  28. <meta name="theme-color" content="#000000" />
  29. <meta name="description" content="How big are they anyway?" />
  30. <meta property="og:title" content="Macrovision" />
  31. <meta property="og:description" content="How big are they anyway?" />
  32. <meta property="og:image" content="https://crux.sexy/images/macrovision.png" />
  33. <link rel="icon" href="https://crux.sexy/images/macrovision.ico">
  34. </head>
  35. <body class="toggle-bottom-name toggle-top-name">
  36. <script type="text/javascript">
  37. window.onerror = function(msg, url, line, col, error) {
  38. alert("An error occured. If you're on a computer, hit F12 to open the developer tools, click the Console tab, and send the red text to chemicalcrux. If you're on mobile, screenshot this instead:\n\n" + msg + "\n" + url + "\n" + "line: " + line + "\n" + "col: " + col + "\nerror: " + error);
  39. }
  40. </script>
  41. <input hidden id="file-upload-picker" type='file' multiple>
  42. <div id="help-menu">
  43. <div id="table-of-contents-holder">
  44. <ul id="table-of-contents">
  45. <li><button id="close-help"><i class="fas fa-times"></i></button></li>
  46. </ul>
  47. </div>
  48. <div id="help-contents-holder">
  49. <div id="help-contents">
  50. <h2>Overview</h2>
  51. <p>Macrovision is a tool for visualizing sizes. You can create, scale, and pose a variety of silhouettes,
  52. ranging from galactic structures to individual atoms.</p>
  53. <p>This tool was created by me, <b>chemicalcrux</b>!</p>
  54. <p>You can join the Discord server to report bugs and see what's new. If you've found the site helpful, consider
  55. supporting me on Ko-Fi, too!</p>
  56. <a href="https://discord.gg/vqcKVV6"><img src="./logos/discord.svg" alt="Link to Discord"></a>
  57. <a href="https://ko-fi.com/chemicalcrux"><img src="./logos/ko-fi.svg" alt="Link to Ko-Fi"></a>
  58. <h2>Adjusting the View</h2>
  59. <p>Zoom in and out with the scroll wheel. You can also manually change the size of the world in the sidebar, or
  60. use the <i class="fas fa-search-minus"></i> and <i class="fas fa-search-plus"></i> buttons on the sides of the
  61. viewer.</p>
  62. <p>Shift+scroll without anything selected to move horizontally. You can also use the <i
  63. class="fas fa-arrow-left"></i> and <i class="fas fa-arrow-right"></i> buttons to scroll.</p>
  64. <p>Alt+scroll to make the world larger or smaller without changing where things are positioned on the screen.
  65. </p>
  66. <h2>Creating Entities</h2>
  67. <p>Each thing in the world is an <b>entity</b>. Macrovision comes with many of these, grouped into categories.
  68. For example, in the Naturals category, you'll find large bodies such as stars, country borders, and planets.
  69. </p>
  70. <p>Each entity has one or more views. For example, many characters have a front view and a back view. Some
  71. entities are collections of things, like countries &mdash; these have one view for each thing they represent!
  72. </p>
  73. <p>If you want to compare something that doesn't exist yet, you can create a custom entity. There are three ways
  74. you can do this:</p>
  75. <ul>
  76. <li>Drop an image into the window</li>
  77. <li>Select a file from the <i class="fas fa-bars"></i> menu</li>
  78. <li>Paste an image from your clipboard</li>
  79. </ul>
  80. <p>Custom entities aren't saved or exported.</p>
  81. <h2>Changing Entities</h2>
  82. <p>Shift+scroll with an entity selected to grow or shrink it. You can also use the <i
  83. class="fas fa-compress-arrows-alt"></i> and <i class="fas fa-expand-arrows-alt"></i> buttons to adjust size.
  84. </p>
  85. <p>When you have an entity selected, you'll see additional sections in the sidebar: one for the entity itself,
  86. and one for its current view.</p>
  87. <p>The entity options control things like scale (how big the entity is compared to normal) and display name. You
  88. can also pick from one or more default sizes.</p>
  89. <h2>Sharing</h2>
  90. <p>You can take a screenshot of the current scene with the <b>Screenshot</b> <i class="fas fa-camera"></i>
  91. button. The screenshot will be copied to your clipboard. You can also use the <b>Download</b> <i
  92. class="fas fa-download"></i> button to download the current scene as an image. This currently only includes
  93. the scale and the silhouettes themselves; it won't include things like names.</p>
  94. <p>If you want to show a scene to someone else, you can use <b>Permalink</b> <i class="fas fa-link"></i> to get
  95. a permalink. It'll be pretty large, since it represents where everything is. I'll probably add a link
  96. shortener at some point!</p>
  97. <p>You can also export the current scene as text with <b>Export</b> <i class="fas fa-share"></i>, copying it to
  98. your clipboard. You can import a scene from the clipboard with <b>Import</b> <i
  99. class="fas fa-share flipped"></i>.</p>
  100. </div>
  101. </div>
  102. </div>
  103. <div class="popout-menu" id="sidebar-menu">
  104. </div>
  105. <div class="popout-menu" id="settings-menu">
  106. </div>
  107. <div id="menubar">
  108. <span class="menubar-group">
  109. <button id="toggle-menu">
  110. <i class="fas fa-bars"></i>
  111. </button>
  112. <button id="toggle-settings">
  113. <i class="fas fa-cogs"></i>
  114. </button>
  115. </span>
  116. <span class="menubar-group">
  117. <button id="copy-screenshot">
  118. <i class="fas fa-camera"></i>
  119. </button>
  120. <button id="save-screenshot">
  121. <i class="fas fa-download"></i>
  122. </button>
  123. <button id="open-screenshot">
  124. <i class="fas fa-external-link-alt"></i>
  125. </button>
  126. </span>
  127. <span class="menubar-group" id="spawners">
  128. </span>
  129. <span class="menubar-group" id="filters">
  130. </span>
  131. <span class="menubar-group">
  132. <button id="open-help">
  133. <i class="far fa-question-circle"></i>
  134. <span class="sr-only">Help</span>
  135. </button>
  136. </span>
  137. </div>
  138. <div id="main-area">
  139. <div id="options" class="">
  140. <a href="https://docs.google.com/forms/d/e/1FAIpQLScRC-okDZ3FtzDTkbqSrpj5_OGD-1Vl-VYizOK3QM6quus11g/viewform?usp=sf_link"
  141. class="options-banner">Submit your character</a>
  142. <a href="https://docs.google.com/forms/d/e/1FAIpQLScj4A0D9VhVmOPRXwZMRDVyTRdDKiYVqSM86ESJnMHFV5jzQg/viewform?usp=sf_link"
  143. class="options-banner">Request other objects</a>
  144. <h3 class="options-header">World Info</h3>
  145. <div id="options-world">
  146. <div class="options-label">
  147. World height
  148. </div>
  149. <div class="options-row">
  150. <input class="options-field-numeric" type="number" id="options-height-value" min="1" value="10">
  151. <select class="options-field-unit" id="options-height-unit">
  152. </select>
  153. </div>
  154. <div class="options-row">
  155. <button class="options-button" id="options-world-fit">Fit to entities</button>
  156. </div>
  157. <div class="options-two-buttons" id="options-reset-pos">
  158. <button id="options-reset-pos-x">Reset X</button>
  159. <button id="options-reset-pos-y">Reset Y</button>
  160. </div>
  161. </div>
  162. <div class="options-label">
  163. Selection:
  164. </div>
  165. <div class="options-row">
  166. <select id="options-selected-entity" class="options-selector">
  167. <option id="options-selected-entity-none">None</option>
  168. </select>
  169. </div>
  170. <div class="options-row">
  171. <button id="delete-entity">
  172. <i class="fas fa-trash-alt symbol-button"></i>
  173. <span class="sr-only">Delete Entity</span>
  174. </button>
  175. </div>
  176. <h3 class="options-header" id="entity-category-header">Entity Options</h3>
  177. <div class="options-category" id="entity-category">
  178. <div class="options-label">
  179. View
  180. </div>
  181. <select class="options-selector" id="entity-view"></select>
  182. <div class="options-label">
  183. Ordering
  184. </div>
  185. <div class="options-two-buttons" id="options-ordering">
  186. <button id="options-order-back">Toward back</button>
  187. <div id="options-order-display"></div>
  188. <button id="options-order-forward">Toward front</button>
  189. </div>
  190. <div class="options-row">
  191. <button class="options-button" id="options-flip">Flip</button>
  192. </div>
  193. <div class="options-label">
  194. Brightness
  195. </div>
  196. <div class="options-two-buttons" id="options-brightness">
  197. <button id="options-brightness-down">Down</button>
  198. <div id="options-brightness-display"></div>
  199. <button id="options-brightness-up">Up</button>
  200. </div>
  201. <div class="options-label">
  202. Sizes
  203. </div>
  204. <div class="options-block" id="options-entity-defaults">
  205. </div>
  206. <span id="options-entity">
  207. </span>
  208. </div>
  209. <h3 class="options-header" id="view-category-header">View Options</h3>
  210. <div class="options-category" id="view-category">
  211. <span id="options-view">
  212. </span>
  213. </div>
  214. <h3 class="options-header" id="attribution-category-header">Source</h3>
  215. <div id="options-attribution">
  216. <div class="options-label">
  217. Authors
  218. </div>
  219. <div id="options-attribution-authors">
  220. </div>
  221. <div class="options-label">
  222. Owners
  223. </div>
  224. <div id="options-attribution-owners">
  225. </div>
  226. <div class="options-label">
  227. Source
  228. </div>
  229. <div id="options-attribution-source">
  230. </div>
  231. </div>
  232. <h3 class="options-header" id="scenes-category-header">Preset Scenes</h3>
  233. <div id="options-scenes">
  234. <div class="options-row">
  235. <select class="options-field-picker" id="scene-choices">
  236. </select>
  237. </div>
  238. <div class="options-row">
  239. <button id="load-scene">
  240. <i class="fas fa-play-circle symbol-button"></i>
  241. <span class="sr-only">Load Scene</span>
  242. </button>
  243. </div>
  244. </div>
  245. </div>
  246. <div id="world">
  247. <button class="scroll-button" id="zoom-in">
  248. <i class="fas fa-search-plus"></i>
  249. </button>
  250. <button class="scroll-button" id="zoom-out">
  251. <i class="fas fa-search-minus"></i>
  252. </button>
  253. <button class="scroll-button" id="scroll-left">
  254. <i class="fas fa-arrow-left"></i>
  255. </button>
  256. <button class="scroll-button" id="scroll-right">
  257. <i class="fas fa-arrow-right"></i>
  258. </button>
  259. <button class="scroll-button" id="scroll-up">
  260. <i class="fas fa-arrow-up"></i>
  261. </button>
  262. <button class="scroll-button" id="scroll-down">
  263. <i class="fas fa-arrow-down"></i>
  264. </button>
  265. <button class="scroll-button" disabled id="shrink">
  266. <i class="fas fa-compress-arrows-alt"></i>
  267. </button>
  268. <button class="scroll-button" disabled id="grow">
  269. <i class="fas fa-expand-arrows-alt"></i>
  270. </button>
  271. <button class="scroll-button" disabled id="fit">
  272. <i class="fas fa-search"></i>
  273. </button>
  274. <div id="entities">
  275. </div>
  276. <canvas id="display">
  277. </canvas>
  278. <div id="ground" class="bottom-cover"></div>
  279. </div>
  280. </div>
  281. </body>
  282. </html>