Ejemplo n.º 1
0
"					newBubble();\n"+
"				} else if (Math.abs(translation.z) > 10) {\n"+
"					newBubble();\n"+
"				} else {\n"+
"					velocity = new SFVec3f(\n"+
"						velocity.x + Math.random() * 0.2 - 0.1,\n"+
"						velocity.y + Math.random() * 0.2 - 0.1,\n"+
"						velocity.z + Math.random() * 0.2 - 0.1\n"+
"					);\n"+
"				}\n"+
"			}\n"+
"\n"+
"			function initialize() {\n"+
"			     newBubble();\n"+
"			}''')).addChild(x3dpsail.TimeSensor().setDEF(x3dpsail.SFString(
                                           "TourTime")).setCycleInterval(
                                               x3dpsail.SFTime(0.15)).setLoop(
                                                   x3dpsail.SFBool(True))
                    ).addChild(x3dpsail.ROUTE().setFromNode(
                        x3dpsail.SFString("TourTime")).setFromField(
                            x3dpsail.SFString("cycleTime")).setToNode(
                                x3dpsail.SFString("Bounce")).setToField(
                                    x3dpsail.SFString("set_fraction"))).
                 addChild(x3dpsail.ROUTE().setFromNode(
                     x3dpsail.SFString("Bounce")).setFromField(
                         x3dpsail.SFString("translation_changed")).setToNode(
                             x3dpsail.SFString("transform")).setToField(
                                 x3dpsail.SFString("set_translation")))))

X3D0.toFileX3D("./future/./SFVec3f_RoundTrip.x3d")
Ejemplo n.º 2
0
"		translation.x = 0;\n"+
"		initialize();\n"+
"	}\n"+
"	if (Math.abs(scale.y) > 20) {\n"+
"		scale.y = scale.y/2;\n"+
"		translation.y = 0;\n"+
"		initialize();\n"+
"	}\n"+
"	if (Math.abs(scale.z) > 20) {\n"+
"		scale.z = scale.z/2;\n"+
"		translation.z = 0;\n"+
"		initialize();\n"+
"	}\n"+
"}''')).addChild(x3dpsail.TimeSensor().setDEF(
                                             x3dpsail.SFString("bubbleClock")).
                 setCycleInterval(x3dpsail.SFTime(10)).setLoop(
                     x3dpsail.SFBool(True))).addChild(
                         x3dpsail.ROUTE().setFromNode(
                             x3dpsail.SFString("bounce")).setFromField(
                                 x3dpsail.SFString("translation_changed")).
                         setToNode(x3dpsail.SFString("transform")).setToField(
                             x3dpsail.SFString("set_translation"))
                     ).addChild(x3dpsail.ROUTE().setFromNode(
                         x3dpsail.SFString("bounce")).setFromField(
                             x3dpsail.SFString("scale_changed")).setToNode(
                                 x3dpsail.SFString("transform")).setToField(
                                     x3dpsail.SFString("set_scale"))
                                ).addChild(x3dpsail.ROUTE().setFromNode(
                                    x3dpsail.SFString("bubbleClock")
                                ).setFromField(
                                    x3dpsail.SFString("fraction_changed")
Ejemplo n.º 3
0
                                    x3dpsail.SFString("inputOnly")).setType(
                                        x3dpsail.SFString("SFTime"))).
                     addField(x3dpsail.field().setName(
                         x3dpsail.SFString("keyValue")).setAccessType(
                             x3dpsail.SFString("outputOnly")).setType(
                                 x3dpsail.SFString("MFVec3f"))).setSourceCode(
                                     '''ecmascript:\n"+
"					function set_cycle(value) {\n"+
"                                                old = translation;\n"+
"						translation = new SFVec3f(Math.random()*100-50, Math.random()*100-50, Math.random()*100-50);\n"+
"                                                keyValue = new MFVec3f([old, translation]);\n"+
"						// Browser.println(translation);\n"+
"					}''')).
            addChild(x3dpsail.TimeSensor().setDEF(
                x3dpsail.SFString("nodeClock")).setCycleInterval(
                    x3dpsail.SFTime(3)).setLoop(x3dpsail.SFBool(
                        True))).addChild(x3dpsail.ROUTE().setFromNode(
                            x3dpsail.SFString("nodeClock")).setFromField(
                                x3dpsail.SFString("cycleTime")).setToNode(
                                    x3dpsail.SFString("MoveBall")).setToField(
                                        x3dpsail.SFString("set_cycle"))).
            addChild(x3dpsail.ROUTE().setFromNode(
                x3dpsail.SFString("nodeClock")).setFromField(
                    x3dpsail.SFString("fraction_changed")).setToNode(
                        x3dpsail.SFString("NodePosition")).setToField(
                            x3dpsail.SFString("set_fraction"))
                     ).addChild(x3dpsail.ROUTE().setFromNode(
                         x3dpsail.SFString("MoveBall")).setFromField(
                             x3dpsail.SFString("keyValue")).setToNode(
                                 x3dpsail.SFString("NodePosition")).setToField(
                                     x3dpsail.SFString("keyValue"))).
Ejemplo n.º 4
0
"	}\n"+
"	if (c < 1) {\n"+
"		c = 4;\n"+
"	}\n"+
"	if (c > 20) {\n"+
"		c = 4;\n"+
"	}\n"+
"	if (d < 1) {\n"+
"		d = 4;\n"+
"	}\n"+
"	if (d > 20) {\n"+
"		d = 4;\n"+
"	}\n"+
"}''')
)
        .addChild(x3dpsail.TimeSensor().setDEF(x3dpsail.SFString("TourTime")).setCycleInterval(x3dpsail.SFTime(5)).setLoop(x3dpsail.SFBool(True)))
        .addChild(x3dpsail.ROUTE().setFromNode(x3dpsail.SFString("TourTime")).setFromField(x3dpsail.SFString("fraction_changed")).setToNode(x3dpsail.SFString("Animate")).setToField(x3dpsail.SFString("set_fraction")))
        .addChild(x3dpsail.ROUTE().setFromNode(x3dpsail.SFString("Animate")).setFromField(x3dpsail.SFString("a")).setToNode(x3dpsail.SFString("cobweb")).setToField(x3dpsail.SFString("a")))
        .addChild(x3dpsail.ROUTE().setFromNode(x3dpsail.SFString("Animate")).setFromField(x3dpsail.SFString("b")).setToNode(x3dpsail.SFString("cobweb")).setToField(x3dpsail.SFString("b")))
        .addChild(x3dpsail.ROUTE().setFromNode(x3dpsail.SFString("Animate")).setFromField(x3dpsail.SFString("c")).setToNode(x3dpsail.SFString("cobweb")).setToField(x3dpsail.SFString("c")))
        .addChild(x3dpsail.ROUTE().setFromNode(x3dpsail.SFString("Animate")).setFromField(x3dpsail.SFString("d")).setToNode(x3dpsail.SFString("cobweb")).setToField(x3dpsail.SFString("d")))
        .addChild(x3dpsail.ROUTE().setFromNode(x3dpsail.SFString("Animate")).setFromField(x3dpsail.SFString("pdelta")).setToNode(x3dpsail.SFString("cobweb")).setToField(x3dpsail.SFString("pdelta")))
        .addChild(x3dpsail.ROUTE().setFromNode(x3dpsail.SFString("Animate")).setFromField(x3dpsail.SFString("tdelta")).setToNode(x3dpsail.SFString("cobweb")).setToField(x3dpsail.SFString("tdelta")))
        .addChild(x3dpsail.ROUTE().setFromNode(x3dpsail.SFString("Animate")).setFromField(x3dpsail.SFString("a")).setToNode(x3dpsail.SFString("x3dom")).setToField(x3dpsail.SFString("a")))
        .addChild(x3dpsail.ROUTE().setFromNode(x3dpsail.SFString("Animate")).setFromField(x3dpsail.SFString("b")).setToNode(x3dpsail.SFString("x3dom")).setToField(x3dpsail.SFString("b")))
        .addChild(x3dpsail.ROUTE().setFromNode(x3dpsail.SFString("Animate")).setFromField(x3dpsail.SFString("c")).setToNode(x3dpsail.SFString("x3dom")).setToField(x3dpsail.SFString("c")))
        .addChild(x3dpsail.ROUTE().setFromNode(x3dpsail.SFString("Animate")).setFromField(x3dpsail.SFString("d")).setToNode(x3dpsail.SFString("x3dom")).setToField(x3dpsail.SFString("d")))
        .addChild(x3dpsail.ROUTE().setFromNode(x3dpsail.SFString("Animate")).setFromField(x3dpsail.SFString("pdelta")).setToNode(x3dpsail.SFString("x3dom")).setToField(x3dpsail.SFString("pdelta")))
        .addChild(x3dpsail.ROUTE().setFromNode(x3dpsail.SFString("Animate")).setFromField(x3dpsail.SFString("tdelta")).setToNode(x3dpsail.SFString("x3dom")).setToField(x3dpsail.SFString("tdelta")))))

X3D0.toFileX3D("./future/./flowers7_RoundTrip.x3d")
Ejemplo n.º 5
0
            .setAppearance(x3dpsail.Appearance()
              .setMaterial(x3dpsail.Material().setDiffuseColor(x3dpsail.SFColor(1,0,0)))))
          .addChild(x3dpsail.PositionInterpolator().setDEF(x3dpsail.SFString("DECLpoint_G1_PI1")).setKey(x3dpsail.MFFloat([0,1])).setKeyValue(x3dpsail.MFVec3f([0,0,0,0,5,0])))
          .addChild(x3dpsail.Script().setDEF(x3dpsail.SFString("DECLpoint_G1_MB1"))
            .addField(x3dpsail.field().setName(x3dpsail.SFString("translation")).setAccessType(x3dpsail.SFString("inputOutput")).setType(x3dpsail.SFString("SFVec3f")).setValue(x3dpsail.SFString("0 0 0")))
            .addField(x3dpsail.field().setName(x3dpsail.SFString("old")).setAccessType(x3dpsail.SFString("inputOutput")).setType(x3dpsail.SFString("SFVec3f")).setValue(x3dpsail.SFString("0 0 0")))
            .addField(x3dpsail.field().setName(x3dpsail.SFString("set_location")).setAccessType(x3dpsail.SFString("inputOnly")).setType(x3dpsail.SFString("SFTime")))
            .addField(x3dpsail.field().setName(x3dpsail.SFString("keyValue")).setAccessType(x3dpsail.SFString("inputOutput")).setType(x3dpsail.SFString("MFVec3f")).setValue(x3dpsail.SFString("0 0 0 0 5 0"))).setSourceCode('''ecmascript:\n"+
"		function set_location(value) {\n"+
"                    old = translation;\n"+
"		    translation = new SFVec3f(Math.random()*10-5, Math.random()*10-5, Math.random()*10-5);\n"+
"                    keyValue = new MFVec3f([old, translation]);\n"+
"		    // Browser.println(keyValue);\n"+
"		}''')
)
          .addChild(x3dpsail.TimeSensor().setDEF(x3dpsail.SFString("DECLpoint_G1_CL1")).setCycleInterval(x3dpsail.SFTime(3)).setLoop(x3dpsail.SFBool(True)))
          .addChild(x3dpsail.ROUTE().setFromNode(x3dpsail.SFString("DECLpoint_G1_CL1")).setFromField(x3dpsail.SFString("cycleTime")).setToNode(x3dpsail.SFString("DECLpoint_G1_MB1")).setToField(x3dpsail.SFString("set_location")))
          .addChild(x3dpsail.ROUTE().setFromNode(x3dpsail.SFString("DECLpoint_G1_CL1")).setFromField(x3dpsail.SFString("fraction_changed")).setToNode(x3dpsail.SFString("DECLpoint_G1_PI1")).setToField(x3dpsail.SFString("set_fraction")))
          .addChild(x3dpsail.ROUTE().setFromNode(x3dpsail.SFString("DECLpoint_G1_MB1")).setFromField(x3dpsail.SFString("keyValue")).setToNode(x3dpsail.SFString("DECLpoint_G1_PI1")).setToField(x3dpsail.SFString("keyValue")))
          .addChild(x3dpsail.ROUTE().setFromNode(x3dpsail.SFString("DECLpoint_G1_PI1")).setFromField(x3dpsail.SFString("value_changed")).setToNode(x3dpsail.SFString("DECLpoint_G1_node")).setToField(x3dpsail.SFString("set_translation"))))
        .addChild(x3dpsail.Transform().setDEF(x3dpsail.SFString("DECLpoint_G2_node"))
          .addChild(x3dpsail.Shape()
            .setGeometry(x3dpsail.Sphere().setRadius(x3dpsail.SFFloat(0.1)))
            .setAppearance(x3dpsail.Appearance()
              .setMaterial(x3dpsail.Material().setDiffuseColor(x3dpsail.SFColor(1,0,0)))))
          .addChild(x3dpsail.PositionInterpolator().setDEF(x3dpsail.SFString("DECLpoint_G2_PI1")).setKey(x3dpsail.MFFloat([0,1])).setKeyValue(x3dpsail.MFVec3f([0,0,0,0,5,0])))
          .addChild(x3dpsail.Script().setDEF(x3dpsail.SFString("DECLpoint_G2_MB1"))
            .addField(x3dpsail.field().setName(x3dpsail.SFString("translation")).setAccessType(x3dpsail.SFString("inputOutput")).setType(x3dpsail.SFString("SFVec3f")).setValue(x3dpsail.SFString("0 0 0")))
            .addField(x3dpsail.field().setName(x3dpsail.SFString("old")).setAccessType(x3dpsail.SFString("inputOutput")).setType(x3dpsail.SFString("SFVec3f")).setValue(x3dpsail.SFString("0 0 0")))
            .addField(x3dpsail.field().setName(x3dpsail.SFString("set_location")).setAccessType(x3dpsail.SFString("inputOnly")).setType(x3dpsail.SFString("SFTime")))
            .addField(x3dpsail.field().setName(x3dpsail.SFString("keyValue")).setAccessType(x3dpsail.SFString("inputOutput")).setType(x3dpsail.SFString("MFVec3f")).setValue(x3dpsail.SFString("0 0 0 0 5 0"))).setSourceCode('''ecmascript:\n"+
Ejemplo n.º 6
0
"	translation.z = 0;\n"+
"	initialize();\n"+
"    }\n"+
"    if (Math.abs(scale.x) > 20) {\n"+
"	scale.x = scale.x/20;\n"+
"	translation.x = 0;\n"+
"	initialize();\n"+
"    }\n"+
"    if (Math.abs(scale.y) > 20) {\n"+
"	scale.y = scale.y/20;\n"+
"	translation.y = 0;\n"+
"	initialize();\n"+
"    }\n"+
"    if (Math.abs(scale.z) > 20) {\n"+
"	scale.z = scale.z/20;\n"+
"	translation.z = 0;\n"+
"	initialize();\n"+
"    }\n"+
"}''')
)
              .addChild(x3dpsail.TimeSensor().setDEF(x3dpsail.SFString("bubbleClock")).setCycleInterval(x3dpsail.SFTime(10)).setLoop(x3dpsail.SFBool(True)))
              .addChild(x3dpsail.ROUTE().setFromNode(x3dpsail.SFString("bounce")).setFromField(x3dpsail.SFString("translation_changed")).setToNode(x3dpsail.SFString("transform")).setToField(x3dpsail.SFString("set_translation")))
              .addChild(x3dpsail.ROUTE().setFromNode(x3dpsail.SFString("bounce")).setFromField(x3dpsail.SFString("scale_changed")).setToNode(x3dpsail.SFString("transform")).setToField(x3dpsail.SFString("set_scale")))
              .addChild(x3dpsail.ROUTE().setFromNode(x3dpsail.SFString("bubbleClock")).setFromField(x3dpsail.SFString("fraction_changed")).setToNode(x3dpsail.SFString("bounce")).setToField(x3dpsail.SFString("set_fraction"))))))
        .addChild(x3dpsail.ProtoInstance().setName(x3dpsail.SFString("Bubble")).setDEF(x3dpsail.SFString("bubbleA")))
        .addChild(x3dpsail.ProtoInstance().setName(x3dpsail.SFString("Bubble")).setDEF(x3dpsail.SFString("bubbleB")))
        .addChild(x3dpsail.ProtoInstance().setName(x3dpsail.SFString("Bubble")).setDEF(x3dpsail.SFString("bubbleC")))
        .addChild(x3dpsail.ProtoInstance().setName(x3dpsail.SFString("Bubble")).setDEF(x3dpsail.SFString("bubbleD")))))

X3D0.toFileX3D("./future/./cobweb_RoundTrip.x3d")
Ejemplo n.º 7
0
                         x3dpsail.SFString("0.2 0.6 0.6"))))
 ).setGeometry(x3dpsail.Text().setString(
     x3dpsail.MFString([
         "X3D Header Prototype syntax examples",
         "(view console for EXTERNPROTO output)"
     ])).setFontStyle(x3dpsail.FontStyle().setJustify(
         x3dpsail.MFString(["MIDDLE", "MIDDLE"
                            ])).setSize(x3dpsail.SFFloat(0.6)))))).
 addChild(x3dpsail.ProtoInstance().setName(
     x3dpsail.SFString("ViewPositionOrientation")).addFieldValue(
         x3dpsail.fieldValue().setName(
             x3dpsail.SFString("enabled")).setValue(
                 x3dpsail.SFString("true"))
     )).addChild(x3dpsail.TimeSensor().setDEF(
         x3dpsail.SFString("Clock")).setCycleInterval(
             x3dpsail.SFTime(4)).setLoop(
                 x3dpsail.SFBool(True))).addChild(
                     x3dpsail.OrientationInterpolator().setDEF(
                         x3dpsail.SFString("Spinner")).setKey(
                             x3dpsail.MFFloat(
                                 [0, 0.5,
                                  1])).setKeyValue(
                                      x3dpsail.MFRotation([
                                          0, 1, 0, 0, 0, 1, 0,
                                          3.14159, 0, 1, 0, 6.28318
                                      ]))).
 addChild(x3dpsail.ROUTE().setFromField(
     x3dpsail.SFString("fraction_changed")).setFromNode(
         x3dpsail.SFString("Clock")).setToField(
             x3dpsail.SFString("set_fraction")).setToNode(
                 x3dpsail.SFString("Spinner"))).
Ejemplo n.º 8
0
         "https://coderextreme.net/X3DJSONLD/shaders/x3dom.vs"
     ])
 ).setType(x3dpsail.SFString(
     "VERTEX"
 ))).addParts(x3dpsail.ShaderPart().setUrl(
     x3dpsail
     .MFString([
         "../shaders/pc_bubbles.fs",
         "https://coderextreme.net/X3DJSONLD/shaders/pc_bubbles.fs"
     ])
 ).setType(x3dpsail.SFString(
     "FRAGMENT"
 ))))))).addChild(x3dpsail.TimeSensor().setDEF(x3dpsail.SFString(
     "TourTime"
 )).setCycleInterval(x3dpsail.SFTime(
     5
 )).setLoop(x3dpsail.SFBool(
     True
 ))).addChild(x3dpsail.PositionInterpolator().setDEF(
     x3dpsail.
     SFString("TourPosition")
 ).setKey(x3dpsail.MFFloat([
     0, 1
 ])).setKeyValue(x3dpsail.MFVec3f([
     0,
     0, 10, 0,
     0, -10
 ]))).addChild(x3dpsail.OrientationInterpolator().setDEF(
     x3dpsail.SFString("TourOrientation")
 ).setKey(x3dpsail.MFFloat([
     0, 1
Ejemplo n.º 9
0
        .addChild(x3dpsail.Transform().setTranslation(x3dpsail.SFVec3f(0,-3,8))
          #notice this next Viewpoint has been transformed with the text, so its position is relative. it is called view5 in the Script.

          .addChild(x3dpsail.Viewpoint().setDEF(x3dpsail.SFString("ClickToAnimateView")).setDescription(x3dpsail.SFString("Select animation sequence")).setPosition(x3dpsail.SFVec3f(0,0,7)))
          .addChild(x3dpsail.Shape()
            .setGeometry(x3dpsail.Text().setString(x3dpsail.MFString(["Click here to animate"]))
              .setFontStyle(x3dpsail.FontStyle().setJustify(x3dpsail.MFString(["MIDDLE","BEGIN"]))))
            .setAppearance(x3dpsail.Appearance()
              .setMaterial(x3dpsail.Material().setDiffuseColor(x3dpsail.SFColor(0.8,0.4,0)))))
          .addChild(x3dpsail.Shape()
            .setGeometry(x3dpsail.Box().setSize(x3dpsail.SFVec3f(7,1,0.02)))
            .setAppearance(x3dpsail.Appearance()
              .setMaterial(x3dpsail.Material().setTransparency(x3dpsail.SFFloat(1)))))
          .addChild(x3dpsail.TouchSensor().setDEF(x3dpsail.SFString("TextTouchSensor")).setDescription(x3dpsail.SFString("Click to begin animating viewpoint selections")))
          .addChild(x3dpsail.TimeSensor().setDEF(x3dpsail.SFString("Clock")).setCycleInterval(x3dpsail.SFTime(10)))
          .addChild(x3dpsail.ROUTE().setFromField(x3dpsail.SFString("touchTime")).setFromNode(x3dpsail.SFString("TextTouchSensor")).setToField(x3dpsail.SFString("set_startTime")).setToNode(x3dpsail.SFString("Clock")))
          .addChild(x3dpsail.IntegerSequencer().setDEF(x3dpsail.SFString("TimingSequencer")).setKey(x3dpsail.MFFloat([0,0.1,0.2,0.3,0.4,0.5,0.6,0.7,0.8,1])).setKeyValue(x3dpsail.MFInt32([0,1,2,3,4,5,6,7,8,10])))
          .addChild(x3dpsail.ROUTE().setFromField(x3dpsail.SFString("fraction_changed")).setFromNode(x3dpsail.SFString("Clock")).setToField(x3dpsail.SFString("set_fraction")).setToNode(x3dpsail.SFString("TimingSequencer")))
          .addChild(x3dpsail.Script().setDEF(x3dpsail.SFString("BindingSequencerEngine"))
            .addField(x3dpsail.field().setName(x3dpsail.SFString("set_timeEvent")).setAccessType(x3dpsail.SFString("inputOnly")).setType(x3dpsail.SFString("SFInt32")))
            .addField(x3dpsail.field().setName(x3dpsail.SFString("bindView1")).setAccessType(x3dpsail.SFString("outputOnly")).setType(x3dpsail.SFString("SFBool")))
            .addField(x3dpsail.field().setName(x3dpsail.SFString("bindView2")).setAccessType(x3dpsail.SFString("outputOnly")).setType(x3dpsail.SFString("SFBool")))
            .addField(x3dpsail.field().setName(x3dpsail.SFString("bindView3")).setAccessType(x3dpsail.SFString("outputOnly")).setType(x3dpsail.SFString("SFBool")))
            .addField(x3dpsail.field().setName(x3dpsail.SFString("bindView4")).setAccessType(x3dpsail.SFString("outputOnly")).setType(x3dpsail.SFString("SFBool")))
            .addField(x3dpsail.field().setName(x3dpsail.SFString("bindView5")).setAccessType(x3dpsail.SFString("outputOnly")).setType(x3dpsail.SFString("SFBool")))
            .addField(x3dpsail.field().setName(x3dpsail.SFString("view1Bound")).setAccessType(x3dpsail.SFString("inputOnly")).setType(x3dpsail.SFString("SFBool")))
            .addField(x3dpsail.field().setName(x3dpsail.SFString("view2Bound")).setAccessType(x3dpsail.SFString("inputOnly")).setType(x3dpsail.SFString("SFBool")))
            .addField(x3dpsail.field().setName(x3dpsail.SFString("view3Bound")).setAccessType(x3dpsail.SFString("inputOnly")).setType(x3dpsail.SFString("SFBool")))
            .addField(x3dpsail.field().setName(x3dpsail.SFString("view4Bound")).setAccessType(x3dpsail.SFString("inputOnly")).setType(x3dpsail.SFString("SFBool")))
            .addField(x3dpsail.field().setName(x3dpsail.SFString("priorInputvalue")).setAccessType(x3dpsail.SFString("initializeOnly")).setType(x3dpsail.SFString("SFInt32")).setValue(x3dpsail.SFString("-1"))).setSourceCode('''ecmascript:\n"+
Ejemplo n.º 10
0
                  x3dpsail.MFString([
                      "../resources/images/TP.png",
                      "https://coderextreme.net/X3DJSONLD/images/TP.png"
                  ]))).addChild(x3dpsail.Transform().addChild(
                      x3dpsail.Shape().setGeometry(
                          x3dpsail.Sphere()).setAppearance(
                              x3dpsail.Appearance().setMaterial(
                                  x3dpsail.Material().setDiffuseColor(
                                      x3dpsail.SFColor(
                                          0.7, 0.7,
                                          0.7)).setSpecularColor(
                                              x3dpsail.SFColor(
                                                  0.5, 0.5, 0.5)))))).
 addChild(x3dpsail.TimeSensor().setDEF(
     x3dpsail.SFString("TourTime")).setCycleInterval(
         x3dpsail.SFTime(5)).setLoop(x3dpsail.SFBool(True))).addChild(
             x3dpsail.GeoPositionInterpolator().setDEF(
                 x3dpsail.SFString("TourPosition")).setKey(
                     x3dpsail.MFFloat([0, 1])).setKeyValue(
                         x3dpsail.MFVec3d(
                             [0.0015708, 0, 4, 0, 0.0015708, 4]))).
 addChild(x3dpsail.Script().setDEF(x3dpsail.SFString(
     "RandomTourTime")).addField(x3dpsail.field().setName(
         x3dpsail.SFString("set_cycle")).setAccessType(
             x3dpsail.SFString("inputOnly")).setType(
                 x3dpsail.SFString("SFTime"))).addField(
                     x3dpsail.field().setName(
                         x3dpsail.SFString("val")).setAccessType(
                             x3dpsail.SFString("inputOutput")).setType(
                                 x3dpsail.SFString("SFFloat")).setValue(
                                     x3dpsail.SFString("0"))).
Ejemplo n.º 11
0
             x3dpsail.Material().setDiffuseColor(
                 x3dpsail.SFColor(
                     1, 0.5,
                     0)).setSpecularColor(
                         x3dpsail.SFColor(
                             1, 0.5,
                             0)).setTransparency(
                                 x3dpsail.SFFloat(0.75))
         )).setGeometry(x3dpsail.IndexedFaceSet().setDEF(
             x3dpsail.SFString("Orbit2")).setCoord(
                 x3dpsail.Coordinate().setDEF(
                     x3dpsail.SFString(
                         "OrbitCoordinates2")))))).
 addChild(x3dpsail.TimeSensor().setDEF(
     x3dpsail.SFString("Clock")).setCycleInterval(
         x3dpsail.SFTime(16)).setLoop(
             x3dpsail.SFBool(True))).addChild(
                 x3dpsail.OrientationInterpolator().setDEF(
                     x3dpsail.SFString("OrbitPath")).setKey(
                         x3dpsail.MFFloat(
                             [0, 0.5, 1])).setKeyValue(
                                 x3dpsail.MFRotation([
                                     1, 0, 0, 0, 1, 0, 0,
                                     3.14, 1, 0, 0, 6.28
                                 ]))).
 addChild(x3dpsail.Script().setDEF(
     x3dpsail.SFString("OrbitScript")).addField(
         x3dpsail.field().setName(
             x3dpsail.SFString(
                 "set_fraction")).setAccessType(
                     x3dpsail.SFString("inputOnly")).setType(