The following notes describe the command line and arguments used when running the library via its sample executable, QisMCorrections.
Command Line
qismcorrections +input:{input-gds-oas-file} +outdir:{output-directory} [OPTIONS]
Required Arguments
input:{input-gds-oas-file}
Specify a valid GDSII file from which to extract clips
outdir:{output-directory}
Specify the path of a directory where the output file will be created
The output directory MUST exist
[OPTIONS]
Correction Specifications
The following arguments enable the user to define the type and amount of correction. There are a number of different methods available; see the comment to determine which can work together and which methods are stand alone.
-correct:{x},{y},{dx},{dy}
Specify a single point where correction is defined/measured
{x},{y} are the co-ordinates of the point in file space and {dx},{dy} is the measured correction (all in file-units)
Specify one or more correction points using this option
Does not work with -rotate, -scale, -shear, -mirror. Previous occurrences of these are overridden
Default: No correction. Output polygon = Input polygon
-rotate:{degrees}
Apply correction in form of simple rotation
Does not work with -correct, -scale, -shear, -mirror. Previous occurrences of these are overridden
Default: No correction. Output polygon = Input polygon
-scale:{scalex}[,{scaley}]
Apply correction in form of simple scaling along X, Y axes (scale > 0.0)
Single parameter represents uniform scaling along both axes
Does not work with -correct, -rotation, -shear, -mirror. Previous occurrences of these are overridden.
Default: No correction. Output polygon = Input polygon.
-shear:{'upper'|'lower'|'right'|'left'},{amount}
Apply correction in form of shear along the specified edge of the home view
upper = max-y, lower = min-y, right = max-x, left = min-x
amount is in file-units
Does not work with -correct, -rotation, -scale, -mirror. Previous occurrences of these are overridden
Default: No correction. Output polygon = Input polygon
-mirror:{'x'|'y'|'xy'}
Apply correction in form of mirroring about the specified axis
Does not work with -correct, -rotation, -scale, -shear. Previous occurrences of these are overridden
Default: No correction. Output polygon = Input polygon
Window Specifications
Individual Windows
-window:LLUR,{filename}:{llx},{lly},{urx},{ury}
Specify a window using it's lower left and upper right co-ordinates (in file units)
The filename is used to identify the window and the file generated by processing this window.
Final output path = {output-directory} + {filename} + {extension}
Default: Use home view as a single window. Output path = {cellname} + {extension}
-window:LLWH,{filename}:{llx},{lly},{width},{height}
Specify a window using it's lower left co-ordinates, width and height (in file units)
The filename is used to identify the window and the file generated by processing this window.
Final output path = {output-directory} + {filename} + {extension}
Default: Use home view as a single window. Output path = {cellname} + {extension}
-window:CWH,{filename}:{cx},{cy},{width},{height}
Specify a window using it's center co-ordinates, width and height (in file units)
The filename is used to identify the window and the file generated by processing this window.
Final output path = {output-directory} + {filename} + {extension}
Default: Use home view as a single window. Output path = {cellname} + {extension}
Supplying a List of Windows from a Text File
@window:LLUR,{filename}:{window-list-file}
Read a set of windows from a text file located at {window-list-file}
Each line in that file specifies a single window as <LLX>,<LLY>,<URX>,<URY> (in file units)
Lines beginning with a # are treated as comments
The filename is used to identify the windows and the files generated by processing this window.
Final output path = {output-directory} + {filename} + {line-number} + {extension}
Default: Use home view as a single window. Output path = {cellname} + {extension}
@window:WHLL,{filename}:{window-list-file}
Read a set of windows from a text file located at {window-list-file}
The first line specifies the {width},{height} (in file units) to be used for all windows
Each subsequent line in that file specifies the lower left co-ordinate (in file units) where a single window is to be placed
Lines beginning with a # are treated as comments
The filename is used to identify the windows and the files generated by processing this window.
Final output path = {output-directory} + {filename} + {line-number} + {extension}
Default: Use home view as a single window. Output path = {cellname} + {extension}
@window:WGC,{filename}:{window-list-file}
Read a set of windows from a text file located at {window-list-file}
The first line specifies the {width},{height} (in file units) to be used for all windows
Each subsequent line in that file specifies the co-ordinates a point in file units) where the center of a window is to be placed
Lines beginning with a # are treated as comments
The filename is used to identify the windows and the files generated by processing this window.
Final output path = {output-directory} + {filename} + {line-number} + {extension}
Default: Use home view as a single window. Output path = {cellname} + {extension}
Tiling - Specifying an array of windows
-tile:RXY,{filename}:{roi-llx},{roi-lly},{roi-urx},{roi-ury}:{nx},{ny}[:{i},{j}]*
Generate {nx} x {ny} same sized tiles from a region defined by it's lower left and upper right co-ordinates (in file units)
Optionally, if a set of {i},{j} tile positions (1 <= i <= nx and 1 <= j <= ny) are specified, only those tiles will be extracted. Otherwise, all tiles will be extracted
The filename is used to identify the windows and the files generated by processing this window.
Final output path = {output-directory} + {filename} + {i}.{j} +{extension}
Default: Use home view as a single window. Output path = {cellname} + {extension}
-tile:RWH,{filename}:{roi-llx},{roi-lly},{roi-urx},{roi-ury}:{width},{height}[:{i},{j}]*
Generate {width} x {height} same sized tiles from a region defined by it's lower left and upper right co-ordinates (in file units)
Optionally, if a set of {i},{j} tile positions (1 <= i <= Num. tiles in X and 1 <= j <= Num. tiles in Y) are specified, only those tiles will be extracted. Otherwise, all tiles will be extracted.
The filename is used to identify the windows and the files generated processing this window.
Final output path = {output-directory} + {filename} + {i}.{j} + {extension}
Default: Use home view as a single window. Output path = {cellname} + {extension}
-tile:WHC,{filename}:{width},{height}:<CX>,<CY>[:<CX>,<CY>]*
Generate {width} x {height} sized tiles centered at one or more co-ordinates
The filename is used to identify the windows and the files generated thereof
Final output path = {output-directory} + {filename} + {counter} + {extension}
Default: Use home view as a single window. Output path = {cellname} + {extension}
-rand:CXY,{roi-llx},{roi-lly},{roi-urx},{roi-ury}:{width},{height}:{count}
Generate {count} {width} x {height} at random locations within the specified region of interest (roi)
Final output path = {output-directory} + {filename} + {counter} + {extension}
Default: Use home view as a single window. Output path = {cellname} + {extension}
FILE-OPTIONS (Optional)
-layers:{layers}
Specify a comma-separated list of layer and/or layer:datatype to be loaded prior to extraction
e.g -layers:1,2:2,3,4:4,4:5
If the datatype is omitted, all the datatypes for the corresponding layer will be loaded
Any layer:datatype that does not match this specification will be filtered out
By default, all the layers in the file are loaded
-cell:{cellname}
Specify the name of the cell to be used as the view cell from which clips will be extracted.
By default, the deepest top cell is used as the view cell.
-format:NONE | -format:GDSII
Specify output format
NONE : Only generate corrected polygons, do not write them to disk
GDSII (default): Write the corrected polygons to disk as GDSII file(s)
Miscellaneous Settings [Optional]
-domains:{layer-number}
Output correction domains as polygons on the specified layer
{layer-number}:0 represents original domain points, {layer-number}:1 represents corrected domain points
Default: OFF
-source:{layer-offset}
Output source polygons at the specified layer-offset in addition to corrected polygons.
Default: Only corrected polygons are passed to the output.
-thrnum:{n-threads}
Number of threads to be used per window for computing the corrections
Default: The number of CPU cores
-polybuffer:{num-polygons}
For better memory usage and multi-threaded computation, buffer input polygons up to the specified number (per window) and then process them as a batch.
Default: 64K polygons
If set to 0, each polygon is corrected as it is received from the database with 1 thread.
-log:{new-file}
or
-log+:{existing-file}
Generate an execution log (text file) or append to an existing text file.
Default: No log.
-silent
Do not send progress updates to stdout/stderr. Doing so might result in slight improvement in execution tim.e
By default, clipextract prints messages and progress updates to stdout/stderr.