Skip to content

Commit 8ea7ec3

Browse files
authored
Merge pull request #904 from compas-dev/artist-factory
Universal CAD artists
2 parents b54c303 + a74776f commit 8ea7ec3

File tree

105 files changed

+3966
-4397
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

105 files changed

+3966
-4397
lines changed

CHANGELOG.md

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,11 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
1515
* Added `__add__`, `__sub__`, `__and__` to `compas.geometry.Shape` for boolean operations using binary operators.
1616
* Added `is_closed` to `compas.geometry.Polyhedron`.
1717
* Added `Plane.offset`.
18+
* Added `compas.artists.Artist`.
19+
* Added pluggable `compas.artists.new_artist`.
20+
* Added plugin `compas_rhino.artists.new_artist_rhino`.
21+
* Added plugin `compas_blender.artists.new_artist_blender`.
22+
* Added `compas.artist.DataArtistNotRegistered`.
1823
* Added `draw_node_labels` and `draw_edgelabels` to `compas_blender.artists.NetworkArtist`.
1924
* Added `compas_blender.artists.RobotModelArtist.clear`.
2025
* Added `compas_blender.geometry.booleans` as plugin for boolean pluggables.
@@ -23,6 +28,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
2328
### Changed
2429

2530
* Fixed bug in `compas_blender.draw_texts`.
31+
* Changed `compas_rhino.artists.BaseArtist` to `compas_rhino.artists.RhinoArtist`.
32+
* Changed `compas_blender.artists.BaseArtist` to `compas_blender.artists.BlenderArtist`.
2633
* Changed default resolution for shape discretisation to 16 for both u and v where relevant.
2734
* Changed base class of `compas.geometry.Primitive` and `compas.geometry.Shape` to `compas.geometry.Geometry`.
2835
* `compas_blender.artists.RobotModelArtist.collection` can be assigned as a Blender collection or a name.
9.26 KB
Loading
-30.7 KB
Loading
-48 KB
Loading

docs/_templates/autosummary/base.rst

Lines changed: 0 additions & 5 deletions
This file was deleted.

docs/_templates/autosummary/class.rst

Lines changed: 0 additions & 28 deletions
This file was deleted.

docs/_templates/autosummary/module.rst

Lines changed: 0 additions & 3 deletions
This file was deleted.

docs/api/compas.artists.rst

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
2+
.. automodule:: compas.artists

docs/conf.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -350,6 +350,6 @@ def linkcode_resolve(domain, info):
350350
html_copy_source = False
351351
html_show_sourcelink = False
352352
html_permalinks = False
353-
html_add_permalinks = ""
353+
html_permalinks_icon = ""
354354
html_experimental_html5_writer = True
355355
html_compact_lists = True

docs/devguide.rst

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -390,10 +390,12 @@ Advanced options
390390

391391
There are a few additional options that plugins can use:
392392

393-
* ``requires``: List of required python modules. COMPAS will filter out plugins if their
393+
* ``requires``: List of requirements. COMPAS will filter out plugins if their
394394
requirements list is not satisfied at runtime. This allows to have multiple implementations
395-
of the same operation and have them selected based on which packages are installed.
396-
on the system. Eg. `requires=['scipy']`.
395+
of the same operation and have them selected based on different criteria.
396+
The requirement can either be a package name string (e.g. ``requires=['scipy']``) or
397+
a ``callable`` with a boolean return value, in which any arbitrary check can be implemented
398+
(e.g. ``requires=[lambda: is_rhino_active()]``).
397399
* ``tryfirst`` and ``trylast``: Plugins cannot control the exact priority they will have
398400
but they can indicate whether to try to prioritize them or demote them as fallback using
399401
these two boolean parameters.

0 commit comments

Comments
 (0)