[Artwork] / [QisMLib]

QisMLOA Extension

A QisMLib extension to define and add rich annotations (texts, bitmaps) to CAD data

QisMLOA ExtensionQisMLOA C++ API (qismloa.h)QisMLOAstreamVersion control (QisMLOAstream)Begin_loa_streamBegin_loa_patternAdd_loa_boundariesAdd_loa_referenceEnd_loa_patternEnd_loa_streamGet_error_msgQisMLOAsetPrm LOA_E_SETPRM_TTF_FNTDRLOA_E_SETPRM_FNTDRLOA_E_SETPRM_STRK_WGHTLOA_E_SETPRM_LN_SPCNGLOA_E_SETPRM_SLNTLOA_E_SETPRM_ASPCTLOA_E_SETPRM_CRCLRLOA_E_SETPRM_ARCRESLOA_E_SETPRM_CHRDERRLOA_E_SETPRM_PXLSZ_FCTRLOA_E_SETPRM_BUF_PRSTLOA_E_SETPRM_UNIONLOA_E_SETPRM_SRT_SZLOA_E_SETPRM_OUT_LYRLOA_E_SETPRM_THRNUMQisMLOAnnTypLOA_E_ANNTYP_FILELOA_E_ANNTYP_TEXTLOA_E_ANNTYP_BUFRQisMLOAnnItmLOA_E_ANNITM_TXYLOA_E_ANNITM_ANGLELOA_E_ANNITM_MIRROR_XLOA_E_ANNITM_MIRROR_YLOA_E_ANNITM_INVERTLOA_E_ANNITMFILE_SCALELOA_E_ANNITMTEXT_JSTFYLOA_E_ANNITMTEXT_BORDERQisMLOAmergeLOA_E_MERGE_VCELLLOA_E_MERGE_LYRS LOA_E_MERGE_TOP LOA_E_MERGE_OAS LOA_E_MERGE_GDS QisMLOAsetVersion control (QisMLOAset)Get_error_msg (QisMLOAset)Get_error_tag (QisMLOAset)Get_error_context (QisMLOAset)Begin_annotation_itemAdd_item_paramAdd_item_param_strCommit_annotation_itemSet_to_streamVersion control (QisMLOAfile)File_dbGet_error_msgGet_error_tagSave_to_gdsiiLOAD_DBG LOAD_WORK_DIR LOAD_SNP QisMLOAVersion control (QisMLOA)Get_error_msg (QisMLOA)Get_error_tag (QisMLOA)Get_error_context (QisMLOA)Reset_set_paramsAdd_set_paramGet_set_params_strNew_annotation_setDelete_annotation_setMerge_annotations_and_dbQisMLOAv2Merge_annotations_and_snp_dbMerge_and_loadUnload_dbQisMLOA Commandsloa.create_ann_setloa.destroy_ann_setloa.add_ann_bitmaploa.add_ann_textloa.create_ann_set_from_fileloaset.to_fileloa.merge_ann_with_dbloa.merge_ann_with_snp_dbloa.merge_and_loadloa.unload_dbQisMLOA Licensing (API)QisMLOA Licensing (Script)QisMLOA Version Historyqismloa dll/so v1.4 2025-07-16qismloa dll/so v1.3 2023-11-27qismloa dll/so v1.2 2023-05-04qismloa dll/so v1.1 2022-07-22qismloa dll/so v1.0 2022-06-08


QisMLOA C++ API (qismloa.h)

QisMLOAstream

Represents a callback handler that receives the annotation items as a GDS-style stream

Version control (QisMLOAstream)

Cast to a pointer of another version in the class hierarchy (base/derived)

Begin_loa_stream

Signals the start of the stream for a given set of annotations

Begin_loa_pattern

Signals the start of a new cell (pattern) definition

Add_loa_boundaries

Represents a single annotation item converted to a set of boundaries

Add_loa_reference

The annotation stream can be set to hierarchical or flat in Set_to_stream

End_loa_pattern

Signals the end of a cell definition

End_loa_stream

Signals the end of the annotation stream

Get_error_msg

In case the stream was abruptly terminated by returning a non-zero code via the callbacks, use this to return a suitable error message

QisMLOAsetPrm

Represents the options applied to the entire annotation set during creation

LOA_E_SETPRM_TTF_FNTDR

Option to specify the directory containing the font files

LOA_E_SETPRM_FNTDR

Option to specify the writeable directory to be used to create intermediate font files

LOA_E_SETPRM_STRK_WGHT

Option to set the stroke weight for polygons generated from fonts with path data. The width of stroked text is 1/stroke_weight the height of the text.

LOA_E_SETPRM_LN_SPCNG

Option to set the spacing (>0.001 user units) for annotation with multiple lines for LOA_E_ANNTYP_TEXT annotations

LOA_E_SETPRM_SLNT

Option to set the slant in degrees for the LOA_E_ANNTYP_TEXT annotations

LOA_E_SETPRM_ASPCT

Option to set the x/y aspect ratio for the LOA_E_ANNTYP_TEXT annotations

LOA_E_SETPRM_CRCLR

Toggle to smooth out fonts with arcs. This works in conjunction with LOA_E_SETPRM_ARCRES and LOA_E_SETPRM_CHRDERR

LOA_E_SETPRM_ARCRES

Sets the arc resolution for a particular set. This setting will keep reconstituted arcs within a certain distance of the original arc. Works in conjunction with LOA_E_SETPRM_CHRDERR

LOA_E_SETPRM_CHRDERR

Sets the arc recovery and chord error values

LOA_E_SETPRM_PXLSZ_FCTR

Sets the pixel size conversion factor

LOA_E_SETPRM_BUF_PRST

Toggles if bitmaps added via a buffer (LOA_E_ANNTYP_BUFR) will have the image buffer persist during the execution or not

LOA_E_SETPRM_UNION

Set the union mode for annotations

LOA_E_SETPRM_SRT_SZ

Set the size interval which sorting will be triggered for entries

LOA_E_SETPRM_OUT_LYR

Set the layer:datatype for the annotations in the output stream

LOA_E_SETPRM_THRNUM

Sets the no. of threads to be used during Set_to_stream

QisMLOAnnTyp

Represents the various types of annotations that can be defined

LOA_E_ANNTYP_FILE

Annotation defined by a bitmap file on disk

LOA_E_ANNTYP_TEXT

Annotation defined by a text string

LOA_E_ANNTYP_BUFR

Annotation defined by an image in a memory buffer

QisMLOAnnItm

Represents options used to flavor annotations

LOA_E_ANNITM_TXY

Option to translate the annotation along X and Y axes

LOA_E_ANNITM_ANGLE

Option to rotate the annotation about a point

LOA_E_ANNITM_MIRROR_X

Option to mirror the annotation about the Y axis (along X)

LOA_E_ANNITM_MIRROR_Y

Option to mirror the annotation about the X axis (along Y)

LOA_E_ANNITM_INVERT

Option to invert the annotation

LOA_E_ANNITMFILE_SCALE

Option to scale the annotation (only for LOA_S_ANNTYP_FILE and LOA_S_ANNTYP_BUFR types)

LOA_E_ANNITMTEXT_JSTFY

Option to justify a text annotation (type LOA_S_ANNTYP_TEXT)

LOA_E_ANNITMTEXT_BORDER

Option to add border to a text annotation (type LOA_S_ANNTYP_TEXT)

QisMLOAmerge

Represents the options to be used for merging a set of annotations with a source database

LOA_E_MERGE_VCELL

Set the view cell (from the source database)

LOA_E_MERGE_LYRS

Set a list of comma-separated layers (and optionally datatypes) indicating that only the specified layers will be extracted from the source

LOA_E_MERGE_TOP

Set the name of the output top cell

LOA_E_MERGE_OAS

Set the output file format to OASIS

LOA_E_MERGE_GDS

Set the output file format to GDSII

QisMLOAset

Represents the interface to a set of annotations

Version control (QisMLOAset)

Cast to a pointer of another version in the class hierarchy (base/derived)

Get_error_msg (QisMLOAset)

Get_error_tag (QisMLOAset)

Get_error_context (QisMLOAset)

Get the error message, tag and context for the specified error condition represented by code returned by the corresponding operation

Begin_annotation_item

Begin the definition of a new annotation item in the set

Add_item_param

Add_item_param_str

Add optional parameters corresponding to the annotation being defined

Commit_annotation_item

End and commit (save) the annotation being defined

Set_to_stream

Receive all annotations from the set as a GDSII-like stream

Version control (QisMLOAfile)

Cast to a pointer of another version in the class hierarchy (base/derived)

File_db

Get handle to the underlying QisMFile db so that it can be used with other APIs in the QisM system.

Get_error_msg

Get_error_tag

Get error message and tag (error code as a string) for a recent error

Save_to_gdsii

Export the database to a GDSII file on disk at the specified path gds_output_path (dir + filename + extension)

LOAD_DBG

Preserve the working files and temporary directory created by Merge_and_load even after the database has been destroyed

LOAD_WORK_DIR

Specify the directory where the temporary folder will be created during Merge_and_load

LOAD_SNP

Inform Merge_and_load that the database to be merged and loaded is paint&scratch

QisMLOA

Represents the primary interface to the QisMLOA extension

Version control (QisMLOA)

Cast to a pointer of another version in the class hierarchy (base/derived)

Get_error_msg (QisMLOA)

Get_error_tag (QisMLOA)

Get_error_context (QisMLOA)

Get the error message, tag and context for the specified error condition represented by code returned by the corresponding operation

Reset_set_params

Reset the parameters used to initialize an annotation set

Add_set_param

Add a parameter to initialize an annotation set

Get_set_params_str

Get the entire list of parameters used to initialize the annotation set as a c-string

New_annotation_set

Delete_annotation_set

Create and destroy a new annotation set

Merge_annotations_and_db

Merge the specified annotation set with a source DB in form of a GDSII/OASIS file on disk

QisMLOAv2

Extension-2 to QisMLOA

Merge_annotations_and_snp_db

Merge the specified annotation set with a source paint&scratch DB created from Gerber or ODB++ data. The output GDSII/OASIS file preserves the paint&scratch format

Merge_and_load

Unload_db

Merge the specified annotation set with a source standard or paint&scratch DB and load it back into QisMLib to create a new database

QisMLOA Commands

QisMScript Commands to define and add rich annotations (texts, bitmaps) to CAD data

loa.create_ann_set

Create a new annotation set and associates it with a script variable name {id} of type QisMLOAset*

loa.destroy_ann_set

Destroys an annotation set represented by the script variable named {id} of type QisMLOAset*

loa.add_ann_bitmap

Add a bitmap based annotation item to the set

loa.add_ann_text

Add a text string based annotation to the set

loa.create_ann_set_from_file

Create an annotation set from a file in an internal Artwork format (SFGen)

loaset.to_file

Generate a GDSII file from the annotation set

loa.merge_ann_with_db

Merge annotation set with the specified db and create a new CAD file on disk

loa.merge_ann_with_snp_db

Merge annotation set with the specified paint&scratch db and create a new paint&scratch CAD file on disk

loa.merge_and_load

Create a new db from the merger of an existing db and one or more annotatition sets

loa.unload_db

Destroy a database created by loa.merge_and_load

QisMLOA Licensing (API)

Product name : QisMLOA License code : 4250

BEGINEND
QisMLOA::New_annotation_set(..)QisMLOA::Delete_annotation_set(..)

QisMLOA Licensing (Script)

Product name : QisMLOA License code : 4250

BEGINEND
loa.create_ann_setloa.destroy_ann_set
loa.create_ann_set_from_fileloa.destroy_ann_set

QisMLOA Version History

qismloa dll/so v1.4 2025-07-16

qismloa dll/so v1.3 2023-11-27

qismloa dll/so v1.2 2023-05-04

qismloa dll/so v1.1 2022-07-22

qismloa dll/so v1.0 2022-06-08


ARTWORK CONVERSION SOFTWARE, INC.
417 Ingalls St. Unit C, Santa Cruz, CA 95060 831.426.6163  email: info@artwork.com

Last Updated -- Thu Jul 17 00:01:43 UTC 2025