Преглед изворни кода

VRMLLoader: Allow multi-line strings. (#33616)

Michael Herzog пре 1 недеља
родитељ
комит
049fa35b79

+ 1 - 1
examples/jsm/loaders/VRMLLoader.js

@@ -220,7 +220,7 @@ class VRMLLoader extends Loader {
 
 			//
 
-			const StringLiteral = createToken( { name: 'StringLiteral', pattern: /"(?:[^\\"\n\r]|\\[bfnrtv"\\/]|\\u[0-9a-fA-F][0-9a-fA-F][0-9a-fA-F][0-9a-fA-F])*"/ } );
+			const StringLiteral = createToken( { name: 'StringLiteral', pattern: /"(?:[^\\"]|\\[bfnrtv"\\/]|\\u[0-9a-fA-F][0-9a-fA-F][0-9a-fA-F][0-9a-fA-F])*"/ } );
 			const HexLiteral = createToken( { name: 'HexLiteral', pattern: /0[xX][0-9a-fA-F]+/ } );
 			const NumberLiteral = createToken( { name: 'NumberLiteral', pattern: /[-+]?[0-9]*\.?[0-9]+([eE][-+]?[0-9]+)?/ } );
 			const TrueLiteral = createToken( { name: 'TrueLiteral', pattern: /TRUE/ } );

+ 24 - 0
examples/models/vrml/multilineString.wrl

@@ -0,0 +1,24 @@
+#VRML V2.0 utf8
+WorldInfo { title "Multi-line string literal test" }
+NavigationInfo { type "EXAMINE" }
+Background { skyColor [ 0.2 0.2 0.3 ] }
+
+Transform {
+	translation 0 0 0
+	children [
+		Shape {
+			appearance Appearance {
+				material Material { diffuseColor 0.2 0.8 0.4 }
+			}
+			geometry Box { size 1 1 1 }
+		}
+	]
+}
+
+DEF S Script {
+	url "javascript:
+function touched(value) {
+	console.log('Box was touched at ' + value);
+}
+"
+}

+ 2 - 1
examples/webgl_loader_vrml.html

@@ -56,7 +56,8 @@
 				'meshWithTexture',
 				'pixelTexture',
 				'points',
-				'camera'
+				'camera',
+				'multilineString'
 			];
 
 			let vrmlScene;

粤ICP备19079148号