x_ite 8.3.1 → 8.3.3
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.
- package/.github/workflows/pages-deploy.yml +1 -1
- package/.vscode/settings.json +2 -1
- package/build/bin/tests.pl +2 -0
- package/dist/LICENSE.md +4 -4
- package/dist/assets/components/Annotation.js +13 -13
- package/dist/assets/components/Annotation.min.js +1 -1
- package/dist/assets/components/CADGeometry.js +13 -13
- package/dist/assets/components/CADGeometry.min.js +1 -1
- package/dist/assets/components/CubeMapTexturing.js +25 -25
- package/dist/assets/components/CubeMapTexturing.min.js +1 -1
- package/dist/assets/components/DIS.js +13 -13
- package/dist/assets/components/DIS.min.js +1 -1
- package/dist/assets/components/EventUtilities.js +9 -9
- package/dist/assets/components/EventUtilities.min.js +1 -1
- package/dist/assets/components/Geometry2D.js +19 -19
- package/dist/assets/components/Geometry2D.min.js +1 -1
- package/dist/assets/components/Geospatial.js +33 -33
- package/dist/assets/components/Geospatial.min.js +1 -1
- package/dist/assets/components/HAnim.js +61 -74
- package/dist/assets/components/HAnim.min.js +1 -1
- package/dist/assets/components/KeyDeviceSensor.js +8 -8
- package/dist/assets/components/KeyDeviceSensor.min.js +1 -1
- package/dist/assets/components/Layout.js +27 -27
- package/dist/assets/components/Layout.min.js +1 -1
- package/dist/assets/components/NURBS.js +24 -24
- package/dist/assets/components/NURBS.min.js +1 -1
- package/dist/assets/components/ParticleSystems.js +23 -23
- package/dist/assets/components/ParticleSystems.min.js +1 -1
- package/dist/assets/components/Picking.js +19 -19
- package/dist/assets/components/Picking.min.js +1 -1
- package/dist/assets/components/RigidBodyPhysics.js +17 -17
- package/dist/assets/components/RigidBodyPhysics.min.js +1 -1
- package/dist/assets/components/Scripting.js +28 -28
- package/dist/assets/components/Scripting.min.js +1 -1
- package/dist/assets/components/Text.js +24 -24
- package/dist/assets/components/Text.min.js +1 -1
- package/dist/assets/components/{ProjectiveTextureMapping.js → TextureProjector.js} +39 -39
- package/dist/assets/components/TextureProjector.min.js +1 -0
- package/dist/assets/components/Texturing3D.js +46 -46
- package/dist/assets/components/Texturing3D.min.js +1 -1
- package/dist/assets/components/VolumeRendering.js +19 -19
- package/dist/assets/components/VolumeRendering.min.js +1 -1
- package/dist/assets/components/X_ITE.js +9 -9
- package/dist/assets/components/X_ITE.min.js +1 -1
- package/dist/x_ite.css +1 -1
- package/dist/x_ite.js +1904 -1570
- package/dist/x_ite.min.js +1 -1
- package/dist/x_ite.zip +0 -0
- package/docs/Gemfile +1 -4
- package/docs/_config.yml +3 -2
- package/docs/_posts/custom-shaders.md +1 -1
- package/docs/_posts/dom-integration.md +52 -25
- package/docs/_posts/getting-started.md +148 -442
- package/docs/_posts/reference/field-services-and-objects.md +2 -34
- package/docs/_posts/reference/scene-services.md +13 -2
- package/docs/_posts/tutorials/basic-nodes.md +2 -2
- package/docs/_posts/tutorials/building-a-x3d-world.md +20 -4
- package/docs/_posts/tutorials/building-primitive-shapes.md +4 -4
- package/docs/_posts/tutorials/creating-new-node-types.md +22 -0
- package/docs/_posts/tutorials/hello-world.md +6 -6
- package/docs/_posts/tutorials/improving-performance.md +2 -2
- package/docs/_posts/tutorials/writing-program-scripts-with-ecmascript.md +2 -2
- package/docs/_posts/what's-new.md +21 -3
- package/docs/_tabs/playground.html +110 -57
- package/docs/assets/css/style.scss +25 -1
- package/package.json +2 -2
- package/src/assets/components/{ProjectiveTextureMapping.js → TextureProjector.js} +5 -5
- package/src/examples.js +1 -1
- package/src/tests.js +5 -5
- package/src/x_ite/Base/X3DArrayField.js +3 -0
- package/src/x_ite/Base/X3DBaseNode.js +4 -0
- package/src/x_ite/Base/X3DInfoArray.js +28 -24
- package/src/x_ite/Base/X3DObject.js +29 -20
- package/src/x_ite/Base/X3DObjectArrayField.js +27 -26
- package/src/x_ite/Base/X3DTypedArrayField.js +34 -32
- package/src/x_ite/Browser/Core/ContextMenu.js +5 -7
- package/src/x_ite/Browser/DOMIntegration.js +62 -54
- package/src/x_ite/Browser/VERSION.js +1 -1
- package/src/x_ite/Browser/X3DBrowser.js +44 -29
- package/src/x_ite/Browser/X3DBrowserContext.js +3 -0
- package/src/x_ite/Components/Core/X3DNode.js +196 -187
- package/src/x_ite/Components/Core/X3DPrototypeInstance.js +114 -91
- package/src/x_ite/Components/Grouping/X3DTransformMatrix3DNode.js +18 -43
- package/src/x_ite/Components/HAnim/HAnimHumanoid.js +24 -25
- package/src/x_ite/Components/HAnim/HAnimJoint.js +19 -31
- package/src/x_ite/Components/Networking/Inline.js +21 -2
- package/src/x_ite/Components/Sound/X3DSoundProcessingNode.js +14 -1
- package/src/x_ite/Components/Sound/X3DSoundSourceNode.js +0 -1
- package/src/x_ite/Components/{ProjectiveTextureMapping → TextureProjector}/TextureProjector.js +1 -1
- package/src/x_ite/Components/{ProjectiveTextureMapping → TextureProjector}/TextureProjectorParallel.js +1 -1
- package/src/x_ite/Components/{ProjectiveTextureMapping → TextureProjector}/X3DTextureProjectorNode.js +0 -0
- package/src/x_ite/Components/Time/TimeSensor.js +5 -0
- package/src/x_ite/Components/Time/X3DTimeDependentNode.js +1 -0
- package/src/x_ite/Configuration/ComponentInfo.js +20 -23
- package/src/x_ite/Configuration/ProfileInfo.js +6 -6
- package/src/x_ite/Configuration/SupportedComponents.js +22 -20
- package/src/x_ite/Configuration/SupportedNodes.js +1 -5
- package/src/x_ite/Configuration/SupportedProfiles.js +1 -1
- package/src/x_ite/Configuration/UnitInfo.js +24 -27
- package/src/x_ite/Execution/X3DExecutionContext.js +28 -59
- package/src/x_ite/Execution/X3DExportedNode.js +23 -28
- package/src/x_ite/Execution/X3DImportedNode.js +63 -67
- package/src/x_ite/Execution/X3DScene.js +98 -117
- package/src/x_ite/Fields/ArrayFields.js +57 -55
- package/src/x_ite/Fields/SFBool.js +6 -6
- package/src/x_ite/Fields/SFColor.js +10 -12
- package/src/x_ite/Fields/SFDouble.js +7 -10
- package/src/x_ite/Fields/SFFloat.js +7 -10
- package/src/x_ite/Fields/SFImage.js +33 -8
- package/src/x_ite/Fields/SFInt32.js +6 -6
- package/src/x_ite/Fields/SFMatrixPrototypeTemplate.js +13 -13
- package/src/x_ite/Fields/SFNode.js +42 -19
- package/src/x_ite/Fields/SFRotation.js +13 -13
- package/src/x_ite/Fields/SFString.js +6 -7
- package/src/x_ite/Fields/SFTime.js +6 -6
- package/src/x_ite/Fields/SFVecPrototypeTemplate.js +10 -10
- package/src/x_ite/InputOutput/FileLoader.js +1 -1
- package/src/x_ite/InputOutput/Generator.js +117 -17
- package/src/x_ite/Parser/VRMLParser.js +24 -27
- package/src/x_ite/Parser/X3DParser.js +0 -4
- package/src/x_ite/Parser/XMLParser.js +152 -50
- package/src/x_ite/Prototype/X3DExternProtoDeclaration.js +59 -64
- package/src/x_ite/Prototype/X3DProtoDeclaration.js +86 -93
- package/src/x_ite/Rendering/X3DRenderObject.js +6 -1
- package/src/x_ite/Routing/X3DRoute.js +37 -40
- package/src/x_ite.html +3 -3
- package/webpack.config.js +2 -2
- package/x_ite.min.html +1 -1
- package/dist/assets/components/ProjectiveTextureMapping.min.js +0 -1
- package/docs/Gemfile.lock +0 -116
|
@@ -802,41 +802,9 @@ An integer containing the number of elements in the array. Assigning an integer
|
|
|
802
802
|
|
|
803
803
|
Returns true if the passed MF* *array* of the same type is equals to this object, otherwise false.
|
|
804
804
|
|
|
805
|
-
####
|
|
805
|
+
#### Other Array functions
|
|
806
806
|
|
|
807
|
-
|
|
808
|
-
|
|
809
|
-
#### Number **push** (*element1 [, ..., elementN]*)
|
|
810
|
-
|
|
811
|
-
The `push` method appends values to an array. The return value is the new length of the object upon which the method was called.
|
|
812
|
-
|
|
813
|
-
#### SF* **shift** ()
|
|
814
|
-
|
|
815
|
-
The `shift` method removes the first element from an array and returns that value to the caller. The return value is the removed element from the array; `undefined` if the array is empty.
|
|
816
|
-
|
|
817
|
-
#### Array **splice** (*start [, deleteCount, [item1, item2, ...]]*)
|
|
818
|
-
|
|
819
|
-
#### start
|
|
820
|
-
|
|
821
|
-
Index at which to start changing the array (with origin 0). If greater than the length of the array, actual starting index will be set to the length of the array. If negative, will begin that many elements from the end of the array (with origin 1) and will be set to 0 if absolute value is greater than the length of the array.
|
|
822
|
-
|
|
823
|
-
#### deleteCount *optional*
|
|
824
|
-
|
|
825
|
-
An integer indicating the number of old array elements to remove. If *deleteCount* is 0, no elements are removed. In this case, you should specify at least one new element. If *deleteCount* is greater than the number of elements left in the array starting at start, then all of the elements through the end of the array will be deleted.
|
|
826
|
-
|
|
827
|
-
If *deleteCount* is omitted, or if its value is larger than array.length - start, then all of the elements beginning with start index on through the end of the array will be deleted.
|
|
828
|
-
|
|
829
|
-
#### item1, item2, ... *optional*
|
|
830
|
-
|
|
831
|
-
The elements to add to the array, beginning at the start index. If you don't specify any elements, `splice` will only remove elements from the array.
|
|
832
|
-
|
|
833
|
-
#### Return value
|
|
834
|
-
|
|
835
|
-
An MF* array containing the deleted elements. If only one element is removed, an array of one element is returned. If no elements are removed, an empty array is returned.
|
|
836
|
-
|
|
837
|
-
#### Number **unshift** (*element1 [, ..., elementN]*)
|
|
838
|
-
|
|
839
|
-
The `unshift` method inserts the given values to the beginning of an X3DArrayField object. The return value is the new length of the object upon which the method was called.
|
|
807
|
+
Common Array functions like `at`, `concat`, `entries`, `every`, `fill`, `filter`, `find`, `findIndex`, `findLast`, `findLastIndex`, `flat`, `flatMap`, `forEach`, `includes`, `indexOf`, `join`, `keys`, `lastIndexOf`, `map`, `pop`, `push`, `reduce`, `reduceRight`, `shift`, `slice`, `some`, `splice`, `unshift`, `values` are also available.
|
|
840
808
|
|
|
841
809
|
## MFBool Object
|
|
842
810
|
|
|
@@ -144,14 +144,25 @@ Creates or updates the exported node *exportedName.*
|
|
|
144
144
|
|
|
145
145
|
Removes the exported node *exportedName.*
|
|
146
146
|
|
|
147
|
-
#### String **toVRMLString** ()
|
|
147
|
+
#### String **toVRMLString** (\[options\])
|
|
148
148
|
|
|
149
149
|
Returns the X3D VRML-encoded string that, if parsed as the value of createX3DFromString () of X3DBrowser, produce this scene.
|
|
150
150
|
|
|
151
|
-
|
|
151
|
+
##### Options
|
|
152
|
+
|
|
153
|
+
An object with one or more of these properties:
|
|
154
|
+
|
|
155
|
+
* **scene:** scene to use for units (default: current scene)
|
|
156
|
+
* **style:** string, output style (one of: **"TIDY"**, "COMPACT", "SMALL", "CLEAN")
|
|
157
|
+
* **precision:** integer, float precision (default: 6)
|
|
158
|
+
* **doublePrecision:** integer, double precision (default: 14)
|
|
159
|
+
|
|
160
|
+
#### String **toXMLString** (\[options\])
|
|
152
161
|
|
|
153
162
|
Returns the X3D XML-encoded string that, if parsed as the value of createX3DFromString () of X3DBrowser, produce this scene.
|
|
154
163
|
|
|
164
|
+
For options see toVRMLString.
|
|
165
|
+
|
|
155
166
|
## ProfileInfo
|
|
156
167
|
|
|
157
168
|
This object stores information about a particular X3D profile.
|
|
@@ -28,7 +28,7 @@ Here is a typical X3D Classic Encoded file with a single node:
|
|
|
28
28
|
|
|
29
29
|
```xml
|
|
30
30
|
<?xml version="1.0" encoding="UTF-8"?>
|
|
31
|
-
<X3D profile='Full' version='
|
|
31
|
+
<X3D profile='Full' version='{{ site.x3d_latest_version }}' xmlns:xsd='http://www.w3.org/2001/XMLSchema-instance' xsd:noNamespaceSchemaLocation='http://www.web3d.org/specifications/x3d-{{ site.x3d_latest_version }}.xsd'>
|
|
32
32
|
<Scene>
|
|
33
33
|
<PlaneSensor DEF='Sensor'
|
|
34
34
|
offset='0 2 0'/>
|
|
@@ -46,7 +46,7 @@ Here is a typical X3D Classic Encoded file with a single node:
|
|
|
46
46
|
### Classic Encoding
|
|
47
47
|
|
|
48
48
|
```js
|
|
49
|
-
#X3D
|
|
49
|
+
#X3D V{{ site.x3d_latest_version }} utf8
|
|
50
50
|
|
|
51
51
|
# A sample file with a simple scene
|
|
52
52
|
|
|
@@ -23,7 +23,7 @@ X3D files contain:
|
|
|
23
23
|
|
|
24
24
|
```xml
|
|
25
25
|
<?xml version="1.0" encoding="UTF-8"?>
|
|
26
|
-
<X3D profile='Full' version='
|
|
26
|
+
<X3D profile='Full' version='{{ site.x3d_latest_version }}' xmlns:xsd='http://www.w3.org/2001/XMLSchema-instance' xsd:noNamespaceSchemaLocation='http://www.web3d.org/specifications/x3d-{{ site.x3d_latest_version }}.xsd'>
|
|
27
27
|
<Scene>
|
|
28
28
|
<!-- A Cylinder -->
|
|
29
29
|
<Shape>
|
|
@@ -41,7 +41,7 @@ X3D files contain:
|
|
|
41
41
|
### Classic Encoding
|
|
42
42
|
|
|
43
43
|
```js
|
|
44
|
-
#X3D
|
|
44
|
+
#X3D V{{ site.x3d_latest_version }} utf8
|
|
45
45
|
# A Cylinder
|
|
46
46
|
Shape {
|
|
47
47
|
appearance Appearance {
|
|
@@ -64,10 +64,10 @@ Shape {
|
|
|
64
64
|
|
|
65
65
|
## Understanding the header
|
|
66
66
|
|
|
67
|
-
**\#X3D
|
|
67
|
+
**\#X3D V{{ site.x3d_latest_version }} utf8**
|
|
68
68
|
|
|
69
69
|
- **\#X3D:** File contains X3D text
|
|
70
|
-
- **
|
|
70
|
+
- **V{{ site.x3d_latest_version }} :** Text conforms to version {{ site.x3d_latest_version }} syntax
|
|
71
71
|
- **utf8 :** Text uses UTF8 character set
|
|
72
72
|
|
|
73
73
|
## Understanding UTF8
|
|
@@ -150,9 +150,25 @@ Every field has:
|
|
|
150
150
|
- Fields can be listed in any order
|
|
151
151
|
- The order doesn't affect the node
|
|
152
152
|
|
|
153
|
+
## Placing nodes
|
|
154
|
+
|
|
155
|
+
Every node has a »containerField« attribute with a default value, which is different for each node type. You can change the value if needed.
|
|
156
|
+
|
|
157
|
+
```xml
|
|
158
|
+
<Collision>
|
|
159
|
+
<Shape containerField='proxy'>
|
|
160
|
+
<Box/>
|
|
161
|
+
</Shape>
|
|
162
|
+
<Transform>
|
|
163
|
+
<!-- ... -->
|
|
164
|
+
</Transform>
|
|
165
|
+
</Collision>
|
|
166
|
+
```
|
|
167
|
+
|
|
153
168
|
## Summary
|
|
154
169
|
|
|
155
170
|
- The file header gives the version and encoding
|
|
156
171
|
- Nodes describe scene content
|
|
157
172
|
- Fields and values specify node attributes
|
|
173
|
+
- containerField attribute can be changed.
|
|
158
174
|
- Everything is case sensitive
|
|
@@ -100,7 +100,7 @@ Text { ... }
|
|
|
100
100
|
|
|
101
101
|
```xml
|
|
102
102
|
<?xml version="1.0" encoding="UTF-8"?>
|
|
103
|
-
<X3D profile='Full' version='
|
|
103
|
+
<X3D profile='Full' version='{{ site.x3d_latest_version }}' xmlns:xsd='http://www.w3.org/2001/XMLSchema-instance' xsd:noNamespaceSchemaLocation='http://www.web3d.org/specifications/x3d-{{ site.x3d_latest_version }}.xsd'>
|
|
104
104
|
<Scene>
|
|
105
105
|
<Shape>
|
|
106
106
|
<Appearance>
|
|
@@ -116,7 +116,7 @@ Text { ... }
|
|
|
116
116
|
### Classic Encoding
|
|
117
117
|
|
|
118
118
|
```js
|
|
119
|
-
#X3D
|
|
119
|
+
#X3D V{{ site.x3d_latest_version }} utf8
|
|
120
120
|
# A cylinder
|
|
121
121
|
Shape {
|
|
122
122
|
appearance Appearance {
|
|
@@ -149,7 +149,7 @@ Shape {
|
|
|
149
149
|
|
|
150
150
|
```xml
|
|
151
151
|
<?xml version="1.0" encoding="UTF-8"?>
|
|
152
|
-
<X3D profile='Full' version='
|
|
152
|
+
<X3D profile='Full' version='{{ site.x3d_latest_version }}' xmlns:xsd='http://www.w3.org/2001/XMLSchema-instance' xsd:noNamespaceSchemaLocation='http://www.web3d.org/specifications/x3d-{{ site.x3d_latest_version }}.xsd'>
|
|
153
153
|
<Scene>
|
|
154
154
|
<Shape>
|
|
155
155
|
<Appearance>
|
|
@@ -173,7 +173,7 @@ Shape {
|
|
|
173
173
|
### Classic Encoding
|
|
174
174
|
|
|
175
175
|
```js
|
|
176
|
-
#X3D
|
|
176
|
+
#X3D V{{ site.x3d_latest_version }} utf8
|
|
177
177
|
|
|
178
178
|
Shape {
|
|
179
179
|
appearance Appearance {
|
|
@@ -153,10 +153,15 @@ The new node type can be used like any other type.
|
|
|
153
153
|
### XML Encoding
|
|
154
154
|
|
|
155
155
|
```xml
|
|
156
|
+
<!-- Official Syntax -->
|
|
156
157
|
<ProtoInstance name='BouncingBall'>
|
|
157
158
|
<fieldValue name='cycleInterval' value='2'/>
|
|
158
159
|
<fieldValue name='bounceHeight' value='3'/>
|
|
159
160
|
</ProtoInstance>
|
|
161
|
+
<!-- Short Syntax -->
|
|
162
|
+
<BouncingBall
|
|
163
|
+
cycleInterval='2'
|
|
164
|
+
bounceHeight='3'/>
|
|
160
165
|
```
|
|
161
166
|
|
|
162
167
|
### Classic Encoding
|
|
@@ -184,6 +189,23 @@ For example, if the first node is a geometry node:
|
|
|
184
189
|
|
|
185
190
|
The new node type can be used wherever the first node of the prototype body can be used.
|
|
186
191
|
|
|
192
|
+
- In XML the default value of the »containerField« attribute of a ProtoInstance element is »children«. Change this attribute to whatever value you need.
|
|
193
|
+
|
|
194
|
+
### XML Encoding
|
|
195
|
+
|
|
196
|
+
```xml
|
|
197
|
+
<Shape>
|
|
198
|
+
<!-- Official Syntax -->
|
|
199
|
+
<ProtoInstance name='Torus' containerField='geometry'>
|
|
200
|
+
<!-- ... -->
|
|
201
|
+
</ProtoInstance>
|
|
202
|
+
</Shape>
|
|
203
|
+
<Shape>
|
|
204
|
+
<!-- Short Syntax -->
|
|
205
|
+
<Torus containerField='geometry' .../>
|
|
206
|
+
</Shape>
|
|
207
|
+
```
|
|
208
|
+
|
|
187
209
|
## A sample prototype use
|
|
188
210
|
|
|
189
211
|
Create a **BouncingBall** node type that:
|
|
@@ -31,7 +31,7 @@ As first a very easy example, we will create a sphere with a texture and a text
|
|
|
31
31
|
|
|
32
32
|
```xml
|
|
33
33
|
<?xml version="1.0" encoding="UTF-8"?>
|
|
34
|
-
<X3D profile='Full' version='
|
|
34
|
+
<X3D profile='Full' version='{{ site.x3d_latest_version }}' xmlns:xsd='http://www.w3.org/2001/XMLSchema-instance' xsd:noNamespaceSchemaLocation='http://www.web3d.org/specifications/x3d-{{ site.x3d_latest_version }}.xsd'>
|
|
35
35
|
<Scene>
|
|
36
36
|
<Transform>
|
|
37
37
|
<Shape>
|
|
@@ -45,7 +45,7 @@ As first a very easy example, we will create a sphere with a texture and a text
|
|
|
45
45
|
### Classic Encoding
|
|
46
46
|
|
|
47
47
|
```js
|
|
48
|
-
#X3D
|
|
48
|
+
#X3D V{{ site.x3d_latest_version }} utf8
|
|
49
49
|
|
|
50
50
|
Transform {
|
|
51
51
|
children Shape {
|
|
@@ -62,7 +62,7 @@ Now we have a sphere, but we don't see if it is rotating, let's assign a texture
|
|
|
62
62
|
|
|
63
63
|
```xml
|
|
64
64
|
<?xml version="1.0" encoding="UTF-8"?>
|
|
65
|
-
<X3D profile='Full' version='
|
|
65
|
+
<X3D profile='Full' version='{{ site.x3d_latest_version }}' xmlns:xsd='http://www.w3.org/2001/XMLSchema-instance' xsd:noNamespaceSchemaLocation='http://www.web3d.org/specifications/x3d-{{ site.x3d_latest_version }}.xsd'>
|
|
66
66
|
<Scene>
|
|
67
67
|
<Transform>
|
|
68
68
|
<Shape>
|
|
@@ -80,7 +80,7 @@ Now we have a sphere, but we don't see if it is rotating, let's assign a texture
|
|
|
80
80
|
### Classic Encoding
|
|
81
81
|
|
|
82
82
|
```js
|
|
83
|
-
#X3D
|
|
83
|
+
#X3D V{{ site.x3d_latest_version }} utf8
|
|
84
84
|
|
|
85
85
|
Transform {
|
|
86
86
|
children Shape {
|
|
@@ -119,7 +119,7 @@ Now the sphere looks like an earth and you are very curious how the text will be
|
|
|
119
119
|
|
|
120
120
|
```xml
|
|
121
121
|
<?xml version="1.0" encoding="UTF-8"?>
|
|
122
|
-
<X3D profile='Full' version='
|
|
122
|
+
<X3D profile='Full' version='{{ site.x3d_latest_version }}' xmlns:xsd='http://www.w3.org/2001/XMLSchema-instance' xsd:noNamespaceSchemaLocation='http://www.web3d.org/specifications/x3d-{{ site.x3d_latest_version }}.xsd'>
|
|
123
123
|
<Scene>
|
|
124
124
|
<Viewpoint
|
|
125
125
|
description='Home'
|
|
@@ -155,7 +155,7 @@ Now the sphere looks like an earth and you are very curious how the text will be
|
|
|
155
155
|
### Classic Encoding
|
|
156
156
|
|
|
157
157
|
```js
|
|
158
|
-
#X3D
|
|
158
|
+
#X3D V{{ site.x3d_latest_version }} utf8
|
|
159
159
|
|
|
160
160
|
META "title" "about:hello_world"
|
|
161
161
|
|
|
@@ -76,7 +76,7 @@ Prototyping objects that are used frequently with a few modifications is another
|
|
|
76
76
|
|
|
77
77
|
```xml
|
|
78
78
|
<?xml version="1.0" encoding="UTF-8"?>
|
|
79
|
-
<X3D profile='Full' version='
|
|
79
|
+
<X3D profile='Full' version='{{ site.x3d_latest_version }}' xmlns:xsd='http://www.w3.org/2001/XMLSchema-instance' xsd:noNamespaceSchemaLocation='http://www.web3d.org/specifications/x3d-{{ site.x3d_latest_version }}.xsd'>
|
|
80
80
|
<head>
|
|
81
81
|
<meta name='comment' content='World of Titania'/>
|
|
82
82
|
<meta name='created' content='Fri, 29 Jun 2018 13:24:34 GMT'/>
|
|
@@ -148,7 +148,7 @@ function set_whichChoice (value)
|
|
|
148
148
|
### Classic Encoding
|
|
149
149
|
|
|
150
150
|
```js
|
|
151
|
-
#X3D
|
|
151
|
+
#X3D V{{ site.x3d_latest_version }} utf8
|
|
152
152
|
|
|
153
153
|
PROTO BooleanSwitch [
|
|
154
154
|
inputOutput SFBool whichChoice FALSE
|
|
@@ -337,7 +337,7 @@ ROUTE Bouncer.value_changed TO Ball.set_translation
|
|
|
337
337
|
|
|
338
338
|
```xml
|
|
339
339
|
<?xml version="1.0" encoding="UTF-8"?>
|
|
340
|
-
<X3D profile='Full' version='
|
|
340
|
+
<X3D profile='Full' version='{{ site.x3d_latest_version }}' xmlns:xsd='http://www.w3.org/2001/XMLSchema-instance' xsd:noNamespaceSchemaLocation='http://www.web3d.org/specifications/x3d-{{ site.x3d_latest_version }}.xsd'>
|
|
341
341
|
<Scene>
|
|
342
342
|
<Transform DEF='Ball'>
|
|
343
343
|
<Shape>
|
|
@@ -390,7 +390,7 @@ function set_fraction (fraction, time)
|
|
|
390
390
|
### Classic Encoding
|
|
391
391
|
|
|
392
392
|
```js
|
|
393
|
-
#X3D
|
|
393
|
+
#X3D V{{ site.x3d_latest_version }} utf8
|
|
394
394
|
|
|
395
395
|
DEF Ball Transform {
|
|
396
396
|
children [
|
|
@@ -5,6 +5,24 @@ nav: main
|
|
|
5
5
|
categories: []
|
|
6
6
|
tags: [new, releases]
|
|
7
7
|
---
|
|
8
|
+
## X_ITE v8.3.3 Released
|
|
9
|
+
|
|
10
|
+
### New Features
|
|
11
|
+
|
|
12
|
+
- Added to*String options (scene, style, precision, doublePrecision).
|
|
13
|
+
- Added output styles (CLEAN, SMALL, COMPACT, TIDY).
|
|
14
|
+
- Prefer PROTO's during parse.
|
|
15
|
+
- Collect joint nodes if no provided (HAnim).
|
|
16
|
+
- Relaxed VRML parser (parse top level statements in MFNode).
|
|
17
|
+
- XML short syntax of prototype instances.
|
|
18
|
+
|
|
19
|
+
### Bug Fixes
|
|
20
|
+
|
|
21
|
+
- Fixed bug when floating point numbers are printed.
|
|
22
|
+
- Fixed bug when MFImage is printed.
|
|
23
|
+
- Fixed component's highest levels.
|
|
24
|
+
- Fixed double count of headlight.
|
|
25
|
+
|
|
8
26
|
## X_ITE v8.3.0 Released
|
|
9
27
|
|
|
10
28
|
*Leipzig, 14st December 2022:* We right now released a new version.
|
|
@@ -512,7 +530,7 @@ This release also increased pure rendering speed (without routing and scripting)
|
|
|
512
530
|
- Fixed picking and Layout node.
|
|
513
531
|
- Fixed bug with composite glyphs in Text node.
|
|
514
532
|
- Fixed bug with data URLs.
|
|
515
|
-
- Fixed bug in toXMLString and toVRMLString when
|
|
533
|
+
- Fixed bug in toXMLString and toVRMLString when outputting protos.
|
|
516
534
|
|
|
517
535
|
## X_ITE v4.4.7 Released
|
|
518
536
|
|
|
@@ -552,7 +570,7 @@ This release also increased pure rendering speed (without routing and scripting)
|
|
|
552
570
|
- Fixed bug when parsing SFMatrix3d/f values.
|
|
553
571
|
- Fixed bug when parsing data URLs.
|
|
554
572
|
- Fixed shadow handling.
|
|
555
|
-
- Fixed bug in MF
|
|
573
|
+
- Fixed bug in MF* fields pop and shift.
|
|
556
574
|
|
|
557
575
|
## X_ITE v4.4.3 Released
|
|
558
576
|
|
|
@@ -879,7 +897,7 @@ You can tune the *shadowIntensity*. It is the intensity of the shadow. 0 means n
|
|
|
879
897
|
- Optimizations in IndexedQuadSet and QuadSet
|
|
880
898
|
- Optimized CoordinateInterpolator, NormalInterpolator, and CoordinateInterpolator2D
|
|
881
899
|
- Support for more textures for custom shaders
|
|
882
|
-
- New »
|
|
900
|
+
- New »StraightenHorizon« browser option
|
|
883
901
|
- Better rendering of Text in some cases
|
|
884
902
|
|
|
885
903
|
### Bug Fixes
|
|
@@ -5,7 +5,7 @@ order: 3
|
|
|
5
5
|
icon: fas fa-rocket
|
|
6
6
|
---
|
|
7
7
|
<style>
|
|
8
|
-
.
|
|
8
|
+
.post, .post-content {
|
|
9
9
|
height: 100%;
|
|
10
10
|
}
|
|
11
11
|
|
|
@@ -15,24 +15,68 @@ icon: fas fa-rocket
|
|
|
15
15
|
|
|
16
16
|
/* Table */
|
|
17
17
|
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
height:
|
|
21
|
-
table-layout: fixed;
|
|
18
|
+
.row {
|
|
19
|
+
display: flex;
|
|
20
|
+
height: calc(100vh - 180px);
|
|
22
21
|
}
|
|
23
22
|
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
23
|
+
.column {
|
|
24
|
+
flex: 50%;
|
|
25
|
+
width: 50%;
|
|
26
|
+
height: 100%;
|
|
27
27
|
}
|
|
28
28
|
|
|
29
29
|
/* Editor */
|
|
30
30
|
|
|
31
|
+
html {
|
|
32
|
+
--editor-background: rgba(0,0,0,0.2);
|
|
33
|
+
--editor-gutter: rgba(255,255,255,0.05);
|
|
34
|
+
--editor-active-line: #202d40;
|
|
35
|
+
--editor-selected-word: #274f79;
|
|
36
|
+
--xml-tag: var(--text-color);
|
|
37
|
+
--xml-tag-name: #5a9cd8;
|
|
38
|
+
--xml-attribute-name: #9fdcfe;
|
|
39
|
+
--xml-attribute-equals: #d4d4d4;
|
|
40
|
+
--xml-attribute-value: #cd9177;
|
|
41
|
+
--json-parenthesis: #fdd601;
|
|
42
|
+
--json-identifier: #9fdcfe;
|
|
43
|
+
--json-variable: #9fdcfe;
|
|
44
|
+
--json-numeric: #b7cea5;
|
|
45
|
+
--json-string: #cd9177;
|
|
46
|
+
--json-boolean: #5a9cd8;
|
|
47
|
+
--json-punctuation: #d4d4d4;
|
|
48
|
+
--system-red: rgb(255, 69, 58);
|
|
49
|
+
--system-yellow: rgb(255, 214, 10);
|
|
50
|
+
--system-blue: rgb(10, 132, 255);
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
html[data-mode=light] {
|
|
54
|
+
--editor-background: rgba(0,0,0,0.01);
|
|
55
|
+
--editor-gutter: #f3f3f3;
|
|
56
|
+
--editor-active-line: #d7e5f8;
|
|
57
|
+
--editor-selected-word: #aed6ff;
|
|
58
|
+
--xml-tag: var(--text-color);
|
|
59
|
+
--xml-tag-name: #7e0000;
|
|
60
|
+
--xml-attribute-name: #e20200;
|
|
61
|
+
--xml-attribute-equals: #000000;
|
|
62
|
+
--xml-attribute-value: #1000ff;
|
|
63
|
+
--json-parenthesis: #369327;
|
|
64
|
+
--json-identifier: #1251a6;
|
|
65
|
+
--json-variable: #1251a6;
|
|
66
|
+
--json-numeric: #1e8657;
|
|
67
|
+
--json-string: #a01515;
|
|
68
|
+
--json-boolean: #1000ff;
|
|
69
|
+
--json-punctuation: #000000;
|
|
70
|
+
--system-red: rgb(255, 59, 48);
|
|
71
|
+
--system-yellow: rgb(255, 204, 0);
|
|
72
|
+
--system-blue: rgb(0, 122, 255);
|
|
73
|
+
}
|
|
74
|
+
|
|
31
75
|
#editor, .console {
|
|
32
76
|
outline: none;
|
|
33
77
|
border: none;
|
|
34
78
|
padding: 0.5rem;
|
|
35
|
-
background:
|
|
79
|
+
background: var(--editor-background);
|
|
36
80
|
width: 100%;
|
|
37
81
|
height: 100%;
|
|
38
82
|
resize: none;
|
|
@@ -42,64 +86,88 @@ table td {
|
|
|
42
86
|
white-space: pre;
|
|
43
87
|
}
|
|
44
88
|
|
|
89
|
+
.console {
|
|
90
|
+
height: 50%;
|
|
91
|
+
}
|
|
92
|
+
|
|
93
|
+
.post x3d-canvas {
|
|
94
|
+
display: block;
|
|
95
|
+
width: 100%;
|
|
96
|
+
height: 50%;
|
|
97
|
+
aspect-ratio: unset;
|
|
98
|
+
}
|
|
99
|
+
|
|
45
100
|
.ace_gutter {
|
|
46
|
-
background:
|
|
101
|
+
background: var(--editor-gutter) !important;
|
|
102
|
+
}
|
|
103
|
+
|
|
104
|
+
.ace_gutter-active-line,
|
|
105
|
+
.ace_active-line {
|
|
106
|
+
background: var(--editor-active-line) !important;
|
|
107
|
+
}
|
|
108
|
+
|
|
109
|
+
.ace_selected-word,
|
|
110
|
+
.ace_selection {
|
|
111
|
+
border: none !important;
|
|
112
|
+
background: var(--editor-selected-word) !important;
|
|
47
113
|
}
|
|
48
114
|
|
|
49
115
|
/* XML */
|
|
50
116
|
|
|
51
117
|
.ace_tag-open, .ace_tag-close, .ace_end-tag-open {
|
|
52
|
-
color: var(--
|
|
118
|
+
color: var(--xml-tag) !important;
|
|
53
119
|
}
|
|
54
120
|
|
|
55
121
|
.ace_tag-name {
|
|
56
|
-
color:
|
|
122
|
+
color: var(--xml-tag-name) !important;
|
|
57
123
|
}
|
|
58
124
|
|
|
59
125
|
.ace_attribute-name {
|
|
60
|
-
color:
|
|
126
|
+
color: var(--xml-attribute-name) !important;
|
|
61
127
|
}
|
|
62
128
|
|
|
63
129
|
.ace_attribute-equals {
|
|
64
|
-
color:
|
|
130
|
+
color: var(--xml-attribute-equals) !important;
|
|
65
131
|
}
|
|
66
132
|
|
|
67
133
|
.ace_attribute-value {
|
|
68
|
-
color:
|
|
134
|
+
color: var(--xml-attribute-value) !important;
|
|
69
135
|
}
|
|
70
136
|
|
|
71
137
|
/* JSON */
|
|
72
138
|
|
|
73
139
|
.ace_paren {
|
|
74
|
-
color:
|
|
140
|
+
color: var(--json-parenthesis) !important;
|
|
75
141
|
}
|
|
76
142
|
|
|
77
143
|
.ace_identifier {
|
|
78
|
-
color:
|
|
144
|
+
color: var(--json-identifier) !important;
|
|
79
145
|
}
|
|
80
146
|
|
|
81
147
|
.ace_variable {
|
|
82
|
-
color:
|
|
148
|
+
color: var(--json-variable) !important;
|
|
83
149
|
}
|
|
84
150
|
|
|
85
|
-
.ace_numeric
|
|
86
|
-
|
|
151
|
+
.ace_numeric,
|
|
152
|
+
.ace_keyword.ace_operator {
|
|
153
|
+
color: var(--json-numeric) !important;
|
|
87
154
|
}
|
|
88
155
|
|
|
89
156
|
.ace_string {
|
|
90
|
-
color:
|
|
157
|
+
color: var(--json-string) !important;
|
|
91
158
|
}
|
|
92
159
|
|
|
93
160
|
.ace_boolean {
|
|
94
|
-
color:
|
|
161
|
+
color: var(--json-boolean) !important;
|
|
162
|
+
}
|
|
163
|
+
|
|
164
|
+
.ace_punctuation.ace_operator {
|
|
165
|
+
color: var(--json-punctuation) !important;
|
|
95
166
|
}
|
|
96
167
|
|
|
97
168
|
/* Console */
|
|
98
169
|
|
|
99
170
|
.console {
|
|
100
|
-
--system-red: rgb(255, 69, 58);
|
|
101
|
-
--system-yellow: rgb(255, 214, 10);
|
|
102
|
-
--system-blue: rgb(10, 132, 255);
|
|
103
171
|
overflow: scroll;
|
|
104
172
|
}
|
|
105
173
|
|
|
@@ -107,21 +175,13 @@ span.info {
|
|
|
107
175
|
color: var(--system-blue);
|
|
108
176
|
}
|
|
109
177
|
|
|
110
|
-
span.
|
|
178
|
+
span.warn {
|
|
111
179
|
color: var(--system-yellow);
|
|
112
180
|
}
|
|
113
181
|
|
|
114
182
|
span.error {
|
|
115
183
|
color: var(--system-red);
|
|
116
184
|
}
|
|
117
|
-
|
|
118
|
-
/* Canvas */
|
|
119
|
-
|
|
120
|
-
.post x3d-canvas {
|
|
121
|
-
width: 100%;
|
|
122
|
-
height: 100%;
|
|
123
|
-
aspect-ratio: unset;
|
|
124
|
-
}
|
|
125
185
|
</style>
|
|
126
186
|
|
|
127
187
|
<pre style="display:none">
|
|
@@ -182,7 +242,7 @@ $(function ()
|
|
|
182
242
|
<Shape>
|
|
183
243
|
<Appearance>
|
|
184
244
|
<Material
|
|
185
|
-
|
|
245
|
+
diffuseColor='0 0.5 1'></Material>
|
|
186
246
|
</Appearance>
|
|
187
247
|
<Box></Box>
|
|
188
248
|
</Shape>
|
|
@@ -211,6 +271,9 @@ $(function ()
|
|
|
211
271
|
text = Array .prototype .slice .call (args) .join ("") + "\n",
|
|
212
272
|
element = $("<span></span>") .addClass (classes) .text (text);
|
|
213
273
|
|
|
274
|
+
if (text .includes ("No suitable"))
|
|
275
|
+
return;
|
|
276
|
+
|
|
214
277
|
log .apply (this, args);
|
|
215
278
|
|
|
216
279
|
$(".console") .append (element);
|
|
@@ -219,28 +282,18 @@ $(function ()
|
|
|
219
282
|
}
|
|
220
283
|
}
|
|
221
284
|
|
|
222
|
-
console .log
|
|
223
|
-
console .info
|
|
224
|
-
console .
|
|
225
|
-
console .error
|
|
226
|
-
console .debug
|
|
285
|
+
console .log = output (console .log, "log");
|
|
286
|
+
console .info = output (console .info, "info");
|
|
287
|
+
console .warn = output (console .warn, "warn");
|
|
288
|
+
console .error = output (console .error, "error");
|
|
289
|
+
console .debug = output (console .debug, "debug");
|
|
227
290
|
})();
|
|
228
291
|
</script>
|
|
229
292
|
|
|
230
|
-
<
|
|
231
|
-
<
|
|
232
|
-
<
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
<tr>
|
|
238
|
-
<td><div class="console"></div></td>
|
|
239
|
-
</tr>
|
|
240
|
-
</table>
|
|
241
|
-
</td>
|
|
242
|
-
<td>
|
|
243
|
-
<div id="editor"></div>
|
|
244
|
-
</td>
|
|
245
|
-
</tr>
|
|
246
|
-
</table>
|
|
293
|
+
<div class="row">
|
|
294
|
+
<div class="column">
|
|
295
|
+
<x3d-canvas splashScreen="false"></x3d-canvas>
|
|
296
|
+
<div class="console"></div>
|
|
297
|
+
</div>
|
|
298
|
+
<div class="column"><div id="editor"></div></div>
|
|
299
|
+
</div>
|