x_ite 5.0.2 → 6.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (340) hide show
  1. package/.vscode/settings.json +12 -5
  2. package/.vscode/tasks.json +21 -0
  3. package/Makefile +10 -15
  4. package/README.md +6 -11
  5. package/build/bin/dist.pl +0 -6
  6. package/build/bin/version.pl +1 -4
  7. package/dist/assets/components/annotation.js +2 -2
  8. package/dist/assets/components/annotation.min.js +1 -1
  9. package/dist/assets/components/cad-geometry.js +2 -2
  10. package/dist/assets/components/cad-geometry.min.js +1 -1
  11. package/dist/assets/components/cube-map-texturing.js +6 -19
  12. package/dist/assets/components/cube-map-texturing.min.js +1 -1
  13. package/dist/assets/components/dis.js +2 -2
  14. package/dist/assets/components/dis.min.js +1 -1
  15. package/dist/assets/components/event-utilities.js +3 -3
  16. package/dist/assets/components/event-utilities.min.js +1 -1
  17. package/dist/assets/components/geometry2d.js +4 -4
  18. package/dist/assets/components/geometry2d.min.js +1 -1
  19. package/dist/assets/components/geospatial.js +32 -1685
  20. package/dist/assets/components/geospatial.min.js +1 -1
  21. package/dist/assets/components/h-anim.js +70 -77
  22. package/dist/assets/components/h-anim.min.js +1 -1
  23. package/dist/assets/components/key-device-sensor.js +3 -3
  24. package/dist/assets/components/key-device-sensor.min.js +1 -1
  25. package/dist/assets/components/layout.js +38 -52
  26. package/dist/assets/components/layout.min.js +1 -1
  27. package/dist/assets/components/nurbs.js +277 -194
  28. package/dist/assets/components/nurbs.min.js +1 -1
  29. package/dist/assets/components/particle-systems.js +1918 -1658
  30. package/dist/assets/components/particle-systems.min.js +1 -1
  31. package/dist/assets/components/picking.js +33 -41
  32. package/dist/assets/components/picking.min.js +1 -1
  33. package/dist/assets/components/projective-texture-mapping.js +72 -86
  34. package/dist/assets/components/projective-texture-mapping.min.js +1 -1
  35. package/dist/assets/components/rigid-body-physics.js +36 -57
  36. package/dist/assets/components/rigid-body-physics.min.js +1 -1
  37. package/dist/assets/components/scripting.js +2 -2
  38. package/dist/assets/components/scripting.min.js +1 -1
  39. package/dist/assets/components/texturing-3d.js +26 -75
  40. package/dist/assets/components/texturing-3d.min.js +3 -3
  41. package/dist/assets/components/volume-rendering.js +10 -10
  42. package/dist/assets/components/volume-rendering.min.js +1 -1
  43. package/dist/assets/components/x_ite.js +2 -2
  44. package/dist/assets/components/x_ite.min.js +1 -1
  45. package/dist/assets/linetype/1.png +0 -0
  46. package/dist/assets/linetype/10.png +0 -0
  47. package/dist/assets/linetype/11.png +0 -0
  48. package/dist/assets/linetype/12.png +0 -0
  49. package/dist/assets/linetype/13.png +0 -0
  50. package/dist/assets/linetype/14.png +0 -0
  51. package/dist/assets/linetype/15.png +0 -0
  52. package/dist/assets/linetype/16.png +0 -0
  53. package/dist/assets/linetype/2.png +0 -0
  54. package/dist/assets/linetype/3.png +0 -0
  55. package/dist/assets/linetype/4.png +0 -0
  56. package/dist/assets/linetype/5.png +0 -0
  57. package/dist/assets/linetype/6.png +0 -0
  58. package/dist/assets/linetype/7.png +0 -0
  59. package/dist/assets/linetype/8.png +0 -0
  60. package/dist/assets/linetype/9.png +0 -0
  61. package/dist/assets/shaders/webgl1/Line.fs +0 -21
  62. package/dist/assets/shaders/webgl1/Line.vs +0 -10
  63. package/dist/assets/shaders/webgl1/PBR.vs +1 -1
  64. package/dist/assets/shaders/webgl2/Depth.vs +29 -1
  65. package/dist/assets/shaders/webgl2/Gouraud.vs +31 -3
  66. package/dist/assets/shaders/webgl2/Line.fs +24 -12
  67. package/dist/assets/shaders/webgl2/Line.vs +36 -11
  68. package/dist/assets/shaders/webgl2/LineTransform.fs +4 -0
  69. package/dist/assets/shaders/webgl2/LineTransform.vs +57 -0
  70. package/dist/assets/shaders/webgl2/PBR.vs +35 -7
  71. package/dist/assets/shaders/webgl2/Phong.vs +31 -3
  72. package/dist/assets/shaders/webgl2/Point.vs +29 -1
  73. package/dist/assets/shaders/webgl2/Unlit.vs +31 -3
  74. package/dist/example.html +6 -6
  75. package/dist/x_ite.css +180 -208
  76. package/dist/x_ite.js +16477 -16629
  77. package/dist/x_ite.min.js +17 -17
  78. package/dist/x_ite.zip +0 -0
  79. package/docs/404.md +6 -0
  80. package/docs/Accessing-the-External-Browser.md +20 -14
  81. package/docs/Browser-Support.md +6 -0
  82. package/docs/Custom-Shaders.md +17 -24
  83. package/docs/Features.md +7 -1
  84. package/docs/Gemfile +44 -0
  85. package/docs/Gemfile.lock +122 -0
  86. package/docs/Glossary.md +6 -0
  87. package/docs/How-To-Configure-Your-Web-Server.md +6 -0
  88. package/docs/Supported-Nodes.md +9 -1
  89. package/docs/What's-New.md +31 -0
  90. package/docs/XHTML-DOM-Integration.md +6 -0
  91. package/docs/_config.yml +1 -1
  92. package/docs/assets/css/main.scss +26 -0
  93. package/docs/index.md +38 -46
  94. package/docs/reference/Browser-Services.md +9 -3
  95. package/docs/reference/Constants-Services.md +6 -0
  96. package/docs/reference/ECMAScript-Object-and-Function-Definitions.md +6 -0
  97. package/docs/reference/Field-Services-and-Objects.md +6 -0
  98. package/docs/reference/Prototype-Services.md +6 -0
  99. package/docs/reference/Route-Services.md +6 -0
  100. package/docs/reference/Scene-Services.md +8 -2
  101. package/docs/reference/Script-Node-Authoring-Interface.md +7 -1
  102. package/docs/tutorials/Adding-backgrounds.md +6 -0
  103. package/docs/tutorials/Adding-fog.md +6 -0
  104. package/docs/tutorials/Adding-sound.md +6 -0
  105. package/docs/tutorials/Animating-transforms.md +6 -0
  106. package/docs/tutorials/Basic-Nodes.md +6 -0
  107. package/docs/tutorials/Building-a-X3D-world.md +6 -0
  108. package/docs/tutorials/Building-elevation-grids.md +6 -0
  109. package/docs/tutorials/Building-extruded-shapes.md +6 -0
  110. package/docs/tutorials/Building-primitive-shapes.md +6 -0
  111. package/docs/tutorials/Building-shapes-out-of-points,-lines,-and-faces.md +6 -0
  112. package/docs/tutorials/Controlling-appearance-with-materials.md +6 -0
  113. package/docs/tutorials/Controlling-color-on-coordinate-based-geometry.md +6 -0
  114. package/docs/tutorials/Controlling-detail.md +6 -0
  115. package/docs/tutorials/Controlling-how-textures-are-mapped.md +6 -0
  116. package/docs/tutorials/Controlling-navigation.md +6 -0
  117. package/docs/tutorials/Controlling-shading-on-coordinate-based-geometry.md +6 -0
  118. package/docs/tutorials/Controlling-the-viewpoint.md +6 -0
  119. package/docs/tutorials/Creating-new-node-types.md +6 -0
  120. package/docs/tutorials/Grouping-nodes.md +6 -0
  121. package/docs/tutorials/Hello,-World!.md +6 -0
  122. package/docs/tutorials/Improving-Performance.md +6 -0
  123. package/docs/tutorials/Increasing-Rendering-Speed.md +6 -0
  124. package/docs/tutorials/Introducing-X3D.md +6 -0
  125. package/docs/tutorials/Introducing-animation.md +6 -0
  126. package/docs/tutorials/Introducing-script-use.md +6 -0
  127. package/docs/tutorials/Lighting-your-world.md +6 -0
  128. package/docs/tutorials/Mapping-textures.md +6 -0
  129. package/docs/tutorials/Naming-nodes.md +6 -0
  130. package/docs/tutorials/Providing-information-about-your-world.md +6 -0
  131. package/docs/tutorials/Sensing-the-viewer.md +6 -0
  132. package/docs/tutorials/Sensing-viewer-actions.md +6 -0
  133. package/docs/tutorials/Transforming-Shapes.md +6 -0
  134. package/docs/tutorials/Writing-program-scripts-with-ECMAScript.md +6 -0
  135. package/docs/tutorials/index.md +6 -0
  136. package/package.json +6 -7
  137. package/src/assets/components/geometry2d.js +1 -1
  138. package/src/assets/components/key-device-sensor.js +1 -1
  139. package/src/assets/components/layout.js +1 -1
  140. package/src/assets/components/particle-systems.js +1 -1
  141. package/src/assets/components/volume-rendering.js +1 -1
  142. package/src/assets/linetype/1.png +0 -0
  143. package/src/assets/linetype/10.png +0 -0
  144. package/src/assets/linetype/11.png +0 -0
  145. package/src/assets/linetype/12.png +0 -0
  146. package/src/assets/linetype/13.png +0 -0
  147. package/src/assets/linetype/14.png +0 -0
  148. package/src/assets/linetype/15.png +0 -0
  149. package/src/assets/linetype/16.png +0 -0
  150. package/src/assets/linetype/2.png +0 -0
  151. package/src/assets/linetype/3.png +0 -0
  152. package/src/assets/linetype/4.png +0 -0
  153. package/src/assets/linetype/5.png +0 -0
  154. package/src/assets/linetype/6.png +0 -0
  155. package/src/assets/linetype/7.png +0 -0
  156. package/src/assets/linetype/8.png +0 -0
  157. package/src/assets/linetype/9.png +0 -0
  158. package/src/assets/shaders/Types.glsl +1 -9
  159. package/src/assets/shaders/webgl1/Line.fs +3 -28
  160. package/src/assets/shaders/webgl1/Line.vs +5 -19
  161. package/src/assets/shaders/webgl1/PBR.vs +1 -1
  162. package/src/assets/shaders/webgl1/Point.vs +2 -3
  163. package/src/assets/shaders/webgl2/Depth.vs +4 -1
  164. package/src/assets/shaders/webgl2/Gouraud.vs +5 -3
  165. package/src/assets/shaders/webgl2/Line.fs +11 -17
  166. package/src/assets/shaders/webgl2/Line.vs +16 -20
  167. package/src/assets/shaders/webgl2/LineTransform.fs +6 -0
  168. package/src/assets/shaders/webgl2/LineTransform.vs +77 -0
  169. package/src/assets/shaders/webgl2/PBR.vs +10 -7
  170. package/src/assets/shaders/webgl2/Phong.vs +6 -3
  171. package/src/assets/shaders/webgl2/Point.vs +6 -6
  172. package/src/assets/shaders/webgl2/Unlit.vs +6 -3
  173. package/src/assets/shaders/webgl2/include/Line2.glsl +20 -0
  174. package/src/assets/shaders/webgl2/include/Particle.glsl +36 -0
  175. package/src/example.html +6 -6
  176. package/src/standard/Math/Algorithm.js +12 -28
  177. package/src/standard/Math/Geometry/Plane3.js +0 -2
  178. package/src/standard/Math/Geometry/ViewVolume.js +88 -83
  179. package/src/standard/Math/Numbers/Color3.js +6 -0
  180. package/src/standard/Math/Numbers/Color4.js +7 -0
  181. package/src/standard/Math/Numbers/Complex.js +5 -0
  182. package/src/standard/Math/Numbers/Matrix2.js +20 -2
  183. package/src/standard/Math/Numbers/Matrix3.js +129 -110
  184. package/src/standard/Math/Numbers/Matrix4.js +138 -119
  185. package/src/standard/Math/Numbers/Quaternion.js +7 -0
  186. package/src/standard/Math/Numbers/Rotation4.js +7 -0
  187. package/src/standard/Math/Numbers/Vector2.js +8 -5
  188. package/src/standard/Math/Numbers/Vector3.js +16 -10
  189. package/src/standard/Math/Numbers/Vector4.js +12 -7
  190. package/src/standard/Math/Utility/BVH.js +45 -17
  191. package/src/tests.js +6 -1
  192. package/src/x_ite/Base/X3DBaseNode.js +22 -11
  193. package/src/x_ite/Base/X3DField.js +1 -1
  194. package/src/x_ite/Browser/Core/BrowserOptions.js +2 -2
  195. package/src/x_ite/Browser/Core/BrowserTimings.js +4 -2
  196. package/src/x_ite/Browser/Core/Context.js +185 -0
  197. package/src/x_ite/Browser/Core/ContextMenu.js +299 -193
  198. package/src/x_ite/Browser/Core/Notification.js +1 -0
  199. package/src/x_ite/Browser/Core/X3DCoreContext.js +35 -146
  200. package/src/x_ite/Browser/Layout/ScreenText.js +11 -4
  201. package/src/x_ite/Browser/Layout/X3DLayoutContext.js +4 -15
  202. package/src/x_ite/Browser/Navigation/ExamineViewer.js +12 -19
  203. package/src/x_ite/Browser/Navigation/LookAtViewer.js +0 -3
  204. package/src/x_ite/Browser/Navigation/PlaneViewer.js +0 -3
  205. package/src/x_ite/Browser/Navigation/X3DFlyViewer.js +14 -7
  206. package/src/x_ite/Browser/Navigation/X3DViewer.js +12 -20
  207. package/src/x_ite/Browser/Networking/X3DNetworkingContext.js +11 -7
  208. package/src/x_ite/Browser/ParticleSystems/BVH.glsl +183 -0
  209. package/src/x_ite/Browser/ParticleSystems/Box3.glsl +47 -0
  210. package/src/x_ite/Browser/ParticleSystems/GeometryTypes.js +66 -0
  211. package/src/x_ite/Browser/ParticleSystems/Line3.glsl +55 -0
  212. package/src/x_ite/Browser/ParticleSystems/Plane3.glsl +160 -0
  213. package/src/x_ite/Browser/PointingDeviceSensor/PointingDevice.js +27 -3
  214. package/src/x_ite/Browser/PointingDeviceSensor/X3DPointingDeviceSensorContext.js +37 -37
  215. package/src/x_ite/Browser/Rendering/X3DRenderingContext.js +19 -13
  216. package/src/x_ite/Browser/Shaders/Shader.js +33 -12
  217. package/src/x_ite/Browser/Shaders/ShaderSource.js +6 -0
  218. package/src/x_ite/Browser/Shaders/ShaderTest.js +16 -10
  219. package/src/x_ite/Browser/Shape/X3DShapeContext.js +50 -9
  220. package/src/x_ite/Browser/Text/X3DTextContext.js +4 -13
  221. package/src/x_ite/Browser/Texturing/X3DTexturingContext.js +23 -33
  222. package/src/x_ite/Browser/Texturing3D/DICOMParser.js +2 -2
  223. package/src/x_ite/Browser/Time/X3DTimeContext.js +3 -1
  224. package/src/x_ite/Browser/VERSION.js +1 -1
  225. package/src/x_ite/Browser/X3DBrowser.js +7 -6
  226. package/src/x_ite/Browser/X3DBrowserContext.js +35 -10
  227. package/src/x_ite/Components/Core/X3DNode.js +4 -0
  228. package/src/x_ite/Components/Core/X3DPrototypeInstance.js +0 -2
  229. package/src/x_ite/Components/CubeMapTexturing/ComposedCubeMapTexture.js +3 -4
  230. package/src/x_ite/Components/CubeMapTexturing/GeneratedCubeMapTexture.js +1 -12
  231. package/src/x_ite/Components/CubeMapTexturing/ImageCubeMapTexture.js +0 -1
  232. package/src/x_ite/Components/EnvironmentalEffects/TextureBackground.js +1 -1
  233. package/src/x_ite/Components/EnvironmentalEffects/X3DBackgroundNode.js +76 -77
  234. package/src/x_ite/Components/EnvironmentalEffects/X3DFogObject.js +2 -9
  235. package/src/x_ite/Components/EnvironmentalSensor/ProximitySensor.js +51 -65
  236. package/src/x_ite/Components/EventUtilities/X3DSequencerNode.js +1 -1
  237. package/src/x_ite/Components/Followers/X3DChaserNode.js +18 -32
  238. package/src/x_ite/Components/Followers/X3DDamperNode.js +1 -6
  239. package/src/x_ite/Components/Geometry2D/TriangleSet2D.js +1 -1
  240. package/src/x_ite/Components/Geometry3D/ElevationGrid.js +12 -4
  241. package/src/x_ite/Components/Geometry3D/IndexedFaceSet.js +4 -4
  242. package/src/x_ite/Components/Geospatial/GeoCoordinate.js +10 -27
  243. package/src/x_ite/Components/Geospatial/GeoPositionInterpolator.js +5 -10
  244. package/src/x_ite/Components/Geospatial/GeoTouchSensor.js +9 -16
  245. package/src/x_ite/Components/Geospatial/GeoTransform.js +6 -18
  246. package/src/x_ite/Components/Geospatial/X3DGeospatialObject.js +20 -27
  247. package/src/x_ite/Components/Grouping/X3DGroupingNode.js +8 -8
  248. package/src/x_ite/Components/Grouping/X3DTransformNode.js +0 -4
  249. package/src/x_ite/Components/HAnim/HAnimHumanoid.js +68 -75
  250. package/src/x_ite/Components/Interpolation/OrientationInterpolator.js +4 -11
  251. package/src/x_ite/Components/Interpolation/X3DInterpolatorNode.js +1 -1
  252. package/src/x_ite/Components/Layout/LayoutGroup.js +4 -9
  253. package/src/x_ite/Components/Layout/ScreenFontStyle.js +1 -1
  254. package/src/x_ite/Components/Layout/ScreenGroup.js +18 -23
  255. package/src/x_ite/Components/Lighting/DirectionalLight.js +28 -36
  256. package/src/x_ite/Components/Lighting/PointLight.js +32 -47
  257. package/src/x_ite/Components/Lighting/SpotLight.js +33 -48
  258. package/src/x_ite/Components/Navigation/Billboard.js +49 -56
  259. package/src/x_ite/Components/Navigation/LOD.js +1 -1
  260. package/src/x_ite/Components/Navigation/X3DViewpointNode.js +82 -111
  261. package/src/x_ite/Components/Networking/Anchor.js +10 -4
  262. package/src/x_ite/Components/ParticleSystems/BoundedPhysicsModel.js +6 -6
  263. package/src/x_ite/Components/ParticleSystems/ConeEmitter.js +44 -36
  264. package/src/x_ite/Components/ParticleSystems/ExplosionEmitter.js +26 -17
  265. package/src/x_ite/Components/ParticleSystems/ForcePhysicsModel.js +20 -7
  266. package/src/x_ite/Components/ParticleSystems/ParticleSystem.js +461 -876
  267. package/src/x_ite/Components/ParticleSystems/PointEmitter.js +39 -35
  268. package/src/x_ite/Components/ParticleSystems/PolylineEmitter.js +112 -128
  269. package/src/x_ite/Components/ParticleSystems/SurfaceEmitter.js +105 -112
  270. package/src/x_ite/Components/ParticleSystems/VolumeEmitter.js +138 -176
  271. package/src/x_ite/Components/ParticleSystems/WindPhysicsModel.js +16 -11
  272. package/src/x_ite/Components/ParticleSystems/X3DParticleEmitterNode.js +807 -217
  273. package/src/x_ite/Components/Picking/LinePickSensor.js +31 -39
  274. package/src/x_ite/Components/PointingDeviceSensor/CylinderSensor.js +90 -107
  275. package/src/x_ite/Components/PointingDeviceSensor/PlaneSensor.js +48 -55
  276. package/src/x_ite/Components/PointingDeviceSensor/SphereSensor.js +53 -70
  277. package/src/x_ite/Components/PointingDeviceSensor/TouchSensor.js +8 -15
  278. package/src/x_ite/Components/ProjectiveTextureMapping/TextureProjectorParallel.js +43 -50
  279. package/src/x_ite/Components/ProjectiveTextureMapping/TextureProjectorPerspective.js +32 -39
  280. package/src/x_ite/Components/Rendering/ClipPlane.js +3 -11
  281. package/src/x_ite/Components/Rendering/Color.js +12 -37
  282. package/src/x_ite/Components/Rendering/ColorRGBA.js +13 -38
  283. package/src/x_ite/Components/Rendering/IndexedLineSet.js +12 -4
  284. package/src/x_ite/Components/Rendering/LineSet.js +21 -13
  285. package/src/x_ite/Components/Rendering/PointSet.js +21 -13
  286. package/src/x_ite/Components/Rendering/X3DColorNode.js +13 -0
  287. package/src/x_ite/Components/Rendering/X3DComposedGeometryNode.js +13 -5
  288. package/src/x_ite/Components/Rendering/X3DGeometryNode.js +248 -325
  289. package/src/x_ite/Components/Rendering/X3DLineGeometryNode.js +305 -134
  290. package/src/x_ite/Components/Rendering/X3DPointGeometryNode.js +99 -122
  291. package/src/x_ite/Components/RigidBodyPhysics/DoubleAxisHingeJoint.js +24 -38
  292. package/src/x_ite/Components/RigidBodyPhysics/SingleAxisHingeJoint.js +10 -17
  293. package/src/x_ite/Components/Shaders/ComposedShader.js +35 -75
  294. package/src/x_ite/Components/Shaders/FloatVertexAttribute.js +5 -15
  295. package/src/x_ite/Components/Shaders/Matrix3VertexAttribute.js +7 -24
  296. package/src/x_ite/Components/Shaders/Matrix4VertexAttribute.js +7 -24
  297. package/src/x_ite/Components/Shaders/ShaderPart.js +1 -10
  298. package/src/x_ite/Components/Shaders/X3DProgrammableShaderObject.js +219 -209
  299. package/src/x_ite/Components/Shaders/X3DShaderNode.js +1 -1
  300. package/src/x_ite/Components/Shaders/X3DVertexAttributeNode.js +23 -1
  301. package/src/x_ite/Components/Shape/Appearance.js +12 -0
  302. package/src/x_ite/Components/Shape/FillProperties.js +12 -1
  303. package/src/x_ite/Components/Shape/LineProperties.js +33 -1
  304. package/src/x_ite/Components/Shape/PointProperties.js +23 -1
  305. package/src/x_ite/Components/Shape/Shape.js +27 -34
  306. package/src/x_ite/Components/Sound/Sound.js +30 -40
  307. package/src/x_ite/Components/Text/Text.js +6 -20
  308. package/src/x_ite/Components/Texturing/TextureCoordinate.js +5 -26
  309. package/src/x_ite/Components/Texturing/TextureProperties.js +4 -4
  310. package/src/x_ite/Components/Texturing/X3DSingleTextureCoordinateNode.js +21 -0
  311. package/src/x_ite/Components/Texturing/X3DSingleTextureNode.js +5 -4
  312. package/src/x_ite/Components/Texturing/X3DTexture2DNode.js +24 -33
  313. package/src/x_ite/Components/Texturing3D/TextureCoordinate3D.js +5 -26
  314. package/src/x_ite/Components/Texturing3D/TextureCoordinate4D.js +5 -26
  315. package/src/x_ite/Components/Texturing3D/X3DTexture3DNode.js +12 -19
  316. package/src/x_ite/Components/VolumeRendering/X3DVolumeDataNode.js +7 -7
  317. package/src/x_ite/Components.js +2 -2
  318. package/src/x_ite/Fallback.js +9 -3
  319. package/src/x_ite/Fields/SFColor.js +4 -0
  320. package/src/x_ite/Fields/SFColorRGBA.js +4 -0
  321. package/src/x_ite/Fields/SFMatrixPrototypeTemplate.js +4 -0
  322. package/src/x_ite/Fields/SFRotation.js +4 -0
  323. package/src/x_ite/Fields/SFString.js +4 -0
  324. package/src/x_ite/Fields/SFVecPrototypeTemplate.js +4 -0
  325. package/src/x_ite/Parser/XMLParser.js +1 -1
  326. package/src/x_ite/Rendering/TextureBuffer.js +43 -36
  327. package/src/x_ite/Rendering/VertexArray.js +101 -0
  328. package/src/x_ite/Rendering/X3DRenderObject.js +123 -144
  329. package/src/x_ite/X3D.js +32 -26
  330. package/src/x_ite.config.js +0 -5
  331. package/src/x_ite.css +200 -162
  332. package/src/x_ite.html +26 -10
  333. package/src/x_ite.js +42 -0
  334. package/x_ite.min.html +26 -10
  335. package/dist/assets/hatching/0.png +0 -0
  336. package/dist/assets/linetype/0.png +0 -0
  337. package/src/assets/hatching/0.png +0 -0
  338. package/src/assets/linetype/0.png +0 -0
  339. package/src/spinner.css +0 -67
  340. package/src/x_ite/Browser/Shape/LineStipples.xcf +0 -0
package/src/x_ite.css CHANGED
@@ -1,14 +1,15 @@
1
1
  /* X_ITE CSS StyleSheet */
2
2
 
3
+ /* Do not include this file directly! This is not needed anymore. */
4
+
3
5
  @charset "utf-8";
4
6
 
5
- @import url(https://fonts.googleapis.com/css?family=PT+Sans:400,400italic,700,700italic);
6
- @import url(spinner.css);
7
+ @import url("https://fonts.googleapis.com/css?family=PT+Sans:400,400italic,700,700italic");
7
8
 
9
+ :host,
8
10
  X3DCanvas {
9
- overflow: hidden;
10
- position: relative;
11
11
  display: inline-block;
12
+ overflow: hidden;
12
13
  outline: none;
13
14
  margin: 0;
14
15
  padding: 0;
@@ -16,43 +17,47 @@ X3DCanvas {
16
17
  border-radius: 0;
17
18
  width: 300px;
18
19
  height: 150px;
20
+ user-select: none;
21
+ -webkit-user-select: none;
19
22
  }
20
23
 
21
- X3DCanvas.x_ite-fullscreen {
24
+ :host([hidden]) {
25
+ display: none;
26
+ }
27
+
28
+ :host(.x_ite-fullscreen) {
22
29
  width: 100vw !important;
23
30
  height: 100vh !important;
24
31
  }
25
32
 
26
- X3DCanvas > *:not(.x_ite-fallback) {
33
+ X3DCanvas > :not(.x_ite-private-browser, .x_ite-private-menu) {
27
34
  display: none;
28
35
  }
29
36
 
30
- .x_ite-console {
31
- font-family: monospace;
32
- white-space: pre;
33
- }
34
-
35
- X3DCanvas .x_ite-private-browser {
36
- z-index: 0;
37
+ .x_ite-private-browser {
38
+ overflow: hidden;
37
39
  display: block;
38
- position: absolute;
39
- inset: 0;
40
+ position: relative;
40
41
  margin: 0;
41
42
  padding: 0;
42
43
  border: 0;
43
44
  border-radius: 0;
45
+ width: 100%;
46
+ height: 100%;
47
+ user-select: none;
48
+ -webkit-user-select: none;
44
49
  }
45
50
 
46
- X3DCanvas .x_ite-private-surface {
51
+ .x_ite-private-surface {
52
+ position: absolute;
47
53
  margin: 0;
48
54
  padding: 0;
49
55
  border: 0;
50
56
  border-radius: 0;
51
- height: 100%;
52
- margin-right: 0;
57
+ inset: 0;
53
58
  }
54
59
 
55
- X3DCanvas canvas.x_ite-private-canvas {
60
+ .x_ite-private-canvas {
56
61
  display: block;
57
62
  outline: none;
58
63
  margin: 0;
@@ -63,12 +68,11 @@ X3DCanvas canvas.x_ite-private-canvas {
63
68
  height: 100%;
64
69
  }
65
70
 
66
- X3DCanvas .x_ite-private-notification {
67
- display: none;
68
- padding: 5px;
71
+ .x_ite-private-notification {
69
72
  position: absolute;
70
73
  top: 20px;
71
74
  right: -4px;
75
+ padding: 5px;
72
76
  -webkit-backdrop-filter: blur(8px);
73
77
  backdrop-filter: blur(8px);
74
78
  background: rgba(0,0,0,0.61803);
@@ -88,13 +92,12 @@ X3DCanvas .x_ite-private-notification {
88
92
  pointer-events: none;
89
93
  }
90
94
 
91
- X3DCanvas .x_ite-private-notification span {
95
+ .x_ite-private-notification span {
92
96
  padding: 0 24px 0 20px;
93
- background: url(assets/images/icon.bw.png) no-repeat 0 2px;
97
+ background: url("assets/images/icon.bw.png") no-repeat 0 2px;
94
98
  }
95
99
 
96
- X3DCanvas .x_ite-private-browser-timings {
97
- display: none;
100
+ .x_ite-private-browser-timings {
98
101
  position: absolute;
99
102
  bottom: -4px;
100
103
  left: -4px;
@@ -117,13 +120,13 @@ X3DCanvas .x_ite-private-browser-timings {
117
120
  pointer-events: none;
118
121
  }
119
122
 
120
- X3DCanvas .x_ite-private-browser-timings table,
121
- X3DCanvas .x_ite-private-browser-timings thead,
122
- X3DCanvas .x_ite-private-browser-timings tbody,
123
- X3DCanvas .x_ite-private-browser-timings tfoot,
124
- X3DCanvas .x_ite-private-browser-timings tr,
125
- X3DCanvas .x_ite-private-browser-timings th,
126
- X3DCanvas .x_ite-private-browser-timings td {
123
+ .x_ite-private-browser-timings table,
124
+ .x_ite-private-browser-timings thead,
125
+ .x_ite-private-browser-timings tbody,
126
+ .x_ite-private-browser-timings tfoot,
127
+ .x_ite-private-browser-timings tr,
128
+ .x_ite-private-browser-timings th,
129
+ .x_ite-private-browser-timings td {
127
130
  box-sizing: border-box;
128
131
  outline: 0;
129
132
  margin: 0;
@@ -140,9 +143,9 @@ X3DCanvas .x_ite-private-browser-timings td {
140
143
  text-align: left;
141
144
  }
142
145
 
143
- X3DCanvas .x_ite-private-browser-timings table {
146
+ .x_ite-private-browser-timings table {
144
147
  overflow: hidden;
145
- background: url(assets/images/Time.png) no-repeat;
148
+ background: url("assets/images/Time.png") no-repeat;
146
149
  width: 100%;
147
150
  max-width: 100%;
148
151
  border-collapse: separate;
@@ -150,33 +153,33 @@ X3DCanvas .x_ite-private-browser-timings table {
150
153
  empty-cells: show;
151
154
  }
152
155
 
153
- X3DCanvas .x_ite-private-browser-timings thead th {
156
+ .x_ite-private-browser-timings thead th {
154
157
  padding-left: 20px;
155
158
  padding-bottom: 5px;
156
159
  font-weight: bold;
157
160
  }
158
161
 
159
- X3DCanvas .x_ite-private-browser-timings td:first-child {
162
+ .x_ite-private-browser-timings td:first-child {
160
163
  padding-right: 10px;
161
164
  }
162
165
 
163
- X3DCanvas .x_ite-private-browser-timings tr.x_ite-private-more td {
166
+ .x_ite-private-browser-timings tr.x_ite-private-more td {
164
167
  padding-bottom: 5px;
165
168
  }
166
169
 
167
- X3DCanvas .x_ite-private-browser-timings td {
170
+ .x_ite-private-browser-timings td {
168
171
  padding-bottom: 2px;
169
172
  }
170
173
 
171
- X3DCanvas .x_ite-private-browser-timings tfoot td:first-child {
174
+ .x_ite-private-browser-timings tfoot td:first-child {
172
175
  padding-right: 0;
173
176
  }
174
177
 
175
- X3DCanvas .x_ite-private-browser-timings tfoot td {
178
+ .x_ite-private-browser-timings tfoot td {
176
179
  padding-top: 4px;
177
180
  }
178
181
 
179
- X3DCanvas .x_ite-private-browser-timings button {
182
+ .x_ite-private-browser-timings button {
180
183
  box-sizing: border-box;
181
184
  border: 0;
182
185
  border-radius: 10px;
@@ -194,28 +197,34 @@ X3DCanvas .x_ite-private-browser-timings button {
194
197
  cursor: pointer;
195
198
  }
196
199
 
197
- X3DCanvas .x_ite-private-world-info-overlay {
200
+ .x_ite-private-world-info-overlay {
198
201
  position: absolute;
199
202
  inset: 0;
200
203
  }
201
204
 
202
- X3DCanvas .x_ite-private-world-info {
205
+ .x_ite-private-world-info {
203
206
  overflow-y: auto;
204
207
  position: absolute;
205
208
  inset: 0;
206
209
  -webkit-backdrop-filter: blur(8px);
207
210
  backdrop-filter: blur(8px);
208
211
  background: rgba(0,0,0,0.61803);
209
- margin: 21pt;
212
+ background: -moz-linear-gradient(top, rgba(50,50,50,0.61803) 0%, rgba(0,0,0,0.61803) 100%); /* FF3.6-15 */
213
+ background: -webkit-linear-gradient(top, rgba(50,50,50,0.61803) 0%,rgba(0,0,0,0.61803) 100%); /* Chrome10-25,Safari5.1-6 */
214
+ background: linear-gradient(to bottom, rgba(50,50,50,0.61803) 0%,rgba(0,0,0,0.61803) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
210
215
  border: 4px solid rgba(60,60,60,0.61803);
216
+ border-radius: 5px;
217
+ -webkit-background-clip: padding-box; /* for Safari */
218
+ background-clip: padding-box; /* for IE9+, Firefox 4+, Opera, Chrome */
219
+ margin: 21pt;
211
220
  border-radius: 15px;
212
221
  padding: 21pt;
213
222
  }
214
223
 
215
- X3DCanvas .x_ite-private-world-info .x_ite-private-world-info-top,
216
- X3DCanvas .x_ite-private-world-info .x_ite-private-world-info-title,
217
- X3DCanvas .x_ite-private-world-info .x_ite-private-world-info-info,
218
- X3DCanvas .x_ite-private-world-info p {
224
+ .x_ite-private-world-info .x_ite-private-world-info-top,
225
+ .x_ite-private-world-info .x_ite-private-world-info-title,
226
+ .x_ite-private-world-info .x_ite-private-world-info-info,
227
+ .x_ite-private-world-info p {
219
228
  box-sizing: border-box;
220
229
  outline: 0;
221
230
  margin: 0;
@@ -233,151 +242,114 @@ X3DCanvas .x_ite-private-world-info p {
233
242
  text-align: left;
234
243
  }
235
244
 
236
- X3DCanvas .x_ite-private-world-info .x_ite-private-world-info-top {
245
+ .x_ite-private-world-info .x_ite-private-world-info-top {
237
246
  font-weight: bold;
238
247
  font-style: italic;
239
248
  font-size: 9pt;
240
249
  }
241
250
 
242
- X3DCanvas .x_ite-private-world-info .x_ite-private-world-info-title {
251
+ .x_ite-private-world-info .x_ite-private-world-info-title {
243
252
  margin: 0.3em 0 1em 0;
244
253
  font-weight: bold;
245
254
  font-size: 21pt;
246
255
  }
247
256
 
248
- X3DCanvas .x_ite-private-world-info .x_ite-private-world-info-info,
249
- X3DCanvas .x_ite-private-world-info .x_ite-private-world-info-info p {
257
+ .x_ite-private-world-info .x_ite-private-world-info-info,
258
+ .x_ite-private-world-info .x_ite-private-world-info-info p {
250
259
  margin: 1em 0 1em 0;
251
260
  font-size: 14pt;
252
261
  }
253
262
 
254
- X3DCanvas .x_ite-private-world-info a {
263
+ .x_ite-private-world-info a {
255
264
  text-decoration: underline;
256
265
  color: #fd9f2e;
257
266
  }
258
267
 
259
- /*!
260
- * jQuery contextMenu - Plugin for simple contextMenu handling
261
- *
262
- * Version: v1.8.1
263
- *
264
- * Authors: Björn Brala (SWIS.nl), Rodney Rehm, Addy Osmani (patches for FF)
265
- * Web: http://swisnl.github.io/jQuery-contextMenu/
266
- *
267
- * Copyright (c) 2011-2015 SWIS BV and contributors
268
- *
269
- * Licensed under
270
- * MIT License http://www.opensource.org/licenses/mit-license
271
-
272
- * Date: 2015-09-20T18:47:54.927Z
273
- */
268
+ /* Context Menu */
274
269
 
275
- /* fullscreen support */
276
- X3DCanvas #context-menu-layer {
277
- z-index: 0 !important;
270
+ .x_ite-private-menu.context-menu-layer {
271
+ position: fixed;
272
+ z-index: 10000;
273
+ inset: 0;
278
274
  }
279
275
 
280
- /* menu title */
281
- .x_ite-private-menu.x_ite-private-menu-title:before {
282
- content: "X_ITE Browser";
283
- display: block;
284
- padding: 4px 32px 4px 8px;
285
- font-weight: bold;
276
+ .x_ite-private-menu.context-menu-list {
277
+ isolation: isolate;
286
278
  }
287
279
 
288
- .x_ite-private-menu .context-menu-selected {
289
- font-weight: bold;
290
- font-style: italic;
280
+ .x_ite-private-menu .context-menu-list {
281
+ position: absolute;
291
282
  }
292
283
 
293
284
  .x_ite-private-menu.context-menu-list,
294
285
  .x_ite-private-menu .context-menu-list {
295
- position: absolute;
296
- display: inline-block;
286
+ display: block;
287
+ box-sizing: border-box;
297
288
  min-width: 120px;
298
- padding: 0;
299
289
  margin: 0;
300
290
  margin-left: 1px;
301
- white-space: pre;
291
+ padding: 5px 10px 9px 9px;
292
+ -webkit-backdrop-filter: blur(8px);
293
+ backdrop-filter: blur(8px);
294
+ background: rgba(0,0,0,0.61803);
295
+ background: -moz-linear-gradient(top, rgba(50,50,50,0.61803) 0%, rgba(0,0,0,0.61803) 100%); /* FF3.6-15 */
296
+ background: -webkit-linear-gradient(top, rgba(50,50,50,0.61803) 0%,rgba(0,0,0,0.61803) 100%); /* Chrome10-25,Safari5.1-6 */
297
+ background: linear-gradient(to bottom, rgba(50,50,50,0.61803) 0%,rgba(0,0,0,0.61803) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
298
+ border: 4px solid rgba(60,60,60,0.61803);
299
+ border-radius: 5px;
300
+ -webkit-background-clip: padding-box; /* for Safari */
301
+ background-clip: padding-box; /* for IE9+, Firefox 4+, Opera, Chrome */
302
+ color: white;
302
303
  font-family: PT Sans, sans-serif;
303
304
  font-size: 10pt;
305
+ white-space: pre;
304
306
  line-height: 1.2;
305
307
  list-style-type: none;
306
- background: #222;
307
- color: #eee;
308
- border: 0 solid #ddd;
309
- -webkit-box-shadow: 0 2px 5px rgba(0, 0, 0, .5);
310
- box-shadow: 0 2px 5px rgba(0, 0, 0, .5);
311
308
  }
312
309
 
313
310
  .x_ite-private-menu .context-menu-item {
311
+ cursor: pointer;
314
312
  position: relative;
315
- background-color: #222;
313
+ border-radius: 5px;
316
314
  margin: 0;
317
- border-top: 1px solid #222;
318
- border-bottom: 1px solid #222;
319
- padding: 3px 24px 3px 24px;
320
- -webkit-user-select: none;
321
- -moz-user-select: none;
322
- -ms-user-select: none;
323
- user-select: none;
315
+ padding: 5px 24px;
324
316
  font-size: 10pt;
325
317
  line-height: 1;
326
318
  letter-spacing: unset;
319
+ text-align: left;
327
320
  }
328
321
 
329
- .x_ite-private-menu .context-menu-item > label > input,
330
- .x_ite-private-menu .context-menu-item > label > textarea {
331
- all: revert;
332
- -webkit-user-select: text;
333
- -moz-user-select: text;
334
- -ms-user-select: text;
335
- user-select: text;
336
- }
337
-
338
- .x_ite-private-menu .context-menu-input > label > input[type="checkbox"] {
339
- -webkit-appearance: checkbox;
340
- -moz-appearance: checkbox;
322
+ .x_ite-private-menu .context-menu-item:hover:not(.context-menu-not-selectable) {
323
+ background-color: rgba(255, 69, 58, 0.8);
341
324
  }
342
325
 
343
- .x_ite-private-menu .context-menu-input > label > input[type="radio"] {
344
- -webkit-appearance: radio;
345
- -moz-appearance: radio;
326
+ .x_ite-private-menu .context-menu-item:hover > .context-menu-list {
327
+ display: block;
346
328
  }
347
329
 
348
- .x_ite-private-menu .context-menu-item:hover {
349
- cursor: pointer;
350
- background-color: #444;
351
- border-top: 1px solid #eee;
352
- border-bottom: 1px solid #eee;
330
+ .x_ite-private-menu .context-menu-not-selectable {
331
+ cursor: default;
353
332
  }
354
333
 
355
- .x_ite-private-menu .context-menu-item.context-menu-separator {
334
+ .x_ite-private-menu .context-menu-separator {
335
+ cursor: default;
336
+ margin: 2px 0;
356
337
  padding-top: 0;
357
338
  padding-bottom: 0;
358
339
  border-top: 0;
359
- border-bottom: 1px solid #111;
340
+ border-bottom: 1px solid rgb(138, 138, 138);
360
341
  }
361
342
 
362
343
  .x_ite-private-menu .context-menu-separator + .context-menu-separator {
363
344
  display: none !important;
364
345
  }
365
346
 
366
- .x_ite-private-menu .context-menu-disabled {
367
- color: #666;
368
- }
369
-
370
- .x_ite-private-menu .context-menu-input.context-menu-hover,
371
- .x_ite-private-menu .context-menu-disabled.context-menu-hover {
372
- cursor: default;
373
- }
374
-
375
347
  .x_ite-private-menu .context-menu-submenu:after {
376
348
  content: "";
377
349
  position: absolute;
378
350
  display: block;
379
351
  right: 0;
380
- top: 5px;
352
+ top: 8px;
381
353
  margin-right: 2px;
382
354
  /* CSS triangle */
383
355
  width: 0;
@@ -394,9 +366,16 @@ X3DCanvas #context-menu-layer {
394
366
  .context-menu-item.icon:before {}
395
367
  */
396
368
 
397
- .x_ite-private-menu .context-menu-item.context-menu-icon {
398
- background-repeat: no-repeat;
399
- background-position: 3px 2px;
369
+ .x_ite-private-menu .context-menu-input > label {
370
+ cursor: pointer;
371
+ display: block;
372
+ box-sizing: border-box;
373
+ margin: 0;
374
+ padding: 0;
375
+ width: 100%;
376
+ font-size: 10pt;
377
+ letter-spacing: unset;
378
+ line-height: 1;
400
379
  }
401
380
 
402
381
  /* vertically align inside labels */
@@ -408,36 +387,24 @@ X3DCanvas #context-menu-layer {
408
387
  line-height: 1;
409
388
  }
410
389
 
390
+ .x_ite-private-menu .context-menu-item > label > input {
391
+ all: revert;
392
+ cursor: pointer;
393
+ }
394
+
411
395
  /* position checkboxes and radios like icons */
412
396
  .x_ite-private-menu .context-menu-input > label > input[type="checkbox"],
413
397
  .x_ite-private-menu .context-menu-input > label > input[type="radio"] {
398
+ accent-color: rgb(255, 69, 58);
414
399
  display: inline;
400
+ width: 12px;
415
401
  margin: 0;
416
402
  margin-left: -20px;
417
- margin-right: 3px;
418
403
  padding: 0;
419
404
  }
420
405
 
421
406
  .x_ite-private-menu .context-menu-input > label > span {
422
- margin-left: 2px;
423
- }
424
-
425
- .x_ite-private-menu .context-menu-input > label,
426
- .x_ite-private-menu .context-menu-input > label > input[type="text"],
427
- .x_ite-private-menu .context-menu-input > label > textarea,
428
- .x_ite-private-menu .context-menu-input > label > select {
429
- display: block;
430
- box-sizing: border-box;
431
- margin: 0;
432
- padding: 0;
433
- width: 100%;
434
- font-size: 10pt;
435
- letter-spacing: unset;
436
- line-height: 1;
437
- }
438
-
439
- .x_ite-private-menu .context-menu-input > label > textarea {
440
- height: 100px;
407
+ padding-left: 8px;
441
408
  }
442
409
 
443
410
  .x_ite-private-menu .context-menu-item > .context-menu-list {
@@ -447,21 +414,25 @@ X3DCanvas #context-menu-layer {
447
414
  display: none;
448
415
  }
449
416
 
450
- /* display submenus on left side if there is no space on right side */
451
- .x_ite-private-menu.x_ite-private-menu-submenus-left .context-menu-item > .context-menu-list {
452
- left: unset !important;
453
- }
417
+ /* Item styles */
454
418
 
455
- .x_ite-private-menu .context-menu-item:hover > .context-menu-list {
456
- display: block;
419
+ .x_ite-private-menu .context-menu-title {
420
+ font-weight: bold;
421
+ padding: 4px 32px 4px 8px;
457
422
  }
458
423
 
459
- .x_ite-private-menu .context-menu-accesskey {
460
- text-decoration: underline;
424
+ .x_ite-private-menu .context-menu-selected {
425
+ font-weight: bold;
426
+ font-style: italic;
461
427
  }
462
428
 
463
429
  /* Icons */
464
430
 
431
+ .x_ite-private-menu .context-menu-icon {
432
+ background-repeat: no-repeat;
433
+ background-position: 2px 3px;
434
+ }
435
+
465
436
  .x_ite-private-icon-viewpoint {
466
437
  background: url("assets/images/Viewpoint.png");
467
438
  }
@@ -506,7 +477,7 @@ X3DCanvas #context-menu-layer {
506
477
  background: url("assets/images/TextureQuality.png");
507
478
  }
508
479
 
509
- .x_ite-private-icon-fullscreen {
480
+ .x_ite-private-icon-enter-fullscreen {
510
481
  background: url("assets/images/gtk-fullscreen.png");
511
482
  }
512
483
 
@@ -521,3 +492,70 @@ X3DCanvas #context-menu-layer {
521
492
  .x_ite-private-icon-help-about {
522
493
  background: url("assets/images/help-about.png");
523
494
  }
495
+
496
+ /* Spinner */
497
+
498
+ .x_ite-private-splash-screen {
499
+ position: absolute;
500
+ inset: 0;
501
+ background: #1b1d21;
502
+ background: -moz-radial-gradient(center, ellipse cover, #2f3135 0%, #1b1d21 100%);
503
+ background: -webkit-radial-gradient(center, ellipse cover, #2f3135 0%,#1b1d21 100%);
504
+ background: radial-gradient(ellipse at center, #2f3135 0%,#1b1d21 100%);
505
+ }
506
+
507
+ .x_ite-private-spinner {
508
+ position: absolute;
509
+ top: calc(50% - (138px / 2));
510
+ left: calc(50% - (134px / 2));
511
+ width: 138px;
512
+ height: 134px;
513
+ background: url("assets/images/logo.128.png") no-repeat;
514
+ -webkit-animation: spinner-animation-spin 32s linear infinite;
515
+ -moz-animation: spinner-animation-spin 32s linear infinite;
516
+ animation: spinner-animation-spin 32s linear infinite;
517
+ }
518
+ @-moz-keyframes spinner-animation-spin { 100% { -moz-transform: rotate(360deg); } }
519
+ @-webkit-keyframes spinner-animation-spin { 100% { -webkit-transform: rotate(360deg); } }
520
+ @keyframes spinner-animation-spin { 100% { -webkit-transform: rotate(360deg); transform: rotate(360deg); } }
521
+
522
+ .x_ite-private-progress {
523
+ position: absolute;
524
+ top: calc(50% - 28pt - 11pt);
525
+ left: calc(50% - 100px);
526
+ width: 200px;
527
+ }
528
+
529
+ .x_ite-private-x_ite {
530
+ color: white;
531
+ font-size: 28pt;
532
+ text-align: center;
533
+ text-shadow: 1px 1px 0 black;
534
+ font-family: PT Sans, sans-serif;
535
+ }
536
+
537
+ .x_ite-private-x_ite span.x_ite-private-x3d {
538
+ font-weight: bold;
539
+ }
540
+
541
+ .x_ite-private-spinner-text {
542
+ color: white;
543
+ font-size: 11pt;
544
+ text-align: center;
545
+ text-shadow: 1px 1px 0 black;
546
+ font-family: PT Sans, sans-serif;
547
+ }
548
+
549
+ .x_ite-private-progressbar {
550
+ margin: 8px;
551
+ border-left: 2px solid rgba(255, 255, 255, 0.5);
552
+ border-right: 2px solid rgba(255, 255, 255, 0.5);
553
+ padding: 0 2px;
554
+ text-align: left;
555
+ }
556
+
557
+ .x_ite-private-progressbar div {
558
+ width: 0%;
559
+ height: 6px;
560
+ background: rgba(255, 255, 255, 0.5);
561
+ }
package/src/x_ite.html CHANGED
@@ -14,14 +14,13 @@
14
14
  <script type="text/javascript" src="tests.js"></script>
15
15
 
16
16
  <!-- X_ITE START -->
17
- <link rel="stylesheet" type="text/css" href="x_ite.css"/>
18
17
  <script type="text/javascript" src="../node_modules/requirejs/require.js"></script>
19
18
  <script type="text/javascript" src="x_ite.config.js"></script>
20
19
  <script type="text/javascript" src="x_ite.js"></script>
21
20
  <!-- X_ITE END -->
22
21
 
23
22
  <style>
24
- @import url(https://fonts.googleapis.com/css?family=PT+Sans:400,400italic,700,700italic);
23
+ @import url("https://fonts.googleapis.com/css?family=PT+Sans:400,400italic,700,700italic");
25
24
 
26
25
  html, body {
27
26
  margin: 0px;
@@ -94,12 +93,11 @@ main.color-management .browser {
94
93
  }
95
94
 
96
95
  .browser:focus {
97
- outline: 2px solid black;
96
+ box-shadow: 0px 2px 6px 3px black;
98
97
  }
99
98
 
100
99
  .fallback {
101
- display: block;
102
- margin: 300px 30px 0 30px;
100
+ padding: 300px 30px 0 30px;
103
101
  text-align: center;
104
102
  }
105
103
 
@@ -245,6 +243,11 @@ main.color-management .browser {
245
243
  display: none;
246
244
  }
247
245
 
246
+ .x_ite-console {
247
+ font-family: monospace;
248
+ white-space: pre;
249
+ }
250
+
248
251
  </style>
249
252
 
250
253
  <script type="text/javascript">
@@ -295,10 +298,10 @@ X3D (function ()
295
298
  const bookmarks = new Bookmarks (Browser, $(".examples-box"));
296
299
 
297
300
  bookmarks .setup ([X_ITE_EXAMPLES, X_ITE_TESTS]);
298
- bookmarks .restore ("https://rawgit.com/create3000/Library/main/Tests/Components/Layout/info.x3d");
301
+ bookmarks .restore ("https://create3000.github.io/media/x_ite/info/info.x3d");
299
302
 
300
303
  $(".version") .text (Browser .name + " v" + Browser .version);
301
- $(".file") .append ($("<a/>") .attr ('href', "tests/d3/ParticlePlot.html") .text ("d3"));
304
+ $(".file") .append ($("<a></a>") .attr ('href', "tests/d3/ParticlePlot.html") .text ("d3"));
302
305
  $(".location-entry") .val (localStorage ["Bookmarks.history"] [index])
303
306
  $(".location-go") .click (loadURL);
304
307
  $(".print-vrml") .click (toVRMLString);
@@ -321,6 +324,19 @@ X3D (function ()
321
324
  return
322
325
  }
323
326
  });
327
+
328
+ Browser .getContextMenu () .setUserMenu (function ()
329
+ {
330
+ return {
331
+ "item-1": {
332
+ name: "Item 1",
333
+ callback: function (event)
334
+ {
335
+ console .log ("Item 1");
336
+ },
337
+ },
338
+ };
339
+ });
324
340
  },
325
341
  function (error)
326
342
  {
@@ -339,7 +355,7 @@ function (error)
339
355
  <main>
340
356
  <div>
341
357
  <form action="javascript:alert('form submited')">
342
- <X3DCanvas id="browser" class="browser" splashScreen="true" contextMenu="true" cache="false" debug="true" preserveDrawingBuffer="false">
358
+ <x3d-canvas id="browser" class="browser" splashScreen="true" contextMenu="true" cache="false" debug="true" preserveDrawingBuffer="false">
343
359
  <p class="fallback">
344
360
  Sorry,<br/>
345
361
  it wasn't me!<br/>
@@ -348,14 +364,14 @@ function (error)
348
364
  or Microsoft Edge, because this is currently the choice of the choice. We will continuously
349
365
  keep you informed on technical developments and as soon as X_ITE is running in other browser too.
350
366
  </p>
351
- </X3DCanvas>
367
+ </x3d-canvas>
352
368
  </form>
353
369
  <div class="location-bar">
354
370
  <input class="location-entry" value="http://www.web3d.org/x3d/content/examples/Basic/ChemicalMarkupLanguage/ButanedioicAcid.x3d"/>
355
371
  <button class="location-go" type="button">Load URL</button>
356
372
  </div>
357
373
  <div class="buttons">
358
- <a class="print-xml" href="#">XML</a><a class="print-vrml" href="#">VRML</a><a class="print-json" href="#">JSON</a>
374
+ <a class="print-xml" href="#">XML</a><a class="print-vrml" href="#">VRML</a><a class="print-json" href="#">JSON</a><a href="../dist/example.html">Example Page</a>
359
375
  </div>
360
376
  <div class="links">
361
377
  <a href="../x_ite.min.html">x_ite.min.html</a><a href="http://rawgit.com/create3000/x_ite/main/x_ite.min.html">github</a>