Skip to content

API Reference

The LinkCAD Python API is organized into the following modules, all accessible through the stable linkcad.v1 namespace. The current Python plugin and database additions are part of v1, so scripts should continue to import from linkcad.v1.*.

ModulePurposeDocumentation
linkcad.v1.pluginPlugin framework — decorators, options, reader/writer base classes, DrawingBuilder, WriterController, dialog specsPlugin development
linkcad.v1.dbDrawing database — cells, layers, shapes, curves, text, locks, transactions, drawing helpersData access
linkcad.v1.geomGeometry primitives — points, vectors, transforms, bounds, anglesCoordinate math
linkcad.v1.editGeometry tasks — merge, flatten, snap, join, explodeBatch operations
linkcad.v1.envOptions and logging — read/write persistent options, event logSettings & diagnostics
linkcad.v1.convFile format conversion — load and save drawings programmaticallyFormat I/O
linkcad.v1.libgraphBoolean geometry engine — union, intersection, difference on polygonsShape math
linkcad.v1.controllerConversion workflow controller — full wizard pipelineHigh-level conversion

Import Patterns

# Plugin framework
from linkcad.v1.plugin import tool, Tool, Option, TableColumn
from linkcad.v1.plugin import format_reader, FormatReader, DrawingContext, DrawingBuilder
from linkcad.v1.plugin import format_writer, FormatWriter, WriterContext, WriterController
from linkcad.v1.plugin import DialogSpec, ChoiceItem, EventLog, Phase, LayerFlags, SortOrder
from linkcad.v1.plugin import HolesMode, PolygonType, EndCap, FillRule
# Database
from linkcad.v1.db import Drawing, Cell, Layer, Shape, Polygon, Polyline
from linkcad.v1.db import Arc, Ellipse, Donut, Nurbs, Text, Ref
from linkcad.v1.db import Color, Property, ReadLock, WriteLock, Transaction, Unit
from linkcad.v1.db import EndCap, FillRule, BooleanOperation, MergeLayerPolarityResult
# Geometry
from linkcad.v1.geom import Point, Vector, Bounds, Transformation, Angle, Resolution
# Edit tasks
from linkcad.v1.edit import MergeTask, FlattenTask, FillRule, HolesMode
# Options & logging
from linkcad.v1.env import get_option_boolean, set_option_boolean, EventLog, Severity
# File conversion
from linkcad.v1.conv import Conversion, Conversions, FormatRegistry, Format, FormatAttributes
# Boolean geometry
from linkcad.v1.libgraph import boolean_and, boolean_or, ShapeProcessor
# Conversion controller
from linkcad.v1.controller import ConversionController