001 package com.croftsoft.apps.tag3d; 002 003 /********************************************************************* 004 * 005 * Tag3D main application class. 006 * 007 * @author 008 * <A HREF="http://www.alumni.caltech.edu/~croft/">David W. Croft</A> 009 * @version 010 * 1999-02-07 011 *********************************************************************/ 012 013 public final class Tag3D implements Tag3DConstants 014 ////////////////////////////////////////////////////////////////////// 015 ////////////////////////////////////////////////////////////////////// 016 { 017 018 public static void main ( String [ ] args ) 019 ////////////////////////////////////////////////////////////////////// 020 { 021 if ( System.getSecurityManager ( ) == null ) 022 { 023 System.setSecurityManager ( new Tag3DSecurityManager ( ) ); 024 } 025 026 Tag3DWorld tag3DWorld = Tag3DWorld.build ( ); 027 028 String id = ( args.length > 0 ? args [ 0 ] : DEFAULT_ID ); 029 030 Tag3DStateManager tag3DStateManager 031 = new Tag3DStateManager ( tag3DWorld, id ); 032 033 tag3DWorld.canvas3D.addKeyListener ( 034 new Tag3DKeyListener ( 035 DELTA_ROTATION, 036 DELTA_TRANSLATION, 037 id, 038 tag3DStateManager, 039 tag3DWorld.viewTransformGroup ) ); 040 041 new Tag3DFrame ( 0, 0, 256, 256, id, tag3DWorld.canvas3D ).show ( ); 042 043 if ( args.length > 1 ) tag3DStateManager.setupRemote ( args [ 1 ] ); 044 } 045 046 ////////////////////////////////////////////////////////////////////// 047 ////////////////////////////////////////////////////////////////////// 048 }