less copy protection, more size visualization
Vous ne pouvez pas sélectionner plus de 25 sujets Les noms de sujets doivent commencer par une lettre ou un nombre, peuvent contenir des tirets ('-') et peuvent comporter jusqu'à 35 caractères.
 
 
 

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