Produces a rendered view that must be connected to a UIShell, UIframe or UIpanel to make it visible. The view has a small amount of interactivity but will make a new object fit the scene although it is translated by the same amount as the previous object. The Top Object in the scene can be manipulated with the mouse (rotate, scale, xy translate or z translate). The object can also be Reset, Normalized and Centred.
Input Ports
For the "View3D_TrackObj"
Name Type Description Top child_obj A renderable 3D object parent UIconnection Connects the rendered view to a UI object so it can be displayed. mode int Connects to the UI, values vary from 0-3
0 is rotation
1 is scale
2 is xytranslate
3 is ztranslate
trigger prim When this value changes, the object in the viewer is Reset, Normalized and Centred. Connect this to the UI. For the "View2D_TrackObj"
Name Type Description Top child_obj A renderable 2D object parent UIconnection Connects the rendered view to a UI object so it can be displayed. mode int Connects to the UI, values vary from 0-3
0 is rotation
1 is scale
2 is xytranslate
3 is ztranslate
trigger prim When this value changes, the object in the viewer is Reset, Normalized and Centred. Connect this to the UI. For the "View_TrackObj"
Name Type Description Top child_obj A renderable 3D object Top2D child_obj A renderable 2D object parent UIconnection Connects the rendered view to a UI object so it can be displayed. mode int Connects to the UI, values vary from 0-3
0 is rotation
1 is scale
2 is xytranslate
3 is ztranslate
trigger prim When this value changes, the object in the viewer is Reset, Normalized and Centred. Connect this to the UI. Description
Reducing the object count of an application is the thing most likely to speed up the loading and running of an application. This is one of a library of utility macros designed to reduce the object count.
These are all AVS/Express macros which as such require no compilation. Most applications are produced with AVS/Express Developers Edition and these macros also require AVS/Express Developers Edition. They contain no UI so that the developer has as much freedom as possible.
Any Viewer has a high object count because it has a high level of functionality. If the functionality is reduced to the minimum requirement then the object count is kept as low as possible.
This is a viewer with just a small amount of interactivity. The Top object in the scene can be manipulated with the mouse (rotate, scale, xy translate or z translate). The Type of manipulation can be selected by attaching a cmdlist to the mode port, mode is 0 for rotate, mode is 1 for scale, mode is 2 for xy translate and mode is 3 for z translate. The type of transformation matrix used for this manipulation can be altered by altering values in the GDtrack_edit module.
The object can be Reset, Normalized and Centred by adding a UItoggle or UIbutton to the trigger port.
The settings of the viewer may be customised by hand before it is used.
The size of the scene is altered by altering the values width and height in the subobject UIrenderView, this can be done with absolute values or relative values written in v.
Input Ports
As aboveUtility Macros
This macro can be connected into the AVS/Express standard macros DataObject, DataObjectNoTexture and DataObjectLite as well as the other altered DataObject given in this utility library.Example
An example application EgViewLite is provided, which shows two viewers that allow this type in interactivity.
This example also demonstrates the use of DataObjects altered to have a set Datamap and how ViewersLite can be used.
Files
iac_proj/viewlite/vl_macs.v contains all of the viewers (View3D_TrackObj, View2D_TrackObj, View_TrackObj) as well as all the DataObject macros (eg DO_GreyScale), DO_Dmap_Switch, DO_NT_Dmap_Switch, DO_LITE_Dmap_Switch, View3DMinimal, View3D_TrackAll3, View2DMinimal, View2D_TrackAll3, ViewMinimal, View_TrackAll3 and an example EgViewLite.Other Notes
The macros can be acessed through the IAC_PROJ library in the Templates library or through one of four libraries DataObjects_apps, Views3DLite, Views2DLite and UViewsLite all of which are in the Misc sub-library IAC library area.
The example EgViewLite can also be acessed through the IAC library but is located in the Examples sub-library.
Authors
J Leng Manchester Visualization CentreModifications
Paul G. LeverContact
International AVS Centre Manchester Visualization Centre Manchester Computing University of Manchester Oxford Road Manchester United Kingdom M13 9PLSee Also
DataObject, the DataObjects "DO_", "DO_NT_" and "DO_LITE_", the DataObjects "_Dmap_Switch", and the viewers lite 3D, 2D and Universal "Minimal", "_TrackObj" and "_TrackAll3".