There functions are related to creating and using ``special'' databases. A special database is a spatially sorted container for objects or trapezoids (not cell instances or cells), with varying internal formats. The following script functions expose this functionality.
See the table in 14.1 for the features that apply during a call to this function. An overall transformation can be set with ChdSetFlatReadTransform, in which case the area given applies in the ``root'' coordinates.
The scale factor will be applied to all coordinates. The accepted range is 0.001 - 1000.0.
The cellname, if nonzero, must be the cell name after any aliasing that was in force when the CHD was created. If cellname is passed 0, the default cell for the CHD is understood. This is a cell name configured into the CHD, or the first top-level cell found in the archive file.
The array, if not 0, is an array of four values or larger giving a rectangular area of cellname to read. The values are in microns, in order L,B,R,T. If zero, the entire cell bounding box is understood. If the boolean value clip is nonzero, objects will be clipped to the array, if given. The dbname is a string which names the database. This can be any short name string. The database can be retrieved or cleared using this name.
The return value is 1 on success, 0 otherwise, with an error message likely available from GetError.
See the table in 14.1 for the features that apply during a call to this function. An overall transformation can be set with ChdSetFlatReadTransform, in which case the area given applies in the ``root'' coordinates.
The scale factor will be applied to all coordinates. The accepted range is 0.001 - 1000.0.
The cellname, if nonzero, must be the cell name after any aliasing that was in force when the CHD was created. If cellname is passed 0, the default cell for the CHD is understood. This is a cell name configured into the CHD, or the first top-level cell found in the archive file.
The array, if not 0, is an array of four values or larger giving a rectangular area of cellname to read. The values are in microns, in order L,B,R,T. If zero, the entire cell bounding box is understood. If the boolean value clip is nonzero, trapezoids will be clipped to the array, if given. The dbname is a string which names the database. This can be any short name string. The database can be retrieved or cleared using this name.
The return value is 1 on success, 0 otherwise, with an error message likely available from GetError.
See the table in 14.1 for the features that apply during a call to this function. An overall transformation can be set with ChdSetFlatReadTransform, in which case the area given applies in the ``root'' coordinates.
The scale factor will be applied to all coordinates. The accepted range is 0.001 - 1000.0.
The cellname, if nonzero, must be the cell name after any aliasing that was in force when the CHD was created. If cellname is passed 0, the default cell for the CHD is understood. This is a cell name configured into the CHD, or the first top-level cell found in the archive file.
The array, if not 0, is an array of four values or larger giving a rectangular area of cellname to read. The values are in microns, in order L,B,R,T. If zero, the entire cell bounding box is understood. The dbname is a string which names the database. This can be any short name string. The database can be retrieved or cleared using this name.
The dx, dy are the grid spacing values for the bins, in microns. These values must be positive. The bx, by are non-negative overlap bloat values for the bins. The actual bins are bloated by these values in the x and y directions. The trapezoids will be clipped to the bins.
The return value is 1 on success, 0 otherwise, with an error message likely available from GetError.
The second argument is a string containing a space-separated list of layer names, or 0. Objects for each of the given layers will be obtained. Objects on the same layer will be grouped together, with groups ordered as in the layer_list. If this argument is 0, all layers will be used, ordered bottom-up as in the layer table.
The third argument is an array, as passed to ChdOpenOdb, or 0. If 0, all objects for the specified layers in the database will be retrieved. Otherwise, only those objects with bounding boxes that overlap the array rectangle with nonzero area will be retrieved. The objects retrieved are copies of the database objects, which are not affected.
The third argument is the reference trapezoid list. If the database was opened with ChdOpenOdb or ChdOpenZdb, the returned zoidlist will be clipped to the reference list. If the database was opened with ChdOpenZbdb, the trapezoids for the bin containing the center of the first trapezoid in the reference list will be returned. In all cases, the returned trapezoids are copies, the database is not affected.
See also the GetZlist function, which can work similarly.