Skip to content
Snippets Groups Projects
Commit 98c3e481 authored by Brutzman, Don's avatar Brutzman, Don
Browse files

remove derivative .java model versions from git version control

parent d60bd8f4
No related branches found
No related tags found
No related merge requests found
Showing
with 0 additions and 9917 deletions
This diff is collapsed.
source diff could not be displayed: it is too large. Options to address this: view the blob.
source diff could not be displayed: it is too large. Options to address this: view the blob.
This diff is collapsed.
source diff could not be displayed: it is too large. Options to address this: view the blob.
This diff is collapsed.
package Savage.GroundVehicles.HMMWV;
/*
Copyright (c) 1995-2019 held by the author(s). All rights reserved.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions
are met:
* Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimer
in the documentation and/or other materials provided with the
distribution.
* Neither the name of the Web3D Consortium (http://www.web3D.org)
nor the names of its contributors may be used to endorse or
promote products derived from this software without specific
prior written permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
POSSIBILITY OF SUCH DAMAGE.
*/
import java.util.*;
import org.web3d.x3d.jsail.Core.*;
import org.web3d.x3d.jsail.EnvironmentalEffects.*;
import org.web3d.x3d.jsail.fields.*;
import org.web3d.x3d.jsail.Geometry3D.*;
import org.web3d.x3d.jsail.Grouping.*;
import org.web3d.x3d.jsail.Shape.*;
// Javadoc annotations follow, see below for source.
/**
* <p> Bench Seat for HMMWV. </p>
<p> Related links: <a href="../../../../GroundVehicles/HMMWV/BenchSeat.java">BenchSeat.java</a> source, <a href="../../../../GroundVehicles/HMMWV/BenchSeatIndex.html" target="_top">BenchSeat catalog page</a>, <a href="http://www.web3d.org/x3d/content/examples/X3dResources.html" target="_blank">X3D Resources</a>, <a href="http://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html" target="_blank">X3D Scene Authoring Hints</a>, and <a href="http://www.web3d.org/x3d/content/X3dTooltips.html" target="_blank">X3D Tooltips</a>. </p>
<table style="color:black; border:0px solid; border-spacing:10px 0px;" summary="Scene Metadata">
<tr style="background-color:silver; border-color:silver;">
<td style="text-align:center; padding:10px 0px;"><i>meta tags</i></td>
<td style="text-align:left; padding:10px 0px;">&nbsp; Document Metadata </td>
</tr>
<tr>
<td style="text-align:right; vertical-align: text-top;"> <i> title </i> </td>
<td> <a href="../../../../GroundVehicles/HMMWV/BenchSeat.x3d">BenchSeat.x3d</a> </td>
</tr>
<tr>
<td style="text-align:right; vertical-align: text-top;"> <i> description </i> </td>
<td> Bench Seat for HMMWV </td>
</tr>
<tr>
<td style="text-align:right; vertical-align: text-top;"> <i> creator </i> </td>
<td> Etsuko Lippi </td>
</tr>
<tr>
<td style="text-align:right; vertical-align: text-top;"> <i> modified by </i> </td>
<td> Jeffrey Weekley </td>
</tr>
<tr>
<td style="text-align:right; vertical-align: text-top;"> <i> created </i> </td>
<td> 18 September 2001 </td>
</tr>
<tr>
<td style="text-align:right; vertical-align: text-top;"> <i> modified </i> </td>
<td> 27 March 2016 </td>
</tr>
<tr>
<td style="text-align:right; vertical-align: text-top;"> <i> generator </i> </td>
<td> X3D-Edit 3.2, <a href="https://savage.nps.edu/X3D-Edit" target="_blank">https://savage.nps.edu/X3D-Edit</a> </td>
</tr>
<tr>
<td style="text-align:right; vertical-align: text-top;"> <i> identifier </i> </td>
<td> <a href="https://savage.nps.edu/Savage/GroundVehicles/HMMWV/BenchSeat.x3d" target="_blank">https://savage.nps.edu/Savage/GroundVehicles/HMMWV/BenchSeat.x3d</a> </td>
</tr>
<tr>
<td style="text-align:right; vertical-align: text-top;"> <i> subject </i> </td>
<td> F18 cockpit seat </td>
</tr>
<tr>
<td style="text-align:right; vertical-align: text-top;"> <i> license </i> </td>
<td> <a href="../../../../GroundVehicles/HMMWV/../../license.html">../../license.html</a> </td>
</tr>
<tr style="background-color:silver; border-color:silver;">
<td style="text-align:center;" colspan="2"> &nbsp; </td>
</tr>
</table>
<p>
This program uses the
<a href="http://www.web3d.org/specifications/java/X3DJSAIL.html" target="_blank">X3D Java Scene Access Interface Library (X3DJSAIL)</a>.
It has been produced using the
<a href="http://www.web3d.org/x3d/stylesheets/X3dToJava.xslt" target="_blank">X3dToJava.xslt</a>
stylesheet to create Java source code from an <code>.x3d</code> model.
</p>
* @author Etsuko Lippi
*/
public class BenchSeat
{
/** Default constructor to create this object. */
public BenchSeat ()
{
initialize();
}
/** Create and initialize the X3D model for this object. */
public final void initialize()
{
x3dModel = new X3DObject().setProfile(X3DObject.PROFILE_IMMERSIVE).setVersion(X3DObject.VERSION_3_0)
.setHead(new headObject()
.addMeta(new metaObject().setName(metaObject.NAME_TITLE ).setContent("BenchSeat.x3d"))
.addMeta(new metaObject().setName(metaObject.NAME_DESCRIPTION).setContent("Bench Seat for HMMWV"))
.addMeta(new metaObject().setName(metaObject.NAME_CREATOR ).setContent("Etsuko Lippi"))
.addMeta(new metaObject().setName("modified by").setContent("Jeffrey Weekley"))
.addMeta(new metaObject().setName(metaObject.NAME_CREATED ).setContent("18 September 2001"))
.addMeta(new metaObject().setName(metaObject.NAME_MODIFIED ).setContent("27 March 2016"))
.addMeta(new metaObject().setName(metaObject.NAME_GENERATOR ).setContent("X3D-Edit 3.2, https://savage.nps.edu/X3D-Edit"))
.addMeta(new metaObject().setName(metaObject.NAME_IDENTIFIER ).setContent("https://savage.nps.edu/Savage/GroundVehicles/HMMWV/BenchSeat.x3d"))
.addMeta(new metaObject().setName(metaObject.NAME_SUBJECT ).setContent("F18 cockpit seat"))
.addMeta(new metaObject().setName(metaObject.NAME_LICENSE ).setContent("../../license.html")))
.setScene(new SceneObject()
.addChild(new BackgroundObject().setGroundAngle(new float[] {1.309f,1.5702f}).setGroundColor(new MFColorObject(new float[] {0.5f,0.3f,0.3f,0.5f,0.3f,0.3f,0.5f,0.4f,0.4f})).setSkyAngle(new float[] {1.309f,1.572f}).setSkyColor(new MFColorObject(new float[] {0.0f,0.2f,0.7f,0.0f,0.5f,1.0f,1.0f,1.0f,1.0f})))
.addChild(new TransformObject().setRotation(0.0f,0.0f,1.0f,-0.09f)
.addChild(new TransformObject().setRotation(0.0f,1.0f,0.0f,1.57f).setScale(2.66f,0.4f,0.5f)
.addChild(new GroupObject()
.addChild(new TransformObject().setTranslation(0.0f,0.0f,-0.26f)
.addChild(new ShapeObject()
.setAppearance(new AppearanceObject("SeatHolder")
.setMaterial(new MaterialObject().setDiffuseColor(0.1f,0.1f,0.1f)))
.setGeometry(new BoxObject().setSize(1.8f,0.5f,2.5f))))
.addChild(new TransformObject().setTranslation(0.0f,1.5f,0.75f)
.addChild(new ShapeObject()
.setAppearance(new AppearanceObject().setUSE("SeatHolder"))
.setGeometry(new BoxObject().setSize(1.8f,2.7f,0.5f))))
.addChild(new TransformObject()
.addChild(new TransformObject().setRotation(-1.0f,0.0f,0.0f,4.7f).setScale(0.8f,0.8f,1.2f).setTranslation(-2.15f,1.4f,0.8f)
.addChild(new ShapeObject()
.setAppearance(new AppearanceObject().setUSE("SeatHolder"))
.setGeometry(new ExtrusionObject("backHolder").setCreaseAngle(2.5f).setCrossSection(new MFVec2fObject(new float[] {0.00f,1.30f,.494f,1.196f,.923f,.923f,1.196f,.494f,1.30f,0.00f,1.196f,-.494f,.923f,-.923f,.494f,-1.196f,0.00f,-1.30f})).setScale(new MFVec2fObject(new float[] {0.45f,0.9f,0.1f,0.8f,0.1f,0.8f,0.45f,0.9f})).setSolid(false).setSpine(new MFVec3fObject(new float[] {1.7f,-0.4f,0.0f,2.5f,-0.4f,0.0f,3.0f,-0.4f,0.0f,3.7f,-0.4f,0.0f}))))))
.addChild(new TransformObject()
.addChild(new TransformObject().setRotation(1.0f,0.0f,0.0f,3.14f).setScale(0.35f,0.8f,1.0f).setTranslation(-1.48f,-0.13f,-0.25f)
.addChild(new ShapeObject()
.setAppearance(new AppearanceObject().setUSE("SeatHolder"))
.setGeometry(new ExtrusionObject("seatLeft").setCreaseAngle(2.5f).setCrossSection(new MFVec2fObject(new float[] {0.00f,1.30f,.494f,1.196f,.923f,.923f,1.196f,.494f,1.30f,0.00f,1.196f,-.494f,.923f,-.923f,.494f,-1.196f,0.00f,-1.30f})).setScale(new MFVec2fObject(new float[] {0.1f,0.8f,0.4f,0.8f,0.4f,0.8f,0.1f,0.8f})).setSolid(false).setSpine(new MFVec3fObject(new float[] {1.7f,-0.4f,0.0f,2.5f,-0.4f,0.0f,3.0f,-0.4f,0.0f,3.7f,-0.4f,0.0f}))))))
.addChild(new TransformObject()
.addChild(new TransformObject().setRotation(1.0f,0.0f,0.0f,3.14f).setScale(0.35f,0.8f,1.0f).setTranslation(-0.4f,-0.13f,-0.25f)
.addChild(new ShapeObject()
.setAppearance(new AppearanceObject().setUSE("SeatHolder"))
.setGeometry(new ExtrusionObject("seatRight").setCreaseAngle(2.5f).setCrossSection(new MFVec2fObject(new float[] {0.00f,1.30f,.494f,1.196f,.923f,.923f,1.196f,.494f,1.30f,0.00f,1.196f,-.494f,.923f,-.923f,.494f,-1.196f,0.00f,-1.30f})).setScale(new MFVec2fObject(new float[] {0.1f,0.8f,0.4f,0.8f,0.4f,0.8f,0.1f,0.8f})).setSolid(false).setSpine(new MFVec3fObject(new float[] {1.7f,-0.4f,0.0f,2.5f,-0.4f,0.0f,3.0f,-0.4f,0.0f,3.7f,-0.4f,0.0f}))))))))));
}
// end of initialize() method
/** The initialized model object, created within initialize() method. */
private X3DObject x3dModel;
/** Provide a
* <a href="https://dzone.com/articles/java-copy-shallow-vs-deep-in-which-you-will-swim" target="_blank">shallow copy</a>
* of the X3D model.
* @see <a href="http://www.web3d.org/specifications/java/javadoc/org/web3d/x3d/jsail/Core/X3DObject.html">X3DObject</a>
* @return BenchSeat model
*/
public X3DObject getX3dModel()
{
return x3dModel;
}
/** Default main() method provided for test purposes, uses CommandLine to set global ConfigurationProperties for this object.
* @param args array of input parameters, provided as arguments
* @see <a href="http://www.web3d.org/specifications/java/javadoc/org/web3d/x3d/jsail/Core/X3DObject.html#handleArguments-java.lang.String:A-">X3DObject.handleArguments(args)</a>
* @see <a href="http://www.web3d.org/specifications/java/javadoc/org/web3d/x3d/jsail/Core/X3DObject.html#validationReport--">X3DObject.validationReport()</a>
* @see <a href="http://www.web3d.org/specifications/java/javadoc/org/web3d/x3d/jsail/CommandLine.html">CommandLine</a>
* @see <a href="http://www.web3d.org/specifications/java/javadoc/org/web3d/x3d/jsail/CommandLine.html#USAGE">CommandLine.USAGE</a>
* @see <a href="http://www.web3d.org/specifications/java/javadoc/org/web3d/x3d/jsail/ConfigurationProperties.html">ConfigurationProperties</a>
*/
public static void main(String args[])
{
X3DObject thisExampleX3dObject = new BenchSeat().getX3dModel();
boolean hasArguments = (args != null) && (args.length > 0);
boolean validate = true; // default
boolean argumentsLoadNewModel = false;
String fileName = new String();
if (args != null)
{
for (String arg : args)
{
if (arg.toLowerCase().startsWith("-v") || arg.toLowerCase().contains("validate"))
{
validate = true; // making sure
}
if (arg.toLowerCase().endsWith(X3DObject.FILE_EXTENSION_X3D) ||
arg.toLowerCase().endsWith(X3DObject.FILE_EXTENSION_CLASSICVRML) ||
arg.toLowerCase().endsWith(X3DObject.FILE_EXTENSION_X3DB) ||
arg.toLowerCase().endsWith(X3DObject.FILE_EXTENSION_VRML97) ||
arg.toLowerCase().endsWith(X3DObject.FILE_EXTENSION_EXI) ||
arg.toLowerCase().endsWith(X3DObject.FILE_EXTENSION_GZIP) ||
arg.toLowerCase().endsWith(X3DObject.FILE_EXTENSION_ZIP) ||
arg.toLowerCase().endsWith(X3DObject.FILE_EXTENSION_HTML) ||
arg.toLowerCase().endsWith(X3DObject.FILE_EXTENSION_XHTML))
{
argumentsLoadNewModel = true;
fileName = arg;
}
}
}
if (argumentsLoadNewModel)
System.out.println("WARNING: \"BenchSeat\" model invocation is attempting to load file \"" + fileName + "\" instead of simply validating itself... file loading ignored.");
else if (hasArguments) // if no arguments provided, this method produces usage warning
thisExampleX3dObject.handleArguments(args);
if (validate)
{
System.out.print("Java program \"BenchSeat\" self-validation test results: ");
String validationResults = thisExampleX3dObject.validationReport();
System.out.println(validationResults);
}
}
}
package Savage.GroundVehicles.HMMWV;
/*
Copyright (c) 1995-2019 held by the author(s). All rights reserved.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions
are met:
* Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimer
in the documentation and/or other materials provided with the
distribution.
* Neither the name of the Web3D Consortium (http://www.web3D.org)
nor the names of its contributors may be used to endorse or
promote products derived from this software without specific
prior written permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
POSSIBILITY OF SUCH DAMAGE.
*/
import java.util.*;
import org.web3d.x3d.jsail.Core.*;
import org.web3d.x3d.jsail.EnvironmentalEffects.*;
import org.web3d.x3d.jsail.fields.*;
import org.web3d.x3d.jsail.Geometry3D.*;
import org.web3d.x3d.jsail.Grouping.*;
import org.web3d.x3d.jsail.Navigation.*;
import org.web3d.x3d.jsail.Shape.*;
import org.web3d.x3d.jsail.Texturing.*;
// Javadoc annotations follow, see below for source.
/**
* <p> Large Side Mirrors for Large Utility Vehicles. </p>
<p> Related links: <a href="../../../../GroundVehicles/HMMWV/DriverSideLargeSideMirror.java">DriverSideLargeSideMirror.java</a> source, <a href="../../../../GroundVehicles/HMMWV/DriverSideLargeSideMirrorIndex.html" target="_top">DriverSideLargeSideMirror catalog page</a>, <a href="http://www.web3d.org/x3d/content/examples/X3dResources.html" target="_blank">X3D Resources</a>, <a href="http://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html" target="_blank">X3D Scene Authoring Hints</a>, and <a href="http://www.web3d.org/x3d/content/X3dTooltips.html" target="_blank">X3D Tooltips</a>. </p>
<table style="color:black; border:0px solid; border-spacing:10px 0px;" summary="Scene Metadata">
<tr style="background-color:silver; border-color:silver;">
<td style="text-align:center; padding:10px 0px;"><i>meta tags</i></td>
<td style="text-align:left; padding:10px 0px;">&nbsp; Document Metadata </td>
</tr>
<tr>
<td style="text-align:right; vertical-align: text-top;"> <i> title </i> </td>
<td> <a href="../../../../GroundVehicles/HMMWV/DriverSideLargeSideMirror.x3d">DriverSideLargeSideMirror.x3d</a> </td>
</tr>
<tr>
<td style="text-align:right; vertical-align: text-top;"> <i> description </i> </td>
<td> Large Side Mirrors for Large Utility Vehicles </td>
</tr>
<tr>
<td style="text-align:right; vertical-align: text-top;"> <i> creator </i> </td>
<td> Jeffrey Weekley </td>
</tr>
<tr>
<td style="text-align:right; vertical-align: text-top;"> <i> created </i> </td>
<td> 12 December 2001 </td>
</tr>
<tr>
<td style="text-align:right; vertical-align: text-top;"> <i> modified </i> </td>
<td> 14 January 2014 </td>
</tr>
<tr>
<td style="text-align:right; vertical-align: text-top;"> <i> identifier </i> </td>
<td> <a href="https://savage.nps.edu/Savage/GroundVehicles/HMMWV/DriverSideLargeSideMirror.x3d" target="_blank">https://savage.nps.edu/Savage/GroundVehicles/HMMWV/DriverSideLargeSideMirror.x3d</a> </td>
</tr>
<tr>
<td style="text-align:right; vertical-align: text-top;"> <i> generator </i> </td>
<td> X3D-Edit 3.2, <a href="https://savage.nps.edu/X3D-Edit" target="_blank">https://savage.nps.edu/X3D-Edit</a> </td>
</tr>
<tr>
<td style="text-align:right; vertical-align: text-top;"> <i> license </i> </td>
<td> <a href="../../../../GroundVehicles/HMMWV/../../license.html">../../license.html</a> </td>
</tr>
<tr style="background-color:silver; border-color:silver;">
<td style="text-align:center;" colspan="2"> &nbsp; </td>
</tr>
</table>
<p>
This program uses the
<a href="http://www.web3d.org/specifications/java/X3DJSAIL.html" target="_blank">X3D Java Scene Access Interface Library (X3DJSAIL)</a>.
It has been produced using the
<a href="http://www.web3d.org/x3d/stylesheets/X3dToJava.xslt" target="_blank">X3dToJava.xslt</a>
stylesheet to create Java source code from an <code>.x3d</code> model.
</p>
* @author Jeffrey Weekley
*/
public class DriverSideLargeSideMirror
{
/** Default constructor to create this object. */
public DriverSideLargeSideMirror ()
{
initialize();
}
/** Create and initialize the X3D model for this object. */
public final void initialize()
{
x3dModel = new X3DObject().setProfile(X3DObject.PROFILE_IMMERSIVE).setVersion(X3DObject.VERSION_3_0)
.setHead(new headObject()
.addMeta(new metaObject().setName(metaObject.NAME_TITLE ).setContent("DriverSideLargeSideMirror.x3d"))
.addMeta(new metaObject().setName(metaObject.NAME_DESCRIPTION).setContent("Large Side Mirrors for Large Utility Vehicles"))
.addMeta(new metaObject().setName(metaObject.NAME_CREATOR ).setContent("Jeffrey Weekley"))
.addMeta(new metaObject().setName(metaObject.NAME_CREATED ).setContent("12 December 2001"))
.addMeta(new metaObject().setName(metaObject.NAME_MODIFIED ).setContent("14 January 2014"))
.addMeta(new metaObject().setName(metaObject.NAME_IDENTIFIER ).setContent("https://savage.nps.edu/Savage/GroundVehicles/HMMWV/DriverSideLargeSideMirror.x3d"))
.addMeta(new metaObject().setName(metaObject.NAME_GENERATOR ).setContent("X3D-Edit 3.2, https://savage.nps.edu/X3D-Edit"))
.addMeta(new metaObject().setName(metaObject.NAME_LICENSE ).setContent("../../license.html")))
.setScene(new SceneObject()
.addChild(new BackgroundObject().setSkyColor(new MFColorObject(new float[] {0.5f,0.75f,0.75f})))
.addChild(new GroupObject("MirrorAssembly")
.addChild(new TransformObject().setRotation(0.0f,1.0f,0.0f,0.385f)
.addChild(new TransformObject().setRotation(1.0f,0.0f,0.0f,1.57f)
.addChild(new ShapeObject()
.setGeometry(new ExtrusionObject().setCreaseAngle(3.14f).setCrossSection(new MFVec2fObject(new float[] {-1.0f,-1.66f,-1.0f,1.66f,1.0f,1.66f,1.0f,-1.66f,-1.0f,-1.66f})).setScale(new MFVec2fObject(new float[] {1.0f,1.0f,1.0f,1.0f,1.0f,1.0f,0.1f,0.1f})).setSolid(false).setSpine(new MFVec3fObject(new float[] {0.0f,0.0f,0.0f,0.0f,0.1f,0.0f,0.0f,0.125f,0.0f,0.0f,0.15f,0.0f})))
.setAppearance(new AppearanceObject("Tan")
.setMaterial(new MaterialObject().setDiffuseColor(0.8f,0.7f,0.7f)))))
.addChild(new LODObject().setRange(new float[] {40.0f,100.0f})
.addChild(new TransformObject()
.addChild(new ShapeObject()
.setGeometry(new BoxObject().setSize(1.9f,3.0f,0.125f))
.setAppearance(new AppearanceObject()
.setTexture(new MovieTextureObject().setLoop(true).setUrl(new MFStringObject("\"Highway.avi\" \"https://savage.nps.edu/Savage/GroundVehicles/HMMWV/Highway.avi\""))))))
.addChild(new TransformObject()
.addChild(new ShapeObject()
.setGeometry(new BoxObject().setSize(1.9f,3.0f,0.125f))
.setAppearance(new AppearanceObject()
.setMaterial(new MaterialObject().setDiffuseColor(0.15f,0.2f,0.2f)))))
.addChild(new WorldInfoObject())))
.addChild(new TransformObject("Support")
.addChild(new ShapeObject()
.setGeometry(new ExtrusionObject().setCreaseAngle(3.14f).setCrossSection(new MFVec2fObject(new float[] {0.1f,0.0f,0.092f,-0.038f,0.071f,-0.071f,0.038f,-0.092f,0.0f,-0.10f,-0.038f,-0.092f,-0.071f,-0.071f,-0.092f,-0.038f,-0.10f,0.0f,-0.092f,0.038f,-0.071f,0.071f,-0.038f,0.092f,0.0f,0.10f,0.038f,0.092f,0.071f,0.071f,0.092f,0.038f,0.10f,0.0f})).setScale(new MFVec2fObject(new float[] {0.6f,0.6f,0.6f,0.6f,0.6f,0.6f,0.6f,0.6f,0.6f,0.6f,0.6f,0.6f,0.6f,0.6f,0.6f,0.6f})).setSpine(new MFVec3fObject(new float[] {-1.6f,-1.9f,0.0f,0.9f,-1.9f,0.0f,1.1f,-1.8f,0.0f,1.2f,-1.6f,0.0f,1.2f,1.6f,0.0f,1.1f,1.8f,0.0f,0.9f,1.9f,0.0f,-1.6f,1.9f,0.0f})))
.setAppearance(new AppearanceObject().setUSE("Tan"))))
.addChild(new TransformObject("CenterBar")
.addChild(new ShapeObject()
.setGeometry(new CylinderObject().setHeight(3.8f).setRadius(0.04f))
.setAppearance(new AppearanceObject().setUSE("Tan"))))));
}
// end of initialize() method
/** The initialized model object, created within initialize() method. */
private X3DObject x3dModel;
/** Provide a
* <a href="https://dzone.com/articles/java-copy-shallow-vs-deep-in-which-you-will-swim" target="_blank">shallow copy</a>
* of the X3D model.
* @see <a href="http://www.web3d.org/specifications/java/javadoc/org/web3d/x3d/jsail/Core/X3DObject.html">X3DObject</a>
* @return DriverSideLargeSideMirror model
*/
public X3DObject getX3dModel()
{
return x3dModel;
}
/** Default main() method provided for test purposes, uses CommandLine to set global ConfigurationProperties for this object.
* @param args array of input parameters, provided as arguments
* @see <a href="http://www.web3d.org/specifications/java/javadoc/org/web3d/x3d/jsail/Core/X3DObject.html#handleArguments-java.lang.String:A-">X3DObject.handleArguments(args)</a>
* @see <a href="http://www.web3d.org/specifications/java/javadoc/org/web3d/x3d/jsail/Core/X3DObject.html#validationReport--">X3DObject.validationReport()</a>
* @see <a href="http://www.web3d.org/specifications/java/javadoc/org/web3d/x3d/jsail/CommandLine.html">CommandLine</a>
* @see <a href="http://www.web3d.org/specifications/java/javadoc/org/web3d/x3d/jsail/CommandLine.html#USAGE">CommandLine.USAGE</a>
* @see <a href="http://www.web3d.org/specifications/java/javadoc/org/web3d/x3d/jsail/ConfigurationProperties.html">ConfigurationProperties</a>
*/
public static void main(String args[])
{
X3DObject thisExampleX3dObject = new DriverSideLargeSideMirror().getX3dModel();
boolean hasArguments = (args != null) && (args.length > 0);
boolean validate = true; // default
boolean argumentsLoadNewModel = false;
String fileName = new String();
if (args != null)
{
for (String arg : args)
{
if (arg.toLowerCase().startsWith("-v") || arg.toLowerCase().contains("validate"))
{
validate = true; // making sure
}
if (arg.toLowerCase().endsWith(X3DObject.FILE_EXTENSION_X3D) ||
arg.toLowerCase().endsWith(X3DObject.FILE_EXTENSION_CLASSICVRML) ||
arg.toLowerCase().endsWith(X3DObject.FILE_EXTENSION_X3DB) ||
arg.toLowerCase().endsWith(X3DObject.FILE_EXTENSION_VRML97) ||
arg.toLowerCase().endsWith(X3DObject.FILE_EXTENSION_EXI) ||
arg.toLowerCase().endsWith(X3DObject.FILE_EXTENSION_GZIP) ||
arg.toLowerCase().endsWith(X3DObject.FILE_EXTENSION_ZIP) ||
arg.toLowerCase().endsWith(X3DObject.FILE_EXTENSION_HTML) ||
arg.toLowerCase().endsWith(X3DObject.FILE_EXTENSION_XHTML))
{
argumentsLoadNewModel = true;
fileName = arg;
}
}
}
if (argumentsLoadNewModel)
System.out.println("WARNING: \"DriverSideLargeSideMirror\" model invocation is attempting to load file \"" + fileName + "\" instead of simply validating itself... file loading ignored.");
else if (hasArguments) // if no arguments provided, this method produces usage warning
thisExampleX3dObject.handleArguments(args);
if (validate)
{
System.out.print("Java program \"DriverSideLargeSideMirror\" self-validation test results: ");
String validationResults = thisExampleX3dObject.validationReport();
System.out.println(validationResults);
}
}
}
This diff is collapsed.
package Savage.GroundVehicles.HMMWV;
/*
Copyright (c) 1995-2019 held by the author(s). All rights reserved.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions
are met:
* Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimer
in the documentation and/or other materials provided with the
distribution.
* Neither the name of the Web3D Consortium (http://www.web3D.org)
nor the names of its contributors may be used to endorse or
promote products derived from this software without specific
prior written permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
POSSIBILITY OF SUCH DAMAGE.
*/
import java.util.*;
import org.web3d.x3d.jsail.Core.*;
import org.web3d.x3d.jsail.EnvironmentalEffects.*;
import org.web3d.x3d.jsail.fields.*;
import org.web3d.x3d.jsail.Geometry3D.*;
import org.web3d.x3d.jsail.Grouping.*;
import org.web3d.x3d.jsail.Navigation.*;
import org.web3d.x3d.jsail.Networking.*;
import org.web3d.x3d.jsail.Shape.*;
// Javadoc annotations follow, see below for source.
/**
* <p> Highly Mobile Muliti-purpose Wheeled Vehicle (HMMWV). </p>
<p> Related links: <a href="../../../../GroundVehicles/HMMWV/HMMWV.java">HMMWV.java</a> source, <a href="../../../../GroundVehicles/HMMWV/HMMWVIndex.html" target="_top">HMMWV catalog page</a>, <a href="http://www.web3d.org/x3d/content/examples/X3dResources.html" target="_blank">X3D Resources</a>, <a href="http://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html" target="_blank">X3D Scene Authoring Hints</a>, and <a href="http://www.web3d.org/x3d/content/X3dTooltips.html" target="_blank">X3D Tooltips</a>. </p>
<table style="color:black; border:0px solid; border-spacing:10px 0px;" summary="Scene Metadata">
<tr style="background-color:silver; border-color:silver;">
<td style="text-align:center; padding:10px 0px;"><i>meta tags</i></td>
<td style="text-align:left; padding:10px 0px;">&nbsp; Document Metadata </td>
</tr>
<tr>
<td style="text-align:right; vertical-align: text-top;"> <i> title </i> </td>
<td> <a href="../../../../GroundVehicles/HMMWV/HMMWV.x3d">HMMWV.x3d</a> </td>
</tr>
<tr>
<td style="text-align:right; vertical-align: text-top;"> <i> description </i> </td>
<td> Highly Mobile Muliti-purpose Wheeled Vehicle (HMMWV) </td>
</tr>
<tr>
<td style="text-align:right; vertical-align: text-top;"> <i> creator </i> </td>
<td> Jeffrey Weekley </td>
</tr>
<tr>
<td style="text-align:right; vertical-align: text-top;"> <i> created </i> </td>
<td> 3 December 2001 </td>
</tr>
<tr>
<td style="text-align:right; vertical-align: text-top;"> <i> modified </i> </td>
<td> 12 January 2014 </td>
</tr>
<tr>
<td style="text-align:right; vertical-align: text-top;"> <i> identifier </i> </td>
<td> <a href="https://savage.nps.edu/Savage/GroundVehicles/HMMWV/HMMWV.x3d" target="_blank">https://savage.nps.edu/Savage/GroundVehicles/HMMWV/HMMWV.x3d</a> </td>
</tr>
<tr>
<td style="text-align:right; vertical-align: text-top;"> <i> generator </i> </td>
<td> X3D-Edit 3.2, <a href="https://savage.nps.edu/X3D-Edit" target="_blank">https://savage.nps.edu/X3D-Edit</a> </td>
</tr>
<tr>
<td style="text-align:right; vertical-align: text-top;"> <i> license </i> </td>
<td> <a href="../../../../GroundVehicles/HMMWV/../../license.html">../../license.html</a> </td>
</tr>
<tr style="background-color:silver; border-color:silver;">
<td style="text-align:center;" colspan="2"> &nbsp; </td>
</tr>
</table>
<p>
This program uses the
<a href="http://www.web3d.org/specifications/java/X3DJSAIL.html" target="_blank">X3D Java Scene Access Interface Library (X3DJSAIL)</a>.
It has been produced using the
<a href="http://www.web3d.org/x3d/stylesheets/X3dToJava.xslt" target="_blank">X3dToJava.xslt</a>
stylesheet to create Java source code from an <code>.x3d</code> model.
</p>
* @author Jeffrey Weekley
*/
public class HMMWV
{
/** Default constructor to create this object. */
public HMMWV ()
{
initialize();
}
/** Create and initialize the X3D model for this object. */
public final void initialize()
{
x3dModel = new X3DObject().setProfile(X3DObject.PROFILE_IMMERSIVE).setVersion(X3DObject.VERSION_3_0)
.setHead(new headObject()
.addMeta(new metaObject().setName(metaObject.NAME_TITLE ).setContent("HMMWV.x3d"))
.addMeta(new metaObject().setName(metaObject.NAME_DESCRIPTION).setContent("Highly Mobile Muliti-purpose Wheeled Vehicle (HMMWV)"))
.addMeta(new metaObject().setName(metaObject.NAME_CREATOR ).setContent("Jeffrey Weekley"))
.addMeta(new metaObject().setName(metaObject.NAME_CREATED ).setContent("3 December 2001"))
.addMeta(new metaObject().setName(metaObject.NAME_MODIFIED ).setContent("12 January 2014"))
.addMeta(new metaObject().setName(metaObject.NAME_IDENTIFIER ).setContent("https://savage.nps.edu/Savage/GroundVehicles/HMMWV/HMMWV.x3d"))
.addMeta(new metaObject().setName(metaObject.NAME_GENERATOR ).setContent("X3D-Edit 3.2, https://savage.nps.edu/X3D-Edit"))
.addMeta(new metaObject().setName(metaObject.NAME_LICENSE ).setContent("../../license.html")))
.setScene(new SceneObject()
.addChild(new BackgroundObject().setSkyColor(new MFColorObject(new float[] {0.9f,0.9f,1.0f})))
.addChild(new ViewpointObject().setDescription("HMMWV").setOrientation(-.167f,.975f,.145f,1.09f).setPosition(9.0f,1.5f,3.8f))
.addChild(new ViewpointObject().setDescription("Passenger Side").setOrientation(-.962f,-.272f,-0.017f,.1287f).setPosition(-.6f,1.4f,10.0f))
.addChild(new ViewpointObject().setDescription("Rear View").setOrientation(0.0f,1.0f,0.0f,4.2868f).setPosition(-10.4f,.1f,-3.7f))
.addChild(new ViewpointObject().setDescription("From Above 20M").setOrientation(-.568f,-.598f,-.565f,2.0593f).setPosition(-1.5f,20.0f,0.0f))
.addChild(new ViewpointObject().setDescription("Driver's Seat").setFieldOfView(1f).setOrientation(0.0f,1.0f,0.0f,4.66f).setPosition(-.1f,1.1f,-1.5f))
.addChild(new GroupObject("HMMWV")
.addChild(new GroupObject("FrameInline")
.addChild(new TransformObject().setRotation(0.0f,1.0f,0.0f,3.14f)
.addChild(new InlineObject().setUrl(new MFStringObject("\"Frame.wrl\" \"https://savage.nps.edu/Savage/GroundVehicles/HMMWV/Frame.wrl\" \"Frame.x3d\" \"https://savage.nps.edu/Savage/GroundVehicles/HMMWV/Frame.x3d\"")))))
.addChild(new GroupObject("AntennaInline")
.addChild(new LODObject().setRange(new float[] {35.0f})
.addChild(new TransformObject().setScale(0.5f,0.8f,0.5f).setTranslation(-4.8125f,0.7f,-2.2825f)
.addChild(new InlineObject().setUrl(new MFStringObject("\"../../AmphibiousVehicles/AAV/RearAntenna.wrl\" \"https://savage.nps.edu/Savage/AmphibiousVehicles/AAV/RearAntenna.wrl\" \"../../AmphibiousVehicles/AAV/RearAntenna.x3d\" \"https://savage.nps.edu/Savage/AmphibiousVehicles/AAV/RearAntenna.x3d\""))))
.addChild(new WorldInfoObject())))
.addChild(new GroupObject("SideMirrorsLOD")
.addChild(new LODObject().setRange(new float[] {150.0f})
.addChild(new GroupObject("SideMirrors")
.addChild(new TransformObject().setRotation(0.0f,1.0f,0.0f,1.57f).setScale(0.25f,0.25f,0.25f).setTranslation(1.925f,1.0f,-2.75f)
.addChild(new InlineObject().setUrl(new MFStringObject("\"DriverSideLargeSideMirror.wrl\" \"../../GroundVehicles/HMMWV/DriverSideLargeSideMirror.wrl\" \"https://savage.nps.edu/Savage/GroundVehicles/HMMWV/DriverSideLargeSideMirror.wrl\" \"DriverSideLargeSideMirror.x3d\" \"../../GroundVehicles/HMMWV/DriverSideLargeSideMirror.x3d\" \"https://savage.nps.edu/Savage/GroundVehicles/HMMWV/DriverSideLargeSideMirror.x3d\""))))
.addChild(new TransformObject().setRotation(0.71f,-0.0f,-0.71f,3.14f).setScale(0.25f,0.25f,0.25f).setTranslation(1.925f,1.0f,2.75f)
.addChild(new InlineObject().setUrl(new MFStringObject("\"PassengerSideLargeSideMirror.wrl\" \"https://savage.nps.edu/Savage/GroundVehicles/HMMWV/PassengerSideLargeSideMirror.wrl\" \"PassengerSideLargeSideMirror.x3d\" \"https://savage.nps.edu/Savage/GroundVehicles/HMMWV/PassengerSideLargeSideMirror.x3d\"")))))
.addChild(new WorldInfoObject())))
.addChild(new GroupObject("SuspensionGroup")
.addChild(new LODObject().setRange(new float[] {100.0f})
.addChild(new TransformObject("SuspensionInline").setScale(0.75f,0.75f,0.75f).setTranslation(3.4f,-0.25f,-1.2f)
.addChild(new TransformObject("Suspension")
.addChild(new InlineObject().setUrl(new MFStringObject("\"Suspension.wrl\" \"../../GroundVehicles/HMMWV/Suspension.wrl\" \"https://savage.nps.edu/Savage/GroundVehicles/HMMWV/Suspension.wrl\" \"Suspension.x3d\" \"../../GroundVehicles/HMMWV/Suspension.x3d\" \"https://savage.nps.edu/Savage/GroundVehicles/HMMWV/Suspension.x3d\""))))
.addChild(new TransformObject().setTranslation(-9.0f,0.0f,0.0f)
.addChild(new TransformObject().setUSE("Suspension"))))
.addChild(new TransformObject("TireLODs").setRotation(1.0f,0.0f,0.0f,1.57f).setTranslation(3.4f,-1.0f,0.0f)
.addChild(new TransformObject("TireLOD")
.addChild(new ShapeObject()
.setGeometry(new CylinderObject().setHeight(5f))
.setAppearance(new AppearanceObject()
.setMaterial(new MaterialObject().setDiffuseColor(0.1f,0.1f,0.1f)))))
.addChild(new TransformObject().setTranslation(-6.6f,0.0f,0.0f)
.addChild(new TransformObject().setUSE("TireLOD"))))))
.addChild(new GroupObject("Interior")
.addChild(new TransformObject("FrontSeat").setTranslation(0.5f,-0.15f,0.0f)
.addChild(new TransformObject().setRotation(0.0f,1.0f,0.0f,3.14f).setScale(1.0f,1.0f,0.9f)
.addChild(new InlineObject().setUrl(new MFStringObject("\"BenchSeat.wrl\" \"../../AmphibiousVehicles/AAV/BenchSeat.wrl\" \"https://savage.nps.edu/Savage/AmphibiousVehicles/AAV/BenchSeat.wrl\" \"../../AmphibiousVehicles/AAV/BenchSeat.x3d\" \"https://savage.nps.edu/Savage/AmphibiousVehicles/AAV/BenchSeat.x3d\""))))
.addChild(new TransformObject().setTranslation(0.0f,-0.3f,0.0f)
.addChild(new ShapeObject()
.setGeometry(new BoxObject().setSize(1.0f,0.6f,4.0f))
.setAppearance(new AppearanceObject("Tan")
.setMaterial(new MaterialObject().setDiffuseColor(0.1f,0.1f,0.1f))))))
.addChild(new TransformObject().setTranslation(-1.9f,0.0f,0.0f)
.addChild(new TransformObject().setUSE("FrontSeat")))
.addChild(new TransformObject().setRotation(0.0f,0.0f,1.0f,-0.395f)
.addChild(new TransformObject().setRotation(0.0f,1.0f,0.0f,-1.57f).setScale(1.25f,1.25f,1.25f).setTranslation(1.0f,1.1f,-1.5f)
.addChild(new InlineObject().setUrl(new MFStringObject("\"SteeringWheel.wrl\" \"../../AmphibiousVehicles/AAV/SteeringWheel.wrl\" \"https://savage.nps.edu/Savage/AmphibiousVehicles/AAV/SteeringWheel.wrl\" \"../../AmphibiousVehicles/AAV/SteeringWheel.x3d\" \"https://savage.nps.edu/Savage/AmphibiousVehicles/AAV/SteeringWheel.x3d\""))))))));
}
// end of initialize() method
/** The initialized model object, created within initialize() method. */
private X3DObject x3dModel;
/** Provide a
* <a href="https://dzone.com/articles/java-copy-shallow-vs-deep-in-which-you-will-swim" target="_blank">shallow copy</a>
* of the X3D model.
* @see <a href="http://www.web3d.org/specifications/java/javadoc/org/web3d/x3d/jsail/Core/X3DObject.html">X3DObject</a>
* @return HMMWV model
*/
public X3DObject getX3dModel()
{
return x3dModel;
}
/** Default main() method provided for test purposes, uses CommandLine to set global ConfigurationProperties for this object.
* @param args array of input parameters, provided as arguments
* @see <a href="http://www.web3d.org/specifications/java/javadoc/org/web3d/x3d/jsail/Core/X3DObject.html#handleArguments-java.lang.String:A-">X3DObject.handleArguments(args)</a>
* @see <a href="http://www.web3d.org/specifications/java/javadoc/org/web3d/x3d/jsail/Core/X3DObject.html#validationReport--">X3DObject.validationReport()</a>
* @see <a href="http://www.web3d.org/specifications/java/javadoc/org/web3d/x3d/jsail/CommandLine.html">CommandLine</a>
* @see <a href="http://www.web3d.org/specifications/java/javadoc/org/web3d/x3d/jsail/CommandLine.html#USAGE">CommandLine.USAGE</a>
* @see <a href="http://www.web3d.org/specifications/java/javadoc/org/web3d/x3d/jsail/ConfigurationProperties.html">ConfigurationProperties</a>
*/
public static void main(String args[])
{
X3DObject thisExampleX3dObject = new HMMWV().getX3dModel();
boolean hasArguments = (args != null) && (args.length > 0);
boolean validate = true; // default
boolean argumentsLoadNewModel = false;
String fileName = new String();
if (args != null)
{
for (String arg : args)
{
if (arg.toLowerCase().startsWith("-v") || arg.toLowerCase().contains("validate"))
{
validate = true; // making sure
}
if (arg.toLowerCase().endsWith(X3DObject.FILE_EXTENSION_X3D) ||
arg.toLowerCase().endsWith(X3DObject.FILE_EXTENSION_CLASSICVRML) ||
arg.toLowerCase().endsWith(X3DObject.FILE_EXTENSION_X3DB) ||
arg.toLowerCase().endsWith(X3DObject.FILE_EXTENSION_VRML97) ||
arg.toLowerCase().endsWith(X3DObject.FILE_EXTENSION_EXI) ||
arg.toLowerCase().endsWith(X3DObject.FILE_EXTENSION_GZIP) ||
arg.toLowerCase().endsWith(X3DObject.FILE_EXTENSION_ZIP) ||
arg.toLowerCase().endsWith(X3DObject.FILE_EXTENSION_HTML) ||
arg.toLowerCase().endsWith(X3DObject.FILE_EXTENSION_XHTML))
{
argumentsLoadNewModel = true;
fileName = arg;
}
}
}
if (argumentsLoadNewModel)
System.out.println("WARNING: \"HMMWV\" model invocation is attempting to load file \"" + fileName + "\" instead of simply validating itself... file loading ignored.");
else if (hasArguments) // if no arguments provided, this method produces usage warning
thisExampleX3dObject.handleArguments(args);
if (validate)
{
System.out.print("Java program \"HMMWV\" self-validation test results: ");
String validationResults = thisExampleX3dObject.validationReport();
System.out.println(validationResults);
}
}
}
package Savage.GroundVehicles.HMMWV;
/*
Copyright (c) 1995-2019 held by the author(s). All rights reserved.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions
are met:
* Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimer
in the documentation and/or other materials provided with the
distribution.
* Neither the name of the Web3D Consortium (http://www.web3D.org)
nor the names of its contributors may be used to endorse or
promote products derived from this software without specific
prior written permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
POSSIBILITY OF SUCH DAMAGE.
*/
import java.util.*;
import org.web3d.x3d.jsail.Core.*;
import org.web3d.x3d.jsail.EnvironmentalEffects.*;
import org.web3d.x3d.jsail.fields.*;
import org.web3d.x3d.jsail.Geometry3D.*;
import org.web3d.x3d.jsail.Grouping.*;
import org.web3d.x3d.jsail.Shape.*;
import org.web3d.x3d.jsail.Texturing.*;
// Javadoc annotations follow, see below for source.
/**
* <p> Large Side Mirrors for Large Utility Vehicles. </p>
<p> Related links: <a href="../../../../GroundVehicles/HMMWV/LargeSideMirrors.java">LargeSideMirrors.java</a> source, <a href="../../../../GroundVehicles/HMMWV/LargeSideMirrorsIndex.html" target="_top">LargeSideMirrors catalog page</a>, <a href="http://www.web3d.org/x3d/content/examples/X3dResources.html" target="_blank">X3D Resources</a>, <a href="http://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html" target="_blank">X3D Scene Authoring Hints</a>, and <a href="http://www.web3d.org/x3d/content/X3dTooltips.html" target="_blank">X3D Tooltips</a>. </p>
<table style="color:black; border:0px solid; border-spacing:10px 0px;" summary="Scene Metadata">
<tr style="background-color:silver; border-color:silver;">
<td style="text-align:center; padding:10px 0px;"><i>meta tags</i></td>
<td style="text-align:left; padding:10px 0px;">&nbsp; Document Metadata </td>
</tr>
<tr>
<td style="text-align:right; vertical-align: text-top;"> <i> title </i> </td>
<td> <a href="../../../../GroundVehicles/HMMWV/LargeSideMirrors.x3d">LargeSideMirrors.x3d</a> </td>
</tr>
<tr>
<td style="text-align:right; vertical-align: text-top;"> <i> description </i> </td>
<td> Large Side Mirrors for Large Utility Vehicles </td>
</tr>
<tr>
<td style="text-align:right; vertical-align: text-top;"> <i> creator </i> </td>
<td> Jeffrey Weekley </td>
</tr>
<tr>
<td style="text-align:right; vertical-align: text-top;"> <i> created </i> </td>
<td> 12 December 2001 </td>
</tr>
<tr>
<td style="text-align:right; vertical-align: text-top;"> <i> modified </i> </td>
<td> 14 January 2014 </td>
</tr>
<tr>
<td style="text-align:right; vertical-align: text-top;"> <i> identifier </i> </td>
<td> <a href="https://savage.nps.edu/Savage/GroundVehicles/HMMWV/LargeSideMirrors.x3d" target="_blank">https://savage.nps.edu/Savage/GroundVehicles/HMMWV/LargeSideMirrors.x3d</a> </td>
</tr>
<tr>
<td style="text-align:right; vertical-align: text-top;"> <i> generator </i> </td>
<td> X3D-Edit 3.2, <a href="https://savage.nps.edu/X3D-Edit" target="_blank">https://savage.nps.edu/X3D-Edit</a> </td>
</tr>
<tr>
<td style="text-align:right; vertical-align: text-top;"> <i> license </i> </td>
<td> <a href="../../../../GroundVehicles/HMMWV/../../license.html">../../license.html</a> </td>
</tr>
<tr style="background-color:silver; border-color:silver;">
<td style="text-align:center;" colspan="2"> &nbsp; </td>
</tr>
</table>
<p>
This program uses the
<a href="http://www.web3d.org/specifications/java/X3DJSAIL.html" target="_blank">X3D Java Scene Access Interface Library (X3DJSAIL)</a>.
It has been produced using the
<a href="http://www.web3d.org/x3d/stylesheets/X3dToJava.xslt" target="_blank">X3dToJava.xslt</a>
stylesheet to create Java source code from an <code>.x3d</code> model.
</p>
* @author Jeffrey Weekley
*/
public class LargeSideMirrors
{
/** Default constructor to create this object. */
public LargeSideMirrors ()
{
initialize();
}
/** Create and initialize the X3D model for this object. */
public final void initialize()
{
x3dModel = new X3DObject().setProfile(X3DObject.PROFILE_IMMERSIVE).setVersion(X3DObject.VERSION_3_0)
.setHead(new headObject()
.addMeta(new metaObject().setName(metaObject.NAME_TITLE ).setContent("LargeSideMirrors.x3d"))
.addMeta(new metaObject().setName(metaObject.NAME_DESCRIPTION).setContent("Large Side Mirrors for Large Utility Vehicles"))
.addMeta(new metaObject().setName(metaObject.NAME_CREATOR ).setContent("Jeffrey Weekley"))
.addMeta(new metaObject().setName(metaObject.NAME_CREATED ).setContent("12 December 2001"))
.addMeta(new metaObject().setName(metaObject.NAME_MODIFIED ).setContent("14 January 2014"))
.addMeta(new metaObject().setName(metaObject.NAME_IDENTIFIER ).setContent("https://savage.nps.edu/Savage/GroundVehicles/HMMWV/LargeSideMirrors.x3d"))
.addMeta(new metaObject().setName(metaObject.NAME_GENERATOR ).setContent("X3D-Edit 3.2, https://savage.nps.edu/X3D-Edit"))
.addMeta(new metaObject().setName(metaObject.NAME_LICENSE ).setContent("../../license.html")))
.setScene(new SceneObject()
.addChild(new BackgroundObject().setSkyColor(new MFColorObject(new float[] {0.5f,0.75f,0.75f})))
.addChild(new GroupObject("MirrorAssembly")
.addChild(new TransformObject().setRotation(0.0f,1.0f,0.0f,0.385f)
.addChild(new TransformObject().setRotation(1.0f,0.0f,0.0f,1.57f)
.addChild(new ShapeObject()
.setGeometry(new ExtrusionObject().setCreaseAngle(3.14f).setCrossSection(new MFVec2fObject(new float[] {-1.0f,-1.66f,-1.0f,1.66f,1.0f,1.66f,1.0f,-1.66f,-1.0f,-1.66f})).setScale(new MFVec2fObject(new float[] {1.0f,1.0f,1.0f,1.0f,1.0f,1.0f,0.1f,0.1f})).setSolid(false).setSpine(new MFVec3fObject(new float[] {0.0f,0.0f,0.0f,0.0f,0.1f,0.0f,0.0f,0.125f,0.0f,0.0f,0.15f,0.0f})))
.setAppearance(new AppearanceObject("Tan")
.setMaterial(new MaterialObject().setDiffuseColor(0.8f,0.7f,0.7f)))))
.addChild(new TransformObject()
.addChild(new ShapeObject()
.setGeometry(new BoxObject().setSize(1.9f,3.0f,0.125f))
.setAppearance(new AppearanceObject()
.setTexture(new MovieTextureObject().setLoop(true).setUrl(new MFStringObject("\"Highway.avi\" \"https://savage.nps.edu/Savage/GroundVehicles/HMMWV/Highway.avi\"")))))))
.addChild(new TransformObject("Support")
.addChild(new ShapeObject()
.setGeometry(new ExtrusionObject().setCreaseAngle(3.14f).setCrossSection(new MFVec2fObject(new float[] {0.1f,0.0f,0.092f,-0.038f,0.071f,-0.071f,0.038f,-0.092f,0.0f,-0.10f,-0.038f,-0.092f,-0.071f,-0.071f,-0.092f,-0.038f,-0.10f,0.0f,-0.092f,0.038f,-0.071f,0.071f,-0.038f,0.092f,0.0f,0.10f,0.038f,0.092f,0.071f,0.071f,0.092f,0.038f,0.10f,0.0f})).setScale(new MFVec2fObject(new float[] {0.4f,0.4f,0.4f,0.4f,0.4f,0.4f,0.4f,0.4f,0.4f,0.4f,0.4f,0.4f,0.4f,0.4f,0.4f,0.4f})).setSpine(new MFVec3fObject(new float[] {-1.6f,-1.9f,0.0f,0.9f,-1.9f,0.0f,1.1f,-1.8f,0.0f,1.2f,-1.6f,0.0f,1.2f,1.6f,0.0f,1.1f,1.8f,0.0f,0.9f,1.9f,0.0f,-1.6f,1.9f,0.0f})))
.setAppearance(new AppearanceObject().setUSE("Tan"))))
.addChild(new TransformObject("CenterBar")
.addChild(new ShapeObject()
.setGeometry(new CylinderObject().setHeight(3.8f).setRadius(0.04f))
.setAppearance(new AppearanceObject().setUSE("Tan"))))));
}
// end of initialize() method
/** The initialized model object, created within initialize() method. */
private X3DObject x3dModel;
/** Provide a
* <a href="https://dzone.com/articles/java-copy-shallow-vs-deep-in-which-you-will-swim" target="_blank">shallow copy</a>
* of the X3D model.
* @see <a href="http://www.web3d.org/specifications/java/javadoc/org/web3d/x3d/jsail/Core/X3DObject.html">X3DObject</a>
* @return LargeSideMirrors model
*/
public X3DObject getX3dModel()
{
return x3dModel;
}
/** Default main() method provided for test purposes, uses CommandLine to set global ConfigurationProperties for this object.
* @param args array of input parameters, provided as arguments
* @see <a href="http://www.web3d.org/specifications/java/javadoc/org/web3d/x3d/jsail/Core/X3DObject.html#handleArguments-java.lang.String:A-">X3DObject.handleArguments(args)</a>
* @see <a href="http://www.web3d.org/specifications/java/javadoc/org/web3d/x3d/jsail/Core/X3DObject.html#validationReport--">X3DObject.validationReport()</a>
* @see <a href="http://www.web3d.org/specifications/java/javadoc/org/web3d/x3d/jsail/CommandLine.html">CommandLine</a>
* @see <a href="http://www.web3d.org/specifications/java/javadoc/org/web3d/x3d/jsail/CommandLine.html#USAGE">CommandLine.USAGE</a>
* @see <a href="http://www.web3d.org/specifications/java/javadoc/org/web3d/x3d/jsail/ConfigurationProperties.html">ConfigurationProperties</a>
*/
public static void main(String args[])
{
X3DObject thisExampleX3dObject = new LargeSideMirrors().getX3dModel();
boolean hasArguments = (args != null) && (args.length > 0);
boolean validate = true; // default
boolean argumentsLoadNewModel = false;
String fileName = new String();
if (args != null)
{
for (String arg : args)
{
if (arg.toLowerCase().startsWith("-v") || arg.toLowerCase().contains("validate"))
{
validate = true; // making sure
}
if (arg.toLowerCase().endsWith(X3DObject.FILE_EXTENSION_X3D) ||
arg.toLowerCase().endsWith(X3DObject.FILE_EXTENSION_CLASSICVRML) ||
arg.toLowerCase().endsWith(X3DObject.FILE_EXTENSION_X3DB) ||
arg.toLowerCase().endsWith(X3DObject.FILE_EXTENSION_VRML97) ||
arg.toLowerCase().endsWith(X3DObject.FILE_EXTENSION_EXI) ||
arg.toLowerCase().endsWith(X3DObject.FILE_EXTENSION_GZIP) ||
arg.toLowerCase().endsWith(X3DObject.FILE_EXTENSION_ZIP) ||
arg.toLowerCase().endsWith(X3DObject.FILE_EXTENSION_HTML) ||
arg.toLowerCase().endsWith(X3DObject.FILE_EXTENSION_XHTML))
{
argumentsLoadNewModel = true;
fileName = arg;
}
}
}
if (argumentsLoadNewModel)
System.out.println("WARNING: \"LargeSideMirrors\" model invocation is attempting to load file \"" + fileName + "\" instead of simply validating itself... file loading ignored.");
else if (hasArguments) // if no arguments provided, this method produces usage warning
thisExampleX3dObject.handleArguments(args);
if (validate)
{
System.out.print("Java program \"LargeSideMirrors\" self-validation test results: ");
String validationResults = thisExampleX3dObject.validationReport();
System.out.println(validationResults);
}
}
}
package Savage.GroundVehicles.HMMWV;
/*
Copyright (c) 1995-2019 held by the author(s). All rights reserved.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions
are met:
* Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimer
in the documentation and/or other materials provided with the
distribution.
* Neither the name of the Web3D Consortium (http://www.web3D.org)
nor the names of its contributors may be used to endorse or
promote products derived from this software without specific
prior written permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
POSSIBILITY OF SUCH DAMAGE.
*/
import java.util.*;
import org.web3d.x3d.jsail.Core.*;
import org.web3d.x3d.jsail.EnvironmentalEffects.*;
import org.web3d.x3d.jsail.fields.*;
import org.web3d.x3d.jsail.Geometry3D.*;
import org.web3d.x3d.jsail.Grouping.*;
import org.web3d.x3d.jsail.Navigation.*;
import org.web3d.x3d.jsail.Shape.*;
import org.web3d.x3d.jsail.Texturing.*;
// Javadoc annotations follow, see below for source.
/**
* <p> Large Side Mirrors for Large Utility Vehicles. </p>
<p> Related links: <a href="../../../../GroundVehicles/HMMWV/PassengerSideLargeSideMirror.java">PassengerSideLargeSideMirror.java</a> source, <a href="../../../../GroundVehicles/HMMWV/PassengerSideLargeSideMirrorIndex.html" target="_top">PassengerSideLargeSideMirror catalog page</a>, <a href="http://www.web3d.org/x3d/content/examples/X3dResources.html" target="_blank">X3D Resources</a>, <a href="http://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html" target="_blank">X3D Scene Authoring Hints</a>, and <a href="http://www.web3d.org/x3d/content/X3dTooltips.html" target="_blank">X3D Tooltips</a>. </p>
<table style="color:black; border:0px solid; border-spacing:10px 0px;" summary="Scene Metadata">
<tr style="background-color:silver; border-color:silver;">
<td style="text-align:center; padding:10px 0px;"><i>meta tags</i></td>
<td style="text-align:left; padding:10px 0px;">&nbsp; Document Metadata </td>
</tr>
<tr>
<td style="text-align:right; vertical-align: text-top;"> <i> title </i> </td>
<td> <a href="../../../../GroundVehicles/HMMWV/PassengerSideLargeSideMirror.x3d">PassengerSideLargeSideMirror.x3d</a> </td>
</tr>
<tr>
<td style="text-align:right; vertical-align: text-top;"> <i> description </i> </td>
<td> Large Side Mirrors for Large Utility Vehicles </td>
</tr>
<tr>
<td style="text-align:right; vertical-align: text-top;"> <i> creator </i> </td>
<td> Jeffrey Weekley </td>
</tr>
<tr>
<td style="text-align:right; vertical-align: text-top;"> <i> created </i> </td>
<td> 12 December 2001 </td>
</tr>
<tr>
<td style="text-align:right; vertical-align: text-top;"> <i> modified </i> </td>
<td> 14 January 2014 </td>
</tr>
<tr>
<td style="text-align:right; vertical-align: text-top;"> <i> identifier </i> </td>
<td> <a href="https://savage.nps.edu/Savage/GroundVehicles/HMMWV/PassengerSideLargeSideMirror.x3d" target="_blank">https://savage.nps.edu/Savage/GroundVehicles/HMMWV/PassengerSideLargeSideMirror.x3d</a> </td>
</tr>
<tr>
<td style="text-align:right; vertical-align: text-top;"> <i> generator </i> </td>
<td> X3D-Edit 3.2, <a href="https://savage.nps.edu/X3D-Edit" target="_blank">https://savage.nps.edu/X3D-Edit</a> </td>
</tr>
<tr>
<td style="text-align:right; vertical-align: text-top;"> <i> license </i> </td>
<td> <a href="../../../../GroundVehicles/HMMWV/../../license.html">../../license.html</a> </td>
</tr>
<tr style="background-color:silver; border-color:silver;">
<td style="text-align:center;" colspan="2"> &nbsp; </td>
</tr>
</table>
<p>
This program uses the
<a href="http://www.web3d.org/specifications/java/X3DJSAIL.html" target="_blank">X3D Java Scene Access Interface Library (X3DJSAIL)</a>.
It has been produced using the
<a href="http://www.web3d.org/x3d/stylesheets/X3dToJava.xslt" target="_blank">X3dToJava.xslt</a>
stylesheet to create Java source code from an <code>.x3d</code> model.
</p>
* @author Jeffrey Weekley
*/
public class PassengerSideLargeSideMirror
{
/** Default constructor to create this object. */
public PassengerSideLargeSideMirror ()
{
initialize();
}
/** Create and initialize the X3D model for this object. */
public final void initialize()
{
x3dModel = new X3DObject().setProfile(X3DObject.PROFILE_IMMERSIVE).setVersion(X3DObject.VERSION_3_0)
.setHead(new headObject()
.addMeta(new metaObject().setName(metaObject.NAME_TITLE ).setContent("PassengerSideLargeSideMirror.x3d"))
.addMeta(new metaObject().setName(metaObject.NAME_DESCRIPTION).setContent("Large Side Mirrors for Large Utility Vehicles"))
.addMeta(new metaObject().setName(metaObject.NAME_CREATOR ).setContent("Jeffrey Weekley"))
.addMeta(new metaObject().setName(metaObject.NAME_CREATED ).setContent("12 December 2001"))
.addMeta(new metaObject().setName(metaObject.NAME_MODIFIED ).setContent("14 January 2014"))
.addMeta(new metaObject().setName(metaObject.NAME_IDENTIFIER ).setContent("https://savage.nps.edu/Savage/GroundVehicles/HMMWV/PassengerSideLargeSideMirror.x3d"))
.addMeta(new metaObject().setName(metaObject.NAME_GENERATOR ).setContent("X3D-Edit 3.2, https://savage.nps.edu/X3D-Edit"))
.addMeta(new metaObject().setName(metaObject.NAME_LICENSE ).setContent("../../license.html")))
.setScene(new SceneObject()
.addChild(new BackgroundObject().setSkyColor(new MFColorObject(new float[] {0.5f,0.75f,0.75f})))
.addChild(new GroupObject("MirrorAssembly")
.addChild(new TransformObject().setRotation(0.0f,1.0f,0.0f,3.14f)
.addChild(new TransformObject().setRotation(0.0f,1.0f,0.0f,0.385f)
.addChild(new TransformObject().setRotation(1.0f,0.0f,0.0f,1.57f)
.addChild(new ShapeObject()
.setGeometry(new ExtrusionObject().setCreaseAngle(3.14f).setCrossSection(new MFVec2fObject(new float[] {-1.0f,-1.66f,-1.0f,1.66f,1.0f,1.66f,1.0f,-1.66f,-1.0f,-1.66f})).setScale(new MFVec2fObject(new float[] {1.0f,1.0f,1.0f,1.0f,1.0f,1.0f,0.1f,0.1f})).setSolid(false).setSpine(new MFVec3fObject(new float[] {0.0f,0.0f,0.0f,0.0f,0.1f,0.0f,0.0f,0.125f,0.0f,0.0f,0.15f,0.0f})))
.setAppearance(new AppearanceObject("Tan")
.setMaterial(new MaterialObject().setDiffuseColor(0.8f,0.7f,0.7f)))))
.addChild(new LODObject().setRange(new float[] {40.0f,100.0f})
.addChild(new TransformObject().setRotation(1.0f,0.0f,0.0f,3.14f)
.addChild(new ShapeObject()
.setGeometry(new BoxObject().setSize(1.9f,3.0f,0.125f))
.setAppearance(new AppearanceObject()
.setTexture(new MovieTextureObject().setLoop(true).setUrl(new MFStringObject("\"Highway.avi\" \"https://savage.nps.edu/Savage/GroundVehicles/HMMWV/Highway.avi\""))))))
.addChild(new TransformObject()
.addChild(new ShapeObject()
.setGeometry(new BoxObject().setSize(1.9f,3.0f,0.125f))
.setAppearance(new AppearanceObject()
.setMaterial(new MaterialObject().setDiffuseColor(0.15f,0.2f,0.2f)))))
.addChild(new WorldInfoObject())))
.addChild(new TransformObject("Support")
.addChild(new ShapeObject()
.setGeometry(new ExtrusionObject().setCreaseAngle(3.14f).setCrossSection(new MFVec2fObject(new float[] {0.1f,0.0f,0.092f,-0.038f,0.071f,-0.071f,0.038f,-0.092f,0.0f,-0.10f,-0.038f,-0.092f,-0.071f,-0.071f,-0.092f,-0.038f,-0.10f,0.0f,-0.092f,0.038f,-0.071f,0.071f,-0.038f,0.092f,0.0f,0.10f,0.038f,0.092f,0.071f,0.071f,0.092f,0.038f,0.10f,0.0f})).setScale(new MFVec2fObject(new float[] {0.6f,0.6f,0.6f,0.6f,0.6f,0.6f,0.6f,0.6f,0.6f,0.6f,0.6f,0.6f,0.6f,0.6f,0.6f,0.6f})).setSpine(new MFVec3fObject(new float[] {-1.6f,-1.9f,0.0f,0.9f,-1.9f,0.0f,1.1f,-1.8f,0.0f,1.2f,-1.6f,0.0f,1.2f,1.6f,0.0f,1.1f,1.8f,0.0f,0.9f,1.9f,0.0f,-1.6f,1.9f,0.0f})))
.setAppearance(new AppearanceObject().setUSE("Tan"))))
.addChild(new TransformObject("CenterBar")
.addChild(new ShapeObject()
.setGeometry(new CylinderObject().setHeight(3.8f).setRadius(0.04f))
.setAppearance(new AppearanceObject().setUSE("Tan")))))));
}
// end of initialize() method
/** The initialized model object, created within initialize() method. */
private X3DObject x3dModel;
/** Provide a
* <a href="https://dzone.com/articles/java-copy-shallow-vs-deep-in-which-you-will-swim" target="_blank">shallow copy</a>
* of the X3D model.
* @see <a href="http://www.web3d.org/specifications/java/javadoc/org/web3d/x3d/jsail/Core/X3DObject.html">X3DObject</a>
* @return PassengerSideLargeSideMirror model
*/
public X3DObject getX3dModel()
{
return x3dModel;
}
/** Default main() method provided for test purposes, uses CommandLine to set global ConfigurationProperties for this object.
* @param args array of input parameters, provided as arguments
* @see <a href="http://www.web3d.org/specifications/java/javadoc/org/web3d/x3d/jsail/Core/X3DObject.html#handleArguments-java.lang.String:A-">X3DObject.handleArguments(args)</a>
* @see <a href="http://www.web3d.org/specifications/java/javadoc/org/web3d/x3d/jsail/Core/X3DObject.html#validationReport--">X3DObject.validationReport()</a>
* @see <a href="http://www.web3d.org/specifications/java/javadoc/org/web3d/x3d/jsail/CommandLine.html">CommandLine</a>
* @see <a href="http://www.web3d.org/specifications/java/javadoc/org/web3d/x3d/jsail/CommandLine.html#USAGE">CommandLine.USAGE</a>
* @see <a href="http://www.web3d.org/specifications/java/javadoc/org/web3d/x3d/jsail/ConfigurationProperties.html">ConfigurationProperties</a>
*/
public static void main(String args[])
{
X3DObject thisExampleX3dObject = new PassengerSideLargeSideMirror().getX3dModel();
boolean hasArguments = (args != null) && (args.length > 0);
boolean validate = true; // default
boolean argumentsLoadNewModel = false;
String fileName = new String();
if (args != null)
{
for (String arg : args)
{
if (arg.toLowerCase().startsWith("-v") || arg.toLowerCase().contains("validate"))
{
validate = true; // making sure
}
if (arg.toLowerCase().endsWith(X3DObject.FILE_EXTENSION_X3D) ||
arg.toLowerCase().endsWith(X3DObject.FILE_EXTENSION_CLASSICVRML) ||
arg.toLowerCase().endsWith(X3DObject.FILE_EXTENSION_X3DB) ||
arg.toLowerCase().endsWith(X3DObject.FILE_EXTENSION_VRML97) ||
arg.toLowerCase().endsWith(X3DObject.FILE_EXTENSION_EXI) ||
arg.toLowerCase().endsWith(X3DObject.FILE_EXTENSION_GZIP) ||
arg.toLowerCase().endsWith(X3DObject.FILE_EXTENSION_ZIP) ||
arg.toLowerCase().endsWith(X3DObject.FILE_EXTENSION_HTML) ||
arg.toLowerCase().endsWith(X3DObject.FILE_EXTENSION_XHTML))
{
argumentsLoadNewModel = true;
fileName = arg;
}
}
}
if (argumentsLoadNewModel)
System.out.println("WARNING: \"PassengerSideLargeSideMirror\" model invocation is attempting to load file \"" + fileName + "\" instead of simply validating itself... file loading ignored.");
else if (hasArguments) // if no arguments provided, this method produces usage warning
thisExampleX3dObject.handleArguments(args);
if (validate)
{
System.out.print("Java program \"PassengerSideLargeSideMirror\" self-validation test results: ");
String validationResults = thisExampleX3dObject.validationReport();
System.out.println(validationResults);
}
}
}
package Savage.GroundVehicles.HMMWV;
/*
Copyright (c) 1995-2019 held by the author(s). All rights reserved.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions
are met:
* Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimer
in the documentation and/or other materials provided with the
distribution.
* Neither the name of the Web3D Consortium (http://www.web3D.org)
nor the names of its contributors may be used to endorse or
promote products derived from this software without specific
prior written permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
POSSIBILITY OF SUCH DAMAGE.
*/
import java.util.*;
import org.web3d.x3d.jsail.Core.*;
import org.web3d.x3d.jsail.fields.*;
import org.web3d.x3d.jsail.Geometry3D.*;
import org.web3d.x3d.jsail.Grouping.*;
import org.web3d.x3d.jsail.Navigation.*;
import org.web3d.x3d.jsail.Shape.*;
// Javadoc annotations follow, see below for source.
/**
* <p> Steering wheel. </p>
<p> Related links: <a href="../../../../GroundVehicles/HMMWV/SteeringWheel.java">SteeringWheel.java</a> source, <a href="../../../../GroundVehicles/HMMWV/SteeringWheelIndex.html" target="_top">SteeringWheel catalog page</a>, <a href="http://www.web3d.org/x3d/content/examples/X3dResources.html" target="_blank">X3D Resources</a>, <a href="http://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html" target="_blank">X3D Scene Authoring Hints</a>, and <a href="http://www.web3d.org/x3d/content/X3dTooltips.html" target="_blank">X3D Tooltips</a>. </p>
<table style="color:black; border:0px solid; border-spacing:10px 0px;" summary="Scene Metadata">
<tr style="background-color:silver; border-color:silver;">
<td style="text-align:center; padding:10px 0px;"><i>meta tags</i></td>
<td style="text-align:left; padding:10px 0px;">&nbsp; Document Metadata </td>
</tr>
<tr>
<td style="text-align:right; vertical-align: text-top;"> <i> title </i> </td>
<td> <a href="../../../../GroundVehicles/HMMWV/SteeringWheel.x3d">SteeringWheel.x3d</a> </td>
</tr>
<tr>
<td style="text-align:right; vertical-align: text-top;"> <i> description </i> </td>
<td> Steering wheel. </td>
</tr>
<tr>
<td style="text-align:right; vertical-align: text-top;"> <i> creator </i> </td>
<td> Jeffrey Weekley </td>
</tr>
<tr>
<td style="text-align:right; vertical-align: text-top;"> <i> created </i> </td>
<td> 12 December 2001 </td>
</tr>
<tr>
<td style="text-align:right; vertical-align: text-top;"> <i> modified </i> </td>
<td> 13 December 2001 </td>
</tr>
<tr>
<td style="text-align:right; vertical-align: text-top;"> <i> reference </i> </td>
<td> <a href="../../../../GroundVehicles/HMMWV/Lightweight155mmHowitzer.x3d">Lightweight155mmHowitzer.x3d</a> </td>
</tr>
<tr>
<td style="text-align:right; vertical-align: text-top;"> <i> identifier </i> </td>
<td> <a href="https://savage.nps.edu/Savage/GroundVehicles/HMMWV/SteeringWheel.x3d" target="_blank">https://savage.nps.edu/Savage/GroundVehicles/HMMWV/SteeringWheel.x3d</a> </td>
</tr>
<tr>
<td style="text-align:right; vertical-align: text-top;"> <i> subject </i> </td>
<td> Steering Wheel, Crank </td>
</tr>
<tr>
<td style="text-align:right; vertical-align: text-top;"> <i> generator </i> </td>
<td> X3D-Edit 3.2, <a href="https://savage.nps.edu/X3D-Edit" target="_blank">https://savage.nps.edu/X3D-Edit</a> </td>
</tr>
<tr>
<td style="text-align:right; vertical-align: text-top;"> <i> license </i> </td>
<td> <a href="../../../../GroundVehicles/HMMWV/../../license.html">../../license.html</a> </td>
</tr>
<tr style="background-color:silver; border-color:silver;">
<td style="text-align:center;" colspan="2"> &nbsp; </td>
</tr>
</table>
<p>
This program uses the
<a href="http://www.web3d.org/specifications/java/X3DJSAIL.html" target="_blank">X3D Java Scene Access Interface Library (X3DJSAIL)</a>.
It has been produced using the
<a href="http://www.web3d.org/x3d/stylesheets/X3dToJava.xslt" target="_blank">X3dToJava.xslt</a>
stylesheet to create Java source code from an <code>.x3d</code> model.
</p>
* @author Jeffrey Weekley
*/
public class SteeringWheel
{
/** Default constructor to create this object. */
public SteeringWheel ()
{
initialize();
}
/** Create and initialize the X3D model for this object. */
public final void initialize()
{
x3dModel = new X3DObject().setProfile(X3DObject.PROFILE_IMMERSIVE).setVersion(X3DObject.VERSION_3_0)
.setHead(new headObject()
.addMeta(new metaObject().setName(metaObject.NAME_TITLE ).setContent("SteeringWheel.x3d"))
.addMeta(new metaObject().setName(metaObject.NAME_DESCRIPTION).setContent("Steering wheel."))
.addMeta(new metaObject().setName(metaObject.NAME_CREATOR ).setContent("Jeffrey Weekley"))
.addMeta(new metaObject().setName(metaObject.NAME_CREATED ).setContent("12 December 2001"))
.addMeta(new metaObject().setName(metaObject.NAME_MODIFIED ).setContent("13 December 2001"))
.addMeta(new metaObject().setName(metaObject.NAME_REFERENCE ).setContent("Lightweight155mmHowitzer.x3d"))
.addMeta(new metaObject().setName(metaObject.NAME_IDENTIFIER ).setContent("https://savage.nps.edu/Savage/GroundVehicles/HMMWV/SteeringWheel.x3d"))
.addMeta(new metaObject().setName(metaObject.NAME_SUBJECT ).setContent("Steering Wheel, Crank"))
.addMeta(new metaObject().setName(metaObject.NAME_GENERATOR ).setContent("X3D-Edit 3.2, https://savage.nps.edu/X3D-Edit"))
.addMeta(new metaObject().setName(metaObject.NAME_LICENSE ).setContent("../../license.html")))
.setScene(new SceneObject()
.addChild(new ViewpointObject().setPosition(0.0f,0.0f,2.5f))
.addChild(new LODObject("Crank").setRange(new float[] {25.0f})
.addChild(new GroupObject()
.addChild(new TransformObject("CircularHandle")
.addChild(new ShapeObject()
.setGeometry(new ExtrusionObject().setBeginCap(false).setCreaseAngle(1.57f).setCrossSection(new MFVec2fObject(new float[] {0.1f,0.0f,0.092f,-0.038f,0.071f,-0.071f,0.038f,-0.092f,0.0f,-0.1f,-0.038f,-0.092f,-0.071f,-0.071f,-0.092f,-0.038f,-0.1f,0.0f,-0.092f,0.038f,-0.071f,0.071f,-0.038f,0.092f,0.0f,0.1f,0.038f,0.092f,0.071f,0.071f,0.092f,0.038f,0.1f,0.0f})).setEndCap(false).setScale(new MFVec2fObject(new float[] {0.4f,0.4f,0.4f,0.4f,0.4f,0.4f,0.4f,0.4f,0.4f,0.4f,0.4f,0.4f,0.4f,0.4f,0.4f,0.4f,0.4f,0.4f,0.4f,0.4f,0.4f,0.4f,0.4f,0.4f,0.4f,0.4f,0.4f,0.4f,0.4f,0.4f,0.4f,0.4f,0.4f,0.4f})).setSpine(new MFVec3fObject(new float[] {0.3f,0.0f,0.0f,0.276f,-0.114f,0.0f,0.213f,-0.213f,0.0f,0.114f,-0.276f,0.0f,0.0f,-0.3f,0.0f,-0.114f,-0.276f,0.0f,-0.213f,-0.213f,0.0f,-0.276f,-0.114f,0.0f,-0.3f,0.0f,0.0f,-0.276f,0.114f,0.0f,-0.213f,0.213f,0.0f,-0.114f,0.276f,0.0f,0.0f,0.3f,0.0f,0.114f,0.276f,0.0f,0.213f,0.213f,0.0f,0.276f,0.114f,0.0f,0.3f,0.0f,0.0f})))
.setAppearance(new AppearanceObject("Black")
.setMaterial(new MaterialObject().setDiffuseColor(0.1f,0.1f,0.1f)))))
.addChild(new TransformObject("CrankShaft").setTranslation(0.0f,0.0f,-0.05f)
.addChild(new TransformObject("Shaft").setRotation(1.0f,0.0f,0.0f,1.57f)
.addChild(new ShapeObject()
.setGeometry(new CylinderObject().setHeight(0.02f).setRadius(0.08f))
.setAppearance(new AppearanceObject("Tan")
.setMaterial(new MaterialObject().setDiffuseColor(0.8f,0.7f,0.7f)))))
.addChild(new TransformObject("Top").setRotation(1.0f,0.0f,0.0f,1.57f).setTranslation(0.0f,0.0f,-0.1f)
.addChild(new ShapeObject()
.setGeometry(new CylinderObject().setHeight(0.2f).setRadius(0.05f))
.setAppearance(new AppearanceObject().setUSE("Tan"))))
.addChild(new TransformObject("TopBall").setTranslation(0.0f,0.0f,-0.01f)
.addChild(new ShapeObject()
.setGeometry(new SphereObject().setRadius(0.05f))
.setAppearance(new AppearanceObject().setUSE("Black"))))
.addChild(new TransformObject().setRotation(1.0f,0.0f,0.0f,1.57f).setTranslation(0.0f,0.0f,-0.3f)
.addChild(new ShapeObject()
.setGeometry(new BoxObject().setSize(0.2f,0.375f,0.2f))
.setAppearance(new AppearanceObject().setUSE("Tan")))))
.addChild(new TransformObject("Struts")
.addChild(new TransformObject("StrutOne").setRotation(1.0f,0.0f,0.0f,0.21f).setTranslation(0.0f,0.04f,-0.05725f)
.addChild(new ShapeObject()
.setGeometry(new ExtrusionObject().setCreaseAngle(3.14f).setCrossSection(new MFVec2fObject(new float[] {0.01f,0.0f,0.0092f,-0.0038f,0.0071f,-0.0071f,0.0038f,-0.0092f,0.0f,-0.01f,-0.0038f,-0.0092f,-0.0071f,-0.0071f,-0.0092f,-0.0038f,-0.01f,0.0f,-0.0092f,0.0038f,-0.0071f,0.0071f,-0.0038f,0.0092f,0.0f,0.01f,0.0038f,0.0092f,0.0071f,0.0071f,0.0092f,0.0038f,0.01f,0.0f})).setScale(new MFVec2fObject(new float[] {4.0f,2.0f,2.0f,2.0f,2.0f,2.0f,2.0f,2.0f,2.0f,4.0f})).setSpine(new MFVec3fObject(new float[] {0.0f,0.0f,0.0f,0.0f,0.125f,0.0f,0.0f,0.25f,0.0f,0.0f,0.255f,0.0f,0.0f,0.274f,0.0f})))
.setAppearance(new AppearanceObject().setUSE("Tan"))))
.addChild(new TransformObject("StrutTwo").setRotation(0.0f,0.0f,1.0f,2.09f)
.addChild(new TransformObject().setUSE("StrutOne")))
.addChild(new TransformObject("StrutThree").setRotation(0.0f,0.0f,-1.0f,2.09f)
.addChild(new TransformObject().setUSE("StrutOne")))))
.addChild(new WorldInfoObject().setInfo(new MFStringObject("\"null node\"")))));
}
// end of initialize() method
/** The initialized model object, created within initialize() method. */
private X3DObject x3dModel;
/** Provide a
* <a href="https://dzone.com/articles/java-copy-shallow-vs-deep-in-which-you-will-swim" target="_blank">shallow copy</a>
* of the X3D model.
* @see <a href="http://www.web3d.org/specifications/java/javadoc/org/web3d/x3d/jsail/Core/X3DObject.html">X3DObject</a>
* @return SteeringWheel model
*/
public X3DObject getX3dModel()
{
return x3dModel;
}
/** Default main() method provided for test purposes, uses CommandLine to set global ConfigurationProperties for this object.
* @param args array of input parameters, provided as arguments
* @see <a href="http://www.web3d.org/specifications/java/javadoc/org/web3d/x3d/jsail/Core/X3DObject.html#handleArguments-java.lang.String:A-">X3DObject.handleArguments(args)</a>
* @see <a href="http://www.web3d.org/specifications/java/javadoc/org/web3d/x3d/jsail/Core/X3DObject.html#validationReport--">X3DObject.validationReport()</a>
* @see <a href="http://www.web3d.org/specifications/java/javadoc/org/web3d/x3d/jsail/CommandLine.html">CommandLine</a>
* @see <a href="http://www.web3d.org/specifications/java/javadoc/org/web3d/x3d/jsail/CommandLine.html#USAGE">CommandLine.USAGE</a>
* @see <a href="http://www.web3d.org/specifications/java/javadoc/org/web3d/x3d/jsail/ConfigurationProperties.html">ConfigurationProperties</a>
*/
public static void main(String args[])
{
X3DObject thisExampleX3dObject = new SteeringWheel().getX3dModel();
boolean hasArguments = (args != null) && (args.length > 0);
boolean validate = true; // default
boolean argumentsLoadNewModel = false;
String fileName = new String();
if (args != null)
{
for (String arg : args)
{
if (arg.toLowerCase().startsWith("-v") || arg.toLowerCase().contains("validate"))
{
validate = true; // making sure
}
if (arg.toLowerCase().endsWith(X3DObject.FILE_EXTENSION_X3D) ||
arg.toLowerCase().endsWith(X3DObject.FILE_EXTENSION_CLASSICVRML) ||
arg.toLowerCase().endsWith(X3DObject.FILE_EXTENSION_X3DB) ||
arg.toLowerCase().endsWith(X3DObject.FILE_EXTENSION_VRML97) ||
arg.toLowerCase().endsWith(X3DObject.FILE_EXTENSION_EXI) ||
arg.toLowerCase().endsWith(X3DObject.FILE_EXTENSION_GZIP) ||
arg.toLowerCase().endsWith(X3DObject.FILE_EXTENSION_ZIP) ||
arg.toLowerCase().endsWith(X3DObject.FILE_EXTENSION_HTML) ||
arg.toLowerCase().endsWith(X3DObject.FILE_EXTENSION_XHTML))
{
argumentsLoadNewModel = true;
fileName = arg;
}
}
}
if (argumentsLoadNewModel)
System.out.println("WARNING: \"SteeringWheel\" model invocation is attempting to load file \"" + fileName + "\" instead of simply validating itself... file loading ignored.");
else if (hasArguments) // if no arguments provided, this method produces usage warning
thisExampleX3dObject.handleArguments(args);
if (validate)
{
System.out.print("Java program \"SteeringWheel\" self-validation test results: ");
String validationResults = thisExampleX3dObject.validationReport();
System.out.println(validationResults);
}
}
}
package Savage.GroundVehicles.HMMWV;
/*
Copyright (c) 1995-2019 held by the author(s). All rights reserved.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions
are met:
* Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimer
in the documentation and/or other materials provided with the
distribution.
* Neither the name of the Web3D Consortium (http://www.web3D.org)
nor the names of its contributors may be used to endorse or
promote products derived from this software without specific
prior written permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
POSSIBILITY OF SUCH DAMAGE.
*/
import java.util.*;
import org.web3d.x3d.jsail.Core.*;
import org.web3d.x3d.jsail.EnvironmentalEffects.*;
import org.web3d.x3d.jsail.fields.*;
import org.web3d.x3d.jsail.Geometry3D.*;
import org.web3d.x3d.jsail.Grouping.*;
import org.web3d.x3d.jsail.Networking.*;
import org.web3d.x3d.jsail.Shape.*;
// Javadoc annotations follow, see below for source.
/**
* <p> Suspension and Tires for the Highly Mobile Multi-purpose Wheeled Vehicle. </p>
<p> Related links: <a href="../../../../GroundVehicles/HMMWV/Suspension.java">Suspension.java</a> source, <a href="../../../../GroundVehicles/HMMWV/SuspensionIndex.html" target="_top">Suspension catalog page</a>, <a href="http://www.web3d.org/x3d/content/examples/X3dResources.html" target="_blank">X3D Resources</a>, <a href="http://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html" target="_blank">X3D Scene Authoring Hints</a>, and <a href="http://www.web3d.org/x3d/content/X3dTooltips.html" target="_blank">X3D Tooltips</a>. </p>
<table style="color:black; border:0px solid; border-spacing:10px 0px;" summary="Scene Metadata">
<tr style="background-color:silver; border-color:silver;">
<td style="text-align:center; padding:10px 0px;"><i>meta tags</i></td>
<td style="text-align:left; padding:10px 0px;">&nbsp; Document Metadata </td>
</tr>
<tr>
<td style="text-align:right; vertical-align: text-top;"> <i> title </i> </td>
<td> <a href="../../../../GroundVehicles/HMMWV/Suspension.x3d">Suspension.x3d</a> </td>
</tr>
<tr>
<td style="text-align:right; vertical-align: text-top;"> <i> description </i> </td>
<td> Suspension and Tires for the Highly Mobile Multi-purpose Wheeled Vehicle </td>
</tr>
<tr>
<td style="text-align:right; vertical-align: text-top;"> <i> creator </i> </td>
<td> Jeffrey Weekley </td>
</tr>
<tr>
<td style="text-align:right; vertical-align: text-top;"> <i> created </i> </td>
<td> 17 December 2001 </td>
</tr>
<tr>
<td style="text-align:right; vertical-align: text-top;"> <i> modified </i> </td>
<td> 27 August 2015 </td>
</tr>
<tr>
<td style="text-align:right; vertical-align: text-top;"> <i> reference </i> </td>
<td> <a href="http://www.fas.org" target="_blank">http://www.fas.org</a> </td>
</tr>
<tr>
<td style="text-align:right; vertical-align: text-top;"> <i> subject </i> </td>
<td> This is the front and rear suspension for the HMMWV from AM General. </td>
</tr>
<tr>
<td style="text-align:right; vertical-align: text-top;"> <i> identifier </i> </td>
<td> <a href="https://savage.nps.edu/Savage/GroundVehicles/HMMWV/Suspension.x3d" target="_blank">https://savage.nps.edu/Savage/GroundVehicles/HMMWV/Suspension.x3d</a> </td>
</tr>
<tr>
<td style="text-align:right; vertical-align: text-top;"> <i> generator </i> </td>
<td> X3D-Edit 3.2, <a href="https://savage.nps.edu/X3D-Edit" target="_blank">https://savage.nps.edu/X3D-Edit</a> </td>
</tr>
<tr>
<td style="text-align:right; vertical-align: text-top;"> <i> license </i> </td>
<td> <a href="../../../../GroundVehicles/HMMWV/../../license.html">../../license.html</a> </td>
</tr>
<tr style="background-color:silver; border-color:silver;">
<td style="text-align:center;" colspan="2"> &nbsp; </td>
</tr>
</table>
<p>
This program uses the
<a href="http://www.web3d.org/specifications/java/X3DJSAIL.html" target="_blank">X3D Java Scene Access Interface Library (X3DJSAIL)</a>.
It has been produced using the
<a href="http://www.web3d.org/x3d/stylesheets/X3dToJava.xslt" target="_blank">X3dToJava.xslt</a>
stylesheet to create Java source code from an <code>.x3d</code> model.
</p>
* @author Jeffrey Weekley
*/
public class Suspension
{
/** Default constructor to create this object. */
public Suspension ()
{
initialize();
}
/** Create and initialize the X3D model for this object. */
public final void initialize()
{
x3dModel = new X3DObject().setProfile(X3DObject.PROFILE_IMMERSIVE).setVersion(X3DObject.VERSION_3_0)
.setHead(new headObject()
.addMeta(new metaObject().setName(metaObject.NAME_TITLE ).setContent("Suspension.x3d"))
.addMeta(new metaObject().setName(metaObject.NAME_DESCRIPTION).setContent("Suspension and Tires for the Highly Mobile Multi-purpose Wheeled Vehicle"))
.addMeta(new metaObject().setName(metaObject.NAME_CREATOR ).setContent("Jeffrey Weekley"))
.addMeta(new metaObject().setName(metaObject.NAME_CREATED ).setContent("17 December 2001"))
.addMeta(new metaObject().setName(metaObject.NAME_MODIFIED ).setContent("27 August 2015"))
.addMeta(new metaObject().setName(metaObject.NAME_REFERENCE ).setContent("http://www.fas.org"))
.addMeta(new metaObject().setName(metaObject.NAME_SUBJECT ).setContent("This is the front and rear suspension for the HMMWV from AM General."))
.addMeta(new metaObject().setName(metaObject.NAME_IDENTIFIER ).setContent("https://savage.nps.edu/Savage/GroundVehicles/HMMWV/Suspension.x3d"))
.addMeta(new metaObject().setName(metaObject.NAME_GENERATOR ).setContent("X3D-Edit 3.2, https://savage.nps.edu/X3D-Edit"))
.addMeta(new metaObject().setName(metaObject.NAME_LICENSE ).setContent("../../license.html")))
.setScene(new SceneObject()
.addChild(new BackgroundObject().setGroundColor(new MFColorObject(new float[] {0.0f,0.0f,0.0f})).setSkyColor(new MFColorObject(new float[] {0.66f,0.66f,0.88f})))
.addChild(new GroupObject("Suspension")
.addChild(new GroupObject("Spring")
.addChild(new TransformObject("HalfSpring").setRotation(1.0f,0.0f,0.0f,-0.45f).setScale(0.1f,0.1f,0.1f).setTranslation(0.0f,-0.125f,0.0f)
.addChild(new TransformObject("OnceRound")
.addChild(new ShapeObject()
.setAppearance(new AppearanceObject("Tan")
.setMaterial(new MaterialObject().setDiffuseColor(0.8f,0.7f,0.7f)))
.setGeometry(new ExtrusionObject().setConvex(false).setCreaseAngle(1.57f).setCrossSection(new MFVec2fObject(new float[] {0.20f,0.00f,0.192f,-0.138f,0.171f,-0.171f,0.138f,-0.192f,0.00f,-0.20f,-0.138f,-0.192f,-0.171f,-0.171f,-0.192f,-0.138f,-0.20f,-0.00f,-0.192f,0.138f,-0.171f,0.171f,-0.138f,0.192f,0.00f,0.20f,0.138f,0.192f,0.171f,0.171f,0.192f,0.138f,0.20f,0.00f})).setSpine(new MFVec3fObject(new float[] {2.00f,0.04f,0.00f,1.85f,0.08f,0.77f,1.41f,0.12f,1.41f,0.77f,0.16f,1.85f,0.00f,0.2f,2.00f,-0.77f,0.24f,1.85f,-1.41f,0.28f,1.41f,-1.85f,0.32f,0.77f,-2.00f,0.36f,0.00f,-1.85f,0.4f,-0.77f,-1.41f,0.44f,-1.41f,-0.77f,0.48f,-1.85f,0.00f,0.52f,-2.00f,0.77f,0.56f,-1.85f,1.41f,0.6f,-1.41f,1.85f,0.64f,-0.77f,2.00f,0.68f,0.00f})))))
.addChild(new TransformObject().setTranslation(0.0f,0.64f,0.0f)
.addChild(new TransformObject().setUSE("OnceRound")))
.addChild(new TransformObject().setTranslation(0.0f,1.28f,0.0f)
.addChild(new TransformObject().setUSE("OnceRound")))
.addChild(new TransformObject().setTranslation(0.0f,1.92f,0.0f)
.addChild(new TransformObject().setUSE("OnceRound")))
.addChild(new TransformObject().setTranslation(0.0f,2.56f,0.0f)
.addChild(new TransformObject().setUSE("OnceRound")))
.addChild(new TransformObject().setTranslation(0.0f,3.2f,0.0f)
.addChild(new TransformObject().setUSE("OnceRound")))
.addChild(new TransformObject().setTranslation(0.0f,3.84f,0.0f)
.addChild(new TransformObject().setUSE("OnceRound")))
.addChild(new TransformObject().setTranslation(0.0f,4.48f,0.0f)
.addChild(new TransformObject().setUSE("OnceRound")))
.addChild(new TransformObject().setTranslation(0.0f,5.12f,0.0f)
.addChild(new TransformObject().setUSE("OnceRound")))
.addChild(new TransformObject("SpringCenter").setTranslation(0.0f,6.0f,0.0f)
.addChild(new ShapeObject()
.setGeometry(new CylinderObject().setHeight(4f).setRadius(1.8f))
.setAppearance(new AppearanceObject().setUSE("Tan"))))))
.addChild(new GroupObject("Wishbone")
.addChild(new TransformObject().setCenter(0.0f,0.0f,0.625f).setRotation(1.0f,0.0f,0.0f,-0.45f).setTranslation(0.0f,-0.175f,-0.45f)
.addChild(new ShapeObject()
.setGeometry(new BoxObject().setSize(0.4f,0.3f,2.0f))
.setAppearance(new AppearanceObject().setUSE("Tan"))))
.addChild(new TransformObject("Center")
.addChild(new TransformObject().setTranslation(0.0f,0.33f,1.0f)
.addChild(new ShapeObject()
.setAppearance(new AppearanceObject().setUSE("Tan"))
.setGeometry(new BoxObject().setSize(0.4f,1.0f,0.25f))))
.addChild(new TransformObject().setRotation(0.0f,0.0f,1.0f,1.57f).setTranslation(0.0f,0.0f,0.5f)
.addChild(new ShapeObject()
.setGeometry(new CylinderObject().setHeight(0.5f).setRadius(0.125f))
.setAppearance(new AppearanceObject()
.setMaterial(new MaterialObject().setDiffuseColor(0.6f,0.5f,0.5f))))))
.addChild(new TransformObject().setTranslation(0.0f,-0.05f,1.0f)
.addChild(new ShapeObject()
.setGeometry(new BoxObject().setSize(0.4f,0.25f,1.25f))
.setAppearance(new AppearanceObject().setUSE("Tan")))))
.addChild(new TransformObject().setTranslation(-0.1f,-0.95f,-1.25f)
.addChild(new TransformObject().setRotation(1.0f,0.0f,0.0f,1.57f).setScale(0.5f,0.5f,0.5f)
.addChild(new InlineObject().setUrl(new MFStringObject("\"AutomotiveTire.wrl\" \"../../GroundVehicles/HMMWV/AutomotiveTire.wrl\" \"https://savage.nps.edu/Savage/GroundVehiclesHMMWV/AutomotiveTire.wrl\" \"AutomotiveTire.x3d\" \"../../GroundVehicles/HMMWV/AutomotiveTire.x3d\" \"https://savage.nps.edu/Savage/GroundVehiclesHMMWV/AutomotiveTire.x3d\""))))
.addChild(new TransformObject().setRotation(1.0f,0.0f,0.0f,1.57f).setTranslation(0.1f,-0.1f,-0.2f)
.addChild(new ShapeObject()
.setGeometry(new CylinderObject().setHeight(0.3f).setRadius(0.25f))
.setAppearance(new AppearanceObject()
.setMaterial(new MaterialObject().setDiffuseColor(0.125f,0.125f,0.2f)))))
.addChild(new TransformObject().setRotation(1.0f,0.0f,0.0f,1.57f).setTranslation(0.1f,-0.1f,-0.1f)
.addChild(new ShapeObject()
.setGeometry(new CylinderObject().setHeight(0.3f).setRadius(0.66f))
.setAppearance(new AppearanceObject()
.setMaterial(new MaterialObject().setDiffuseColor(0.25f,0.25f,0.4f)))))))
.addChild(new GroupObject("OppositeSide")
.addChild(new TransformObject().setCenter(0.0f,0.0f,1.5f).setRotation(0.0f,1.0f,0.0f,3.14f)
.addChild(new GroupObject().setUSE("Suspension")))));
}
// end of initialize() method
/** The initialized model object, created within initialize() method. */
private X3DObject x3dModel;
/** Provide a
* <a href="https://dzone.com/articles/java-copy-shallow-vs-deep-in-which-you-will-swim" target="_blank">shallow copy</a>
* of the X3D model.
* @see <a href="http://www.web3d.org/specifications/java/javadoc/org/web3d/x3d/jsail/Core/X3DObject.html">X3DObject</a>
* @return Suspension model
*/
public X3DObject getX3dModel()
{
return x3dModel;
}
/** Default main() method provided for test purposes, uses CommandLine to set global ConfigurationProperties for this object.
* @param args array of input parameters, provided as arguments
* @see <a href="http://www.web3d.org/specifications/java/javadoc/org/web3d/x3d/jsail/Core/X3DObject.html#handleArguments-java.lang.String:A-">X3DObject.handleArguments(args)</a>
* @see <a href="http://www.web3d.org/specifications/java/javadoc/org/web3d/x3d/jsail/Core/X3DObject.html#validationReport--">X3DObject.validationReport()</a>
* @see <a href="http://www.web3d.org/specifications/java/javadoc/org/web3d/x3d/jsail/CommandLine.html">CommandLine</a>
* @see <a href="http://www.web3d.org/specifications/java/javadoc/org/web3d/x3d/jsail/CommandLine.html#USAGE">CommandLine.USAGE</a>
* @see <a href="http://www.web3d.org/specifications/java/javadoc/org/web3d/x3d/jsail/ConfigurationProperties.html">ConfigurationProperties</a>
*/
public static void main(String args[])
{
X3DObject thisExampleX3dObject = new Suspension().getX3dModel();
boolean hasArguments = (args != null) && (args.length > 0);
boolean validate = true; // default
boolean argumentsLoadNewModel = false;
String fileName = new String();
if (args != null)
{
for (String arg : args)
{
if (arg.toLowerCase().startsWith("-v") || arg.toLowerCase().contains("validate"))
{
validate = true; // making sure
}
if (arg.toLowerCase().endsWith(X3DObject.FILE_EXTENSION_X3D) ||
arg.toLowerCase().endsWith(X3DObject.FILE_EXTENSION_CLASSICVRML) ||
arg.toLowerCase().endsWith(X3DObject.FILE_EXTENSION_X3DB) ||
arg.toLowerCase().endsWith(X3DObject.FILE_EXTENSION_VRML97) ||
arg.toLowerCase().endsWith(X3DObject.FILE_EXTENSION_EXI) ||
arg.toLowerCase().endsWith(X3DObject.FILE_EXTENSION_GZIP) ||
arg.toLowerCase().endsWith(X3DObject.FILE_EXTENSION_ZIP) ||
arg.toLowerCase().endsWith(X3DObject.FILE_EXTENSION_HTML) ||
arg.toLowerCase().endsWith(X3DObject.FILE_EXTENSION_XHTML))
{
argumentsLoadNewModel = true;
fileName = arg;
}
}
}
if (argumentsLoadNewModel)
System.out.println("WARNING: \"Suspension\" model invocation is attempting to load file \"" + fileName + "\" instead of simply validating itself... file loading ignored.");
else if (hasArguments) // if no arguments provided, this method produces usage warning
thisExampleX3dObject.handleArguments(args);
if (validate)
{
System.out.print("Java program \"Suspension\" self-validation test results: ");
String validationResults = thisExampleX3dObject.validationReport();
System.out.println(validationResults);
}
}
}
package Savage.GroundVehicles.HMMWV;
/*
Copyright (c) 1995-2019 held by the author(s). All rights reserved.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions
are met:
* Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimer
in the documentation and/or other materials provided with the
distribution.
* Neither the name of the Web3D Consortium (http://www.web3D.org)
nor the names of its contributors may be used to endorse or
promote products derived from this software without specific
prior written permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
POSSIBILITY OF SUCH DAMAGE.
*/
import java.util.*;
import org.web3d.x3d.jsail.Core.*;
import org.web3d.x3d.jsail.EnvironmentalEffects.*;
import org.web3d.x3d.jsail.fields.*;
import org.web3d.x3d.jsail.Geometry3D.*;
import org.web3d.x3d.jsail.Grouping.*;
import org.web3d.x3d.jsail.Shape.*;
// Javadoc annotations follow, see below for source.
/**
* <p> Suspension and Tires for the Highly Mobile Multi-purpose Wheeled Vehicle. </p>
<p> Related links: <a href="../../../../GroundVehicles/HMMWV/SuspensionSpring.java">SuspensionSpring.java</a> source, <a href="../../../../GroundVehicles/HMMWV/SuspensionSpringIndex.html" target="_top">SuspensionSpring catalog page</a>, <a href="http://www.web3d.org/x3d/content/examples/X3dResources.html" target="_blank">X3D Resources</a>, <a href="http://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html" target="_blank">X3D Scene Authoring Hints</a>, and <a href="http://www.web3d.org/x3d/content/X3dTooltips.html" target="_blank">X3D Tooltips</a>. </p>
<table style="color:black; border:0px solid; border-spacing:10px 0px;" summary="Scene Metadata">
<tr style="background-color:silver; border-color:silver;">
<td style="text-align:center; padding:10px 0px;"><i>meta tags</i></td>
<td style="text-align:left; padding:10px 0px;">&nbsp; Document Metadata </td>
</tr>
<tr>
<td style="text-align:right; vertical-align: text-top;"> <i> title </i> </td>
<td> <a href="../../../../GroundVehicles/HMMWV/SuspensionSpring.x3d">SuspensionSpring.x3d</a> </td>
</tr>
<tr>
<td style="text-align:right; vertical-align: text-top;"> <i> description </i> </td>
<td> Suspension and Tires for the Highly Mobile Multi-purpose Wheeled Vehicle </td>
</tr>
<tr>
<td style="text-align:right; vertical-align: text-top;"> <i> creator </i> </td>
<td> Jeffrey Weekley </td>
</tr>
<tr>
<td style="text-align:right; vertical-align: text-top;"> <i> created </i> </td>
<td> 17 December 2001 </td>
</tr>
<tr>
<td style="text-align:right; vertical-align: text-top;"> <i> modified </i> </td>
<td> 17 December 2001 </td>
</tr>
<tr>
<td style="text-align:right; vertical-align: text-top;"> <i> reference </i> </td>
<td> <a href="http://www.fas.org" target="_blank">http://www.fas.org</a> </td>
</tr>
<tr>
<td style="text-align:right; vertical-align: text-top;"> <i> identifier </i> </td>
<td> <a href="https://savage.nps.edu/Savage/GroundVehicles/HMMWV/SuspensionSpring.x3d" target="_blank">https://savage.nps.edu/Savage/GroundVehicles/HMMWV/SuspensionSpring.x3d</a> </td>
</tr>
<tr>
<td style="text-align:right; vertical-align: text-top;"> <i> generator </i> </td>
<td> X3D-Edit 3.2, <a href="https://savage.nps.edu/X3D-Edit" target="_blank">https://savage.nps.edu/X3D-Edit</a> </td>
</tr>
<tr>
<td style="text-align:right; vertical-align: text-top;"> <i> license </i> </td>
<td> <a href="../../../../GroundVehicles/HMMWV/../../license.html">../../license.html</a> </td>
</tr>
<tr style="background-color:silver; border-color:silver;">
<td style="text-align:center;" colspan="2"> &nbsp; </td>
</tr>
</table>
<p>
This program uses the
<a href="http://www.web3d.org/specifications/java/X3DJSAIL.html" target="_blank">X3D Java Scene Access Interface Library (X3DJSAIL)</a>.
It has been produced using the
<a href="http://www.web3d.org/x3d/stylesheets/X3dToJava.xslt" target="_blank">X3dToJava.xslt</a>
stylesheet to create Java source code from an <code>.x3d</code> model.
</p>
* @author Jeffrey Weekley
*/
public class SuspensionSpring
{
/** Default constructor to create this object. */
public SuspensionSpring ()
{
initialize();
}
/** Create and initialize the X3D model for this object. */
public final void initialize()
{
x3dModel = new X3DObject().setProfile(X3DObject.PROFILE_IMMERSIVE).setVersion(X3DObject.VERSION_3_0)
.setHead(new headObject()
.addMeta(new metaObject().setName(metaObject.NAME_TITLE ).setContent("SuspensionSpring.x3d"))
.addMeta(new metaObject().setName(metaObject.NAME_DESCRIPTION).setContent("Suspension and Tires for the Highly Mobile Multi-purpose Wheeled Vehicle"))
.addMeta(new metaObject().setName(metaObject.NAME_CREATOR ).setContent("Jeffrey Weekley"))
.addMeta(new metaObject().setName(metaObject.NAME_CREATED ).setContent("17 December 2001"))
.addMeta(new metaObject().setName(metaObject.NAME_MODIFIED ).setContent("17 December 2001"))
.addMeta(new metaObject().setName(metaObject.NAME_REFERENCE ).setContent("http://www.fas.org"))
.addMeta(new metaObject().setName(metaObject.NAME_IDENTIFIER ).setContent("https://savage.nps.edu/Savage/GroundVehicles/HMMWV/SuspensionSpring.x3d"))
.addMeta(new metaObject().setName(metaObject.NAME_GENERATOR ).setContent("X3D-Edit 3.2, https://savage.nps.edu/X3D-Edit"))
.addMeta(new metaObject().setName(metaObject.NAME_LICENSE ).setContent("../../license.html")))
.setScene(new SceneObject()
.addChild(new BackgroundObject().setSkyColor(new MFColorObject(new float[] {0.66f,0.66f,0.88f})))
.addChild(new TransformObject("HalfSpring").setScale(0.25f,0.25f,0.25f)
.addChild(new TransformObject("OnceRound").setScale(1.25f,1.25f,1.25f)
.addChild(new ShapeObject()
.setAppearance(new AppearanceObject("Tan")
.setMaterial(new MaterialObject().setDiffuseColor(0.8f,0.7f,0.7f)))
.setGeometry(new ExtrusionObject().setConvex(false).setCreaseAngle(1.57f).setCrossSection(new MFVec2fObject(new float[] {0.20f,0.00f,0.192f,-0.138f,0.171f,-0.171f,0.138f,-0.192f,0.00f,-0.20f,-0.138f,-0.192f,-0.171f,-0.171f,-0.192f,-0.138f,-0.20f,-0.00f,-0.192f,0.138f,-0.171f,0.171f,-0.138f,0.192f,0.00f,0.20f,0.138f,0.192f,0.171f,0.171f,0.192f,0.138f,0.20f,0.00f})).setSpine(new MFVec3fObject(new float[] {2.00f,0.04f,0.00f,1.85f,0.08f,0.77f,1.41f,0.12f,1.41f,0.77f,0.16f,1.85f,0.00f,0.2f,2.00f,-0.77f,0.24f,1.85f,-1.41f,0.28f,1.41f,-1.85f,0.32f,0.77f,-2.00f,0.36f,0.00f,-1.85f,0.4f,-0.77f,-1.41f,0.44f,-1.41f,-0.77f,0.48f,-1.85f,0.00f,0.52f,-2.00f,0.77f,0.56f,-1.85f,1.41f,0.6f,-1.41f,1.85f,0.64f,-0.77f,2.00f,0.68f,0.00f})))))
.addChild(new TransformObject().setTranslation(0.0f,0.64f,0.0f)
.addChild(new TransformObject().setUSE("OnceRound")))
.addChild(new TransformObject().setTranslation(0.0f,1.28f,0.0f)
.addChild(new TransformObject().setUSE("OnceRound")))
.addChild(new TransformObject().setTranslation(0.0f,1.92f,0.0f)
.addChild(new TransformObject().setUSE("OnceRound")))
.addChild(new TransformObject().setTranslation(0.0f,2.56f,0.0f)
.addChild(new TransformObject().setUSE("OnceRound")))
.addChild(new TransformObject().setTranslation(0.0f,3.2f,0.0f)
.addChild(new TransformObject().setUSE("OnceRound")))
.addChild(new TransformObject().setTranslation(0.0f,3.84f,0.0f)
.addChild(new TransformObject().setUSE("OnceRound")))
.addChild(new TransformObject().setTranslation(0.0f,4.48f,0.0f)
.addChild(new TransformObject().setUSE("OnceRound")))
.addChild(new TransformObject().setTranslation(0.0f,5.12f,0.0f)
.addChild(new TransformObject().setUSE("OnceRound")))));
}
// end of initialize() method
/** The initialized model object, created within initialize() method. */
private X3DObject x3dModel;
/** Provide a
* <a href="https://dzone.com/articles/java-copy-shallow-vs-deep-in-which-you-will-swim" target="_blank">shallow copy</a>
* of the X3D model.
* @see <a href="http://www.web3d.org/specifications/java/javadoc/org/web3d/x3d/jsail/Core/X3DObject.html">X3DObject</a>
* @return SuspensionSpring model
*/
public X3DObject getX3dModel()
{
return x3dModel;
}
/** Default main() method provided for test purposes, uses CommandLine to set global ConfigurationProperties for this object.
* @param args array of input parameters, provided as arguments
* @see <a href="http://www.web3d.org/specifications/java/javadoc/org/web3d/x3d/jsail/Core/X3DObject.html#handleArguments-java.lang.String:A-">X3DObject.handleArguments(args)</a>
* @see <a href="http://www.web3d.org/specifications/java/javadoc/org/web3d/x3d/jsail/Core/X3DObject.html#validationReport--">X3DObject.validationReport()</a>
* @see <a href="http://www.web3d.org/specifications/java/javadoc/org/web3d/x3d/jsail/CommandLine.html">CommandLine</a>
* @see <a href="http://www.web3d.org/specifications/java/javadoc/org/web3d/x3d/jsail/CommandLine.html#USAGE">CommandLine.USAGE</a>
* @see <a href="http://www.web3d.org/specifications/java/javadoc/org/web3d/x3d/jsail/ConfigurationProperties.html">ConfigurationProperties</a>
*/
public static void main(String args[])
{
X3DObject thisExampleX3dObject = new SuspensionSpring().getX3dModel();
boolean hasArguments = (args != null) && (args.length > 0);
boolean validate = true; // default
boolean argumentsLoadNewModel = false;
String fileName = new String();
if (args != null)
{
for (String arg : args)
{
if (arg.toLowerCase().startsWith("-v") || arg.toLowerCase().contains("validate"))
{
validate = true; // making sure
}
if (arg.toLowerCase().endsWith(X3DObject.FILE_EXTENSION_X3D) ||
arg.toLowerCase().endsWith(X3DObject.FILE_EXTENSION_CLASSICVRML) ||
arg.toLowerCase().endsWith(X3DObject.FILE_EXTENSION_X3DB) ||
arg.toLowerCase().endsWith(X3DObject.FILE_EXTENSION_VRML97) ||
arg.toLowerCase().endsWith(X3DObject.FILE_EXTENSION_EXI) ||
arg.toLowerCase().endsWith(X3DObject.FILE_EXTENSION_GZIP) ||
arg.toLowerCase().endsWith(X3DObject.FILE_EXTENSION_ZIP) ||
arg.toLowerCase().endsWith(X3DObject.FILE_EXTENSION_HTML) ||
arg.toLowerCase().endsWith(X3DObject.FILE_EXTENSION_XHTML))
{
argumentsLoadNewModel = true;
fileName = arg;
}
}
}
if (argumentsLoadNewModel)
System.out.println("WARNING: \"SuspensionSpring\" model invocation is attempting to load file \"" + fileName + "\" instead of simply validating itself... file loading ignored.");
else if (hasArguments) // if no arguments provided, this method produces usage warning
thisExampleX3dObject.handleArguments(args);
if (validate)
{
System.out.print("Java program \"SuspensionSpring\" self-validation test results: ");
String validationResults = thisExampleX3dObject.validationReport();
System.out.println(validationResults);
}
}
}
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment