if (!filenamesSet) {  if (path == null) { path = getCodeBase().toString(); }   if (filenamesGiven > 0) { filename[0] = new String(path + "/" + filename[0]); } else {  filename[0] = new String(path + "/techno_machine.au"); } filenamesSet = true; }
    public void init() {        if (!filenamesSet) {            // path is null if started from applet	    if (path == null) {	        path = getCodeBase().toString();	    }                /*             * append given file name to given URL path             */            if (filenamesGiven > 0) {                filename[0] = new String(path + "/" + filename[0]);            }            else {                // fill in default file names if all three not given                filename[0] = new String(path + "/techno_machine.au");            }            filenamesSet = true;        }	setLayout(new BorderLayout());        GraphicsConfiguration config =           SimpleUniverse.getPreferredConfiguration();        Canvas3D c = new Canvas3D(config);	add("Center", c);        /*         * Change filenames into URLs         */        String substr = filename[0].substring(0,4);        try {            url[0] = new URL(filename[0]);        }        catch (Exception e) {                return;        }        /*         * Create a simple scene and attach it to the virtual universe         */        u = new SimpleUniverse(c);        AudioDevice audioDev = u.getViewer().createAudioDevice();        BranchGroup scene = createSceneGraph();        // This will move the ViewPlatform back a bit so the        // objects in the scene can be viewed.        u.getViewingPlatform().setNominalViewingTransform();	u.addBranchGraph(scene);    }