$b2 $14(Id: Virtual coordinates and design inspection) $p1 Having adopted the structured design approach the circuit designer is free to concentrate on individual leaf cell creation. These leaf cells can be quite large and complicated and in most cases extend beyond the domain of the visible design workspace. By providing functions such as panning and viewing the editor offers a much larger virtual design workspace and uses the graphics screen only as a viewport into the design. $p1 The designer may then, during an editing session, view and edit sections of the layout at arbitrary design scales. Although each of the design subwindows can show sections of the same design in different scales, the whole of the design is represented and manipulated in its virtual coordinates, here being equal to 1/8 lambda (a conventional design dimension unit where its mapping onto real dimensions reflects the resolution of production technology). $p1 In the example the background window shows a simple 8x4 memory array reduced 4x, the next window with 2x reduction allows inspection of RAM cells abbutment and the top window, with 1.5x enlargement shows the alignment details on the right edge of the array. $b1 # $b1 $22[Deferred scaling] $p1 A $22[Dscale](factorX,factorY) declares the environmental deferred scaling factors in X and Y for the subordinate subgraph. The operation is not cummulative and there should be no more than one such node in each vertical path in the graph. The factors provide independent scaling in both axes, and do not take effect immediately, allowing for unscaled composition of objects in their virtual coordinates. They are applied only by the final drawing nodes prior to creating them on the screen. Within these nodes clipping is performed still in virtual coordinates. For that reason the only immediate effect of declaring a deferred scaling, remapping of the clipping environment from above into the virtual coodinates below. $p1 An inspection viewport into a design is created by vertically composed declarations of its position ($22[Move]), size ($22[Clip]) and viewing scale ($22[Dscale]). The node $22[Move](-vX,-vY) below expresses in designs virtual coordinates the positioning of the left bottom corner of the viewport. All the viewports share the same global design structure. Such "geometrical" viewing should be distinguished from "structured" viewing, where the viewport can point at the selected subgraphs within the design (the oblong window on previous page was in fact drawn by pointing just below Y iteration loop in the global design of RAM array). $p1 It is also worth noticing that the presented order of $22[Clip] and $22[Dscale] nodes fixes the physical size of the viewport, decreasing the amount of details as scaling factors increase. Swopping of these two nodes would result in a constant amount of detail and a growing viewport as the clipping would now be defined in the design's virtual coordinates. $n