Skip to content

Commit 7bc71d4

Browse files
authored
Merge branch 'main' into bugfix/update-installation-chatgpt
2 parents e567910 + 57db15c commit 7bc71d4

20 files changed

Lines changed: 181 additions & 11 deletions

File tree

pyproject.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[project]
22
name = "cwapi3d"
3-
version = "32.443.7"
3+
version = "32.443.8"
44
authors = [{ name = "Cadwork", email = "it@cadwork.ca" }]
55
requires-python = ">= 3.12"
66
description = 'Python bindings for CwAPI3D'

src/attribute_controller/__init__.pyi

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,13 @@
1+
"""Non-geometric properties and classification of elements.
2+
3+
Covers everything that describes an element without changing its shape:
4+
identification and labelling (name, group, comment, production data),
5+
user-defined attributes and their lists, element-type classification
6+
(beam, panel, auxiliary, wall, roof, floor, drilling, export-solid, ...),
7+
and the configuration of how these attributes are displayed in the
8+
different views of the application.
9+
"""
10+
111
from cadwork.api_types import *
212
from cadwork.attribute_display_settings import attribute_display_settings
313
from cadwork.element_grouping_type import element_grouping_type

src/bim_controller/__init__.pyi

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,13 @@
1+
"""Building Information Modeling (BIM) workflows.
2+
3+
Covers the IFC ecosystem and the building-structural metadata that
4+
goes with it: IFC import/export in its supported schema versions,
5+
configuration of IFC export options (properties, project data,
6+
aggregation, element combination), and assignment of building and
7+
storey information to elements. The module to use whenever the model
8+
needs to interoperate with IFC-based BIM tooling.
9+
"""
10+
111
from cadwork.ifc_2x3_element_type import ifc_2x3_element_type
212
from cadwork.ifc_options import ifc_options
313
from cadwork.ifc_predefined_type import ifc_predefined_type

src/cadwork/__init__.pyi

Lines changed: 8 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,12 @@
1-
"""cadwork Python API type definitions.
1+
"""Core data model of the cadwork API.
22
3-
This module re-exports all cadwork data types, enumerations, and utility classes.
4-
5-
Usage::
6-
7-
from cadwork import point_3d, element_type
8-
9-
# or
10-
import cadwork
11-
p = cadwork.point_3d(0.0, 0.0, 0.0)
3+
Defines the foundational types, enums, and value objects shared across
4+
all controller modules: geometric primitives, identifier types (elements,
5+
materials, end-types, multi-layer sets, etc.), classification enums
6+
(element types, IFC types, machine and BTL versions, multi-layer kinds,
7+
display options), and the configurable option/property objects passed
8+
into controllers. This module describes *what things are* in cadwork;
9+
the controller modules describe *what you can do with them*.
1210
"""
1311

1412
# --- Type aliases ---

src/connector_axis_controller/__init__.pyi

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,12 @@
1+
"""Fastener and connector axes.
2+
3+
Domain of the linear assemblies that represent bolts, screws, dowels
4+
and similar connectors: their creation, validation, the catalog items
5+
attached to them (bolt, nut, washer, ...), per-item user fields, and
6+
the configuration UI for connector axes. Distinct from connector
7+
*nodes* and from drillings, which live in element_controller.
8+
"""
9+
110
from cadwork.point_3d import point_3d
211
from cadwork.api_types import *
312
from cadwork.vba_catalog_item_type import vba_catalog_item_type

src/dimension_controller/__init__.pyi

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,12 @@
1+
"""3D dimension annotations on the model.
2+
3+
Domain of dimension elements as first-class objects in the model:
4+
their creation on a defined plane, the points they measure, their
5+
formatting and orientation, and visualisation options such as
6+
overall dimensions. Distinct from shop-drawing dimensions, which
7+
are produced as part of 2D output.
8+
"""
9+
110
from cadwork.point_3d import point_3d
211
from cadwork.dimension_base_format import dimension_base_format
312
from cadwork.api_types import *

src/element_controller/__init__.pyi

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,14 @@
1+
"""Lifecycle and structural manipulation of model elements.
2+
3+
Domain of element existence: creation of every kind of element from
4+
parameters or geometry, duplication and mirroring, deletion, type
5+
conversion between element kinds, selection and identification, GUID
6+
management, grouping into details/containers, and high-level structural
7+
edits (processes, end-profile cuts, joinery operations). This is the
8+
entry point for any operation that adds, removes, or fundamentally
9+
transforms what exists in the model.
10+
"""
11+
112
from cadwork.edge_list import edge_list
213
from cadwork.element_module_properties import element_module_properties
314
from cadwork.facet_list import facet_list

src/endtype_controller/__init__.pyi

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,12 @@
1+
"""End-type joinery: profiled cuts at element faces.
2+
3+
Domain of named joinery profiles (tenons, mortises, dovetails,
4+
custom shapes, ...) applied to the start, end or arbitrary faces
5+
of an element. Covers the catalog (creation, lookup by name and
6+
id), assignment to specific element faces, retrieval of currently
7+
applied end-types, and the interactive selection dialog.
8+
"""
9+
110
from cadwork.api_types import *
211

312
def get_endtype_id(name: str) -> EndtypeId:

src/file_controller/__init__.pyi

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,12 @@
1+
"""Interchange with external 3D and CAD file formats.
2+
3+
Handles import and export of geometry between cadwork and third-party
4+
formats (3DC, STEP, SAT, Rhino, BTL, BXF, DXF, DSTV, FBX, OBJ, STL,
5+
GLB, WebGL, variants, ...). Concerned only with neutral-format data
6+
exchange — BIM-specific (IFC) workflows live in bim_controller, and
7+
shop-drawing 2D exports live in shop_drawing_controller.
8+
"""
9+
110
from cadwork.import_3dc_options import import_3dc_options
211
from cadwork.point_3d import point_3d
312
from cadwork.bim_team_upload_result import bim_team_upload_result

src/geometry_controller/__init__.pyi

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,13 @@
1+
"""Spatial and metric properties of elements.
2+
3+
Concerned with the pure geometry of an element: its dimensions,
4+
volumes, areas, weights, local coordinate system (axes and reference
5+
points), facets and edges, and rigid transformations applied to the
6+
element's own frame (axis flips and rotations). Use this module to
7+
*measure* or *reorient* an element's geometry; use element_controller
8+
to create or destroy it.
9+
"""
10+
111
from cadwork.api_types import ElementId, UnsignedInt
212
from cadwork.facet_list import facet_list
313
from cadwork.point_3d import point_3d

0 commit comments

Comments
 (0)