User AVS Modules city scape NAME city scape - version 3, upgrade from "3D bar chart" in AVS5. 3D block diagram, with averaged statistics on side shadow panels, and annotation. A transparent theshold sheet is superimposed on city. Blocks can be picked for interogation of cell number, turning the top of the cell white. Parts may be turned on or off for clarity. Two scalar fields can be displayed, one contolling height, the other color, with two independent side stacked side bar statistics. Arbitrary user defined text strings may be placed on the axes. AUTHOR: Ian Curington, Advanced Visual Systems, Esher, UK SUMMARY Name city_scape Type mapper Inputs field 2D scalar float uniform (primary) field 2D scalar float uniform (secondary, optional) colormap struct upstream geom Outputs geometry X-index ( from mouse pick ) Y-index Parameters Name Type Default Min Max Z scale float 1.0 none none width float .6 0. 1. offset float .1 0. 1. threshold float 1. none none tic scale float 1. none none h-label inc int v-label inc int draw_city boolean draw_sidebars boolean draw_ticmarks boolean draw_labels boolean draw_threshold boolean x_axis_text string $NULL y_axis_text string $NULL DESCRIPTION This is version 3, an upgrade from previous versions at the IAC, and an upgrade from "3D bar chart" in AVS5. This module provides 3D block diagram, with averaged statistics on side shadow panels, and annotation. A transparent theshold sheet is superimposed on city. Blocks can be picked for interogation of cell number. The picked cell is shown by a white top on the block. Various parts of the display may be turned on or off for clarity. Two scalar fields can be displayed, one contolling height, the other color, with two independent side stacked side bar statistics. User defined text may be placed at the tic marks on each side, or shown with numerical index values. The city scape module converts a two-dimensional floating point field into group of 3D blocks, represented as a GEOM-format mesh. Each element of the field is mapped to a "building". The height of each block above each point is proportional to the scalar value of the field. This is my attempt at "Business Graphics", for a multi-dimensional telecommunications statistics data application, except in interactive 3D. Side panels show the Min, Max and Average along each row and column in the 2D data. A threshold transparent sheet can be moved through the city to highlight specific values, where only values above the threshold will stick up beyond the sheet. Line tic marks and text labels show the row and column numbers, and the vertical scale The labels can be less frequent than tics, so they don't bunch up, using the increment controls, independent for horizontal and vertical. User supplied text can be placed here, with a single string using the first character as the label delimiter. Picking with the left mouse button on any part a city "block" will select that cell. The cell's top panel should turn white, a special object without normals, so no lighting will be applied. The X-Y index of this cell is then sent to the output integer ports for use by other modules. The blocks don't have bottoms, so you can look inside! This module does no normalization of the Z-height, while the x-y plane is approx 0.0 to 1.0 on each side. Use the dials to get your data range under control. The dials are unbounded to allow any data range. but will be over-sensitive for small numbers. Try flying over the city in perspective. The geometry generation makes both shaded and wireframe versions of the city, so the geometry viewer can select either one or both in the form of "outline gouraud" rendering mode. INPUTS Data Field (required; field 2D scalar uniform float) The input data must be a 2D field with a scalar data value at each element. Colormap Colors each block building in the city a specific color, according to the data value at that point. PARAMETERS Z scale height scale for whole city width relative width of each block, or narrowness of streets offset how far away the average shadow planes are from city threshold height of threshold sheet in city tic scale vertical scale tic mark pitch control x_axis_text, y_axis_text: If no string is supplied, then the x and y axis tic mark labels will get numerical annotation, "1 2 3 4 ...". If either of these strings is set, then the FIRST character is assumed to be a delimiter character, and is not shown. The remaining string is scanned for text segments bounded by the delimiter character and placed on successive tic marks, and the tic label spacing. For example, a string of "#Jan#Feb#Mar" will create three labels, "Jan", "Feb", and "Mar". OUTPUTS Geometry The output is an AVS geometry. X-index Integer port containing index of picked cell Y-index Integer port containing index of picked cell EXAMPLE see the network supplied in this directory.