Python package
ra.cathedral
Cathedral shanks: arms rising toward the setting.
import rhinoartisan as ra
Wraps ArtisanPlugin.Scripting.CathedralApi.
Functions
| Function | |
|---|---|
all() | Cathedral handles for every object of this kind in the active document (empty when there is no document). |
by_layer() | Cathedral handles on the layer with the given full path (empty when the layer does not exist). |
count() | Number of objects of this kind in the active document. |
create() | Builds a cathedral ring shank (the ArtisanCathedral tool, headless): a band whose arms rise toward the setting, optionally with a pavé row of gems along the top. |
find() | The handle for id, or None when the id does not belong to an object of this kind. |
selected() | Cathedrals currently selected in the active doc. |
ra.cathedral.all()
ra.cathedral.all() -> List[Cathedral]
Cathedral handles for every object of this kind in the active document (empty when there is no document).
ra.cathedral.by_layer()
ra.cathedral.by_layer(layer_name: str) -> List[Cathedral]
Cathedral handles on the layer with the given full path (empty when the layer does not exist).
| Parameter | Type | |
|---|---|---|
layer_name | str | required |
ra.cathedral.count()
ra.cathedral.count() -> int
Number of objects of this kind in the active document.
ra.cathedral.create()
ra.cathedral.create(top_width=None, top_height=None, bottom_width=None, bottom_height=None, arm_width=None, arm_height=None, finger_diameter=None, with_gems=None, gem_size=None, gems_angle=None, profile=None, plane=None, element=None) -> Cathedral
Builds a cathedral ring shank (the ArtisanCathedral tool, headless): a band whose arms rise toward the setting, optionally with a pavé row of gems along the top. This is the shank under most halo and solitaire designs. Millimetres; omitting keeps the tool default (or the user’s saved defaults): top_width 2.5, top_height 1.9, bottom_width 3.5, bottom_height 1.8, arm_width 4.5, arm_height 3.5. finger_diameter 0 = the document’s configured finger size. with_gems True enables the gem row (gem_size default 1.3 mm, gems_angle default 180 degrees of the shank covered). profile picks a RING_PROFILE asset by name; omitted = the default profile. plane omitted = world XY. Returns an Cathedral handle to the new shank. element = name of a saved element (ra.elements.list) to start from; explicit arguments override it.
| Parameter | Type | |
|---|---|---|
top_width | float | optional — None = the tool default |
top_height | float | optional — None = the tool default |
bottom_width | float | optional — None = the tool default |
bottom_height | float | optional — None = the tool default |
arm_width | float | optional — None = the tool default |
arm_height | float | optional — None = the tool default |
finger_diameter | float | optional — None = the tool default |
with_gems | bool | optional — None = the tool default |
gem_size | float | optional — None = the tool default |
gems_angle | float | optional — None = the tool default |
profile | str | optional — None = the tool default |
plane | Optional[PlaneLike] | optional — None = the tool default |
element | str | optional — None = the tool default |
ra.cathedral.find()
ra.cathedral.find(id: IdLike) -> Cathedral
The handle for id, or None when the id does not belong to an object of this kind.
| Parameter | Type | |
|---|---|---|
id | IdLike | required |
ra.cathedral.selected()
ra.cathedral.selected() -> List[Cathedral]
Cathedrals currently selected in the active doc.
Handles
Objects returned by the functions above. Assigning a settable property regenerates the object; the change is one undo step inside ra.transaction().
Cathedral (handle)
Cathedral ring shank (multiple gems possible) — no single MotherGem.
| Property | Type | Settable | |
|---|---|---|---|
gems | CathedralGems | ||
layer_name | str | ||
mother_gem_id | str | ||
object_type | str | ||
position | Point3d | ||
ring_diameter_mm | float | ||
ring_size_label | str | ||
ring_size_region | str | ||
shank | CathedralShank | Parameter sections — each is a live view over the shank’s stored parameters; their setters regenerate the shank in place (same Guid) and call LicenseGate.RequireValid() first. Millimetres. |
| Method | |
|---|---|
delete() | |
move(translation: VectorLike) | |
set_bottom_height(height: float) | |
set_bottom_width(width: float) | |
set_element(element: str) | Applies a saved Cathedral element (ra.elements.list(“Cathedral”)) to this shank: its parameters replace the current ones, the ring size stays, and the shank regenerates in place (same id). |
set_top_height(height: float) | |
set_top_width(width: float) | Shortcuts for the most common edits — same effect as the equivalent Shank setters. |
Plus what every handle has: id, delete(), update(**kwargs), parameters(), equality and hashing by id, and raw (the underlying .NET object).
CathedralGems (section)
The pavé row a cathedral carries along its top — one run per arm.
| Property | Type | Settable | |
|---|---|---|---|
angle | float | yes | degrees of the band covered by gems (180 = top half) |
automatic_prong_diameter | bool | yes | |
bright_cut | float | yes | bright-cut width, mm |
double_prong_setting | bool | yes | |
drill_allow_intersection | bool | yes | |
drill_enabled | bool | yes | |
drill_height | float | yes | mm |
drill_type | str | yes | ”NONE”, “ROUND” or “QUAD” |
drill_visible | bool | yes | bake the drill cutters as visible objects |
drill_width | float | yes | mm |
enabled | bool | yes | |
extension_for_manufacturing | float | yes | mm |
gem_inside | float | yes | how deep the gems sit inside, mm |
gem_shape | str | yes | ”ROUND”, “PRINCESS”, … |
gem_size | float | yes | mm |
inner_height | float | yes | inner channel height, mm |
inner_margin | float | yes | inner margin, mm |
inner_width | float | yes | inner channel width, mm |
margin | float | yes | side margin, mm |
min_distance | float | yes | minimum distance between gems, mm |
prong_diameter | float | yes | mm — used when AutomaticProngDiameter is False |
prong_height | float | yes | mm |
prong_type | str | yes | ”NONE”, “SHARED” or “SCALLOPED” |
scallop_gem_height | float | ||
scallop_gem_width | float | Scalloped-setting proportions (percentages, not mm). | |
scallop_prong_height | float | ||
scallop_prong_width | float | ||
scallop_rail_height | float | ||
scallop_rail_width | float | ||
scallop_remove_channel | bool | yes | |
vertical | float | yes | vertical displacement of the row, mm |
| Method | |
|---|---|
set_scallop_gem(width: float, height: float) | |
set_scallop_prong(width: float, height: float) | |
set_scallop_rail(width: float, height: float) |
CathedralShank (section)
The cathedral band itself: the two band sections, the rising arms and the bridge that spans between them.
| Property | Type | Settable | |
|---|---|---|---|
arm_angle | float | yes | degrees |
arm_height | float | yes | how high the arms climb over the finger circle, mm |
arm_tangent | float | yes | tangency of the arm transition |
arm_width | float | yes | opening between the rising arms, mm |
bottom_height | float | yes | mm |
bottom_width | float | yes | band section at the bottom, mm |
bridge_diameter | float | yes | mm |
bridge_enabled | bool | yes | the bridge spanning between the arms |
bridge_fillet | float | yes | mm |
bridge_thickness | float | yes | mm |
bridge_width | float | yes | mm |
cap_distance | float | yes | mm |
profile_name | str | RING_PROFILE asset name, "" when unset | |
top_height | float | yes | mm |
top_width | float | yes | band section at the top, mm |
| Method | |
|---|---|
set_profile(asset_name: str) | RING_PROFILE asset by name — list them with ra.assets.list(“RING_PROFILE”) |