--------------------------------------------------------------------------- Changes in 3_99_xxx: Revised and new shortcut handling: 1. New Shortcut Assignments The three ctrl-[x,c,v} are no longer used by JavaView because of conflict with MS-Windows. esc cancels all PsDialog and subclasses ctrl-d open display inspector (previously ctrl-v) ctrl-g open camera inspector (previously ctrl-c) ctrl-h open jv console with warnings ctrl-j open project inspector (previously ctrl-p) ctrl-p open "Print" dialog f1 open help dialog with shortcuts ctrl-x --> no longer available, use menu Inspector->Axis 3. New Middle and Right Mouse Keep mouse scrollbar pressed and drag mouse left mouse rotate/orbit middle mouse translate right mouse scale (Mouse scroll events are not yet available) 4. f2 still closes the control panel. Reorganisation of Class Structure of JVX Package: The following classes and methods have been moved, renamed, removed, or added in version v3.97.040. I do not expect any bigger problems beside renaming of import statements since the functionality of the classes has not been changed. Nevertheless, please, synchronize your codebase soon. 1. New package jvx.util: The new package will contain data structure and container similar to java.util but with a focus on algorithmic structures. jvx.geom.PuPriorityQueue -> jvx.util.PuPriorityQueue 2. New package jvx.cellular: The new package will contain algorithms and data structures related to cellular automata defined on geometry meshes. jvx.geom.PnCellOperator -> jvx.cellular.PnCellOperator jvx.geom.PnCellOperator_IP -> jvx.cellular.PnCellOperator_IP jvx.geom.PnMineSweeper -> jvx.cellular.PnMineSweeper jvx.geom.PnMineSweeper_IP -> jvx.cellular.PnMineSweeper_IP jvx.geom.PwSnake -> jvx.cellular.PwSnake jvx.geom.PwSnake_IP -> jvx.cellular.PwSnake_IP 3. Classes on vector fields moved to jvx.vector: jvx.geom.PwHodge -> jvx.vector.PwHodge jvx.geom.PwHodge -> jvx.vector.PwHodge jvx.geom.PwLIC -> jvx.vector.PwLIC jvx.geom.PwLIC_IP -> jvx.vector.PwLIC_IP jvx.geom.PwRotDiv -> jvx.vector.PwRotDiv jvx.geom.PwRotDiv_IP -> jvx.vector.PwRotDiv_IP jvx.geom.PwSeeds -> jvx.vector.PwSeeds jvx.geom.PwSeeds_IP -> jvx.vector.PwSeeds_IP jvx.geom.PwVectorField -> jvx.vector.PwVectorField jvx.geom.PwVectorField_IP -> jvx.vector.PwVectorField_IP 4. Classes on integral line(s) renamed and moved to jvx.vector: jvx.geom.PwIntegralLines -> jvx.vector.PwIntegralLineSet jvx.geom.PwIntegralLines_IP -> jvx.vector.PwIntegralLineSet_IP jvx.geom.PwIntegralLine -> jvx.vector.PwIntegralLine jvx.geom.PwIntegralLine_IP -> jvx.vector.PwIntegralLine_IP jvx.geom.PwVectorFieldVis_Dialog -> jvx.vector.PwIntegralLine_Dialog 5. New JVX Geometry Classes: jvx.geom.PgPointSetOnPolygon jvx.geom.PgPointSetOnElementSet jvx.geom.PgPolygonOnElementSet jvx.geom.PgPolygonSetOnElementSet 6. New JV Classes: jv.number.PuBoolean jv.number.PuBoolean_IP jv.objectGui.PsToolbar jv.objectGui.PsToolbarItem 7. New package jvx.curve: New function graph of a real-valued function over an interval. jvx.curve.PgFunction jvx.curve.PgFunction_CP Class for parametrized curves moved to package: jvx.geom.PgBezierCurve -> jvx.curve.PgBezierCurve jvx.geom.PgBezierCurve_CP -> jvx.curve.PgBezierCurve_CP jvx.geom.PgParmCurve -> jvx.curve.PgParmCurve jvx.geom.PgParmCurve_CP -> jvx.curve.PgParmCurve_CP jvx.geom.PgTube -> jvx.curve.PgTube jvx.geom.PgTube_CP -> jvx.curve.PgTube_CP 8. Rename PjEvolve and PjEnergy: jvx.geom.PwEvolve -> jvx.geom.PnEvolve jvx.geom.PjEvolve -> jvx.geom.PwEvolve jvx.geom.PjEvolve_IP -> jvx.geom.PwEvolve_IP Note, the class PwEvolve exists before and now, but has changed. jvx.geom.PjEnergy -> jvx.geom.PwEnergy jvx.geom.PjEnergy_IP -> jvx.geom.PwEnergy_IP 9. Information in Status Bar New methods to provide information in the status bar of a display: - PsDebug.pushStatus(String) // show string as status and push previous status - PsDebug.popStatus() // pop previous status 10. New packages in vgp Package: Since v3.97.012 there are new packages + vgp.tutor.sizeVertex + vgp.tutor.sizeEdge + vgp.tutor.sizePolygon + vgp.iterate.pythagoreanTree + vgp.iterate.juliaSet (formerly vgp.tutor.fractal) + vgp.vector.translation and obsolete: - vgp.tutor.fractal 11. Right-Mouse PopupMenu Now Configurable The visibility of the popup menu items can be adjusted using applet respectively command line parameters. By default the following items are visible: A number of improvements have been made recently: - all open frames are now listed as menu items in WINDOW and can be selected there - texture has been revised and made consistent - texture checkbox moved from MATERIAL to TEXTURE - texture preview, repetition, etc... now finalized - element texture coordinates are fully listed in texture panel with an additional slider to select an active element - closing prj/loading new prj/ctrl-shift-y/ now closes all open frames - preference files *.jvr are now loaded automatically (see comments below) - title of display now editable - new checkbox for showing display title on display inspector - title of inspectors synchronized Preference files Since 3.96.024 the JavaView standalone automatically searches for a preference file in rsrc/jv-rsrc.jvr relative to the codebase. Note applets do not search. If the file is not found, then nothing is loaded and JavaView starts with its own defaults. A preference file allows a user to specify many individual settings such as defining - a current working directory (as default for export/import) - an author name/affilition which will automatically be inserted in exported JVX/JVD files - enable loading of very large data files with, say, a 10 million vertices by doing a filtering - font and windows sizes (OS-dependent) - available and active menus (pending) - and many more in the future. It is also possible to let JavaView load a customized JVR file using the commandline/applet parameter jv-rsrc="myOwnDir/myOwnRsrc.jvr" Use the menu ?->PREFERENCES to see a subset of the current preferences. You can edit these preferences in the dialog and save a simple JVR file from the dialog. More complex specification require editing of the JVR file in an ASCII editor. Improvements of texture panel (available in: v3.96.014): - grid in back ground with grid size 1. - texture image drawn periodically within the bounding box of the texture coordinates. - now also element texture coordinates are listed in the array on the texture panel, use slider to select element. Repetition of texture images (available in: v3.96.013): There are now two methods to generate a repetition of the texture image on a surface: 1. Implicit repetition When texture coordinates are extend beyond the normalized texture square [0,1]*[0,1] then only the mantissa is used, that means 1 receives texture color of 0. When texture coordinates are within [0,1] then 1 receives the same texture color as 1-eps. 2. Explizit repetition The texture inspector now has two additional integer entries to specifiy the number of repetitions of a texture image within the normalized texture square [0,1]*[0,1]. By default uRepeat==vRepeat==1. Both techniques could be used simultaneously. Running JavaView in Batch Mode Since JavaView v3.89.004 (available at www.javaview.de/download/beta) JavaView provides a batch mode. Currently the batch mode allows to use JavaView as a filter (optionally without display) 1. geometry file format converter 2. image producer from geometry JavaView recognizes the following new command line parameters: geometryFile.ext // A geometry file with extension (jvx,byu,off,obj,wrl,mpl,mgs,...) mode=batch // Prevent JavaView from launching a display. exportModel=myFile.ext // Provide a single geometry file (jvx,byu,off,obj,wrl,mpl,mgs,...) exportImage=myImage.ext // Provide a single image file (eps,ps,gif,ppm). displayFile=myCamera.jvd // Optionally provide a display configuration file. * The parameters exportModel and exportImage may appear simultaneously or individually. * The export filter functionality may be used with the standard JavaView, i.e. JavaView is launched but also provides the file conversion or rendering. * All other command line parameters (respectively applet parameters) are still allowed. For a list of parameters, see www.javaview.de/doc/userManual/appletParm.html Samples: // Only file conversion and rendering, no JavaView window will appear. javaview myShape.jvx mode=batch exportModel=myShape.obj // Only file conversion and rendering, no JavaView window will appear. javaview myShape.jvx mode=batch exportImage=myShape.eps // Only file conversion and rendering, no JavaView window will appear. javaview myShape.jvx displayFile=myShape.jvd mode=batch exportModel=myShape.wrl exportImage=myShape.eps // JavaView is launched, and file conversion. javaview myShape.jvx exportModel=myShape.wrl