Skip to content

.NET API

CathedralApi

Cathedral shanks: arms rising toward the setting.

from ArtisanPlugin.Scripting import CathedralApi

See also the guide, Shanks › Cathedral, and the Python package, ra.cathedral.

Methods

Method
AllICathedral handles for every object of this kind in the active document (empty when there is no document).
ByLayerICathedral handles on the layer with the given full path (empty when the layer does not exist).
CountNumber of objects of this kind in the active document.
CreateBuilds 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.
FindThe handle for id, or null when the id does not belong to an object of this kind.
SelectedCathedrals currently selected in the active doc.

All

IReadOnlyList<ICathedral> CathedralApi.All()

ICathedral handles for every object of this kind in the active document (empty when there is no document).

Returns IReadOnlyList<ICathedral>.

ByLayer

IReadOnlyList<ICathedral> CathedralApi.ByLayer(string layerName)

ICathedral handles on the layer with the given full path (empty when the layer does not exist).

ParameterTypeDefault
layerNamestringrequired

Returns IReadOnlyList<ICathedral>.

Count

int CathedralApi.Count()

Number of objects of this kind in the active document.

Returns int.

Create

ICathedral CathedralApi.Create(
    double topWidth = 0,
    double topHeight = 0,
    double bottomWidth = 0,
    double bottomHeight = 0,
    double armWidth = 0,
    double armHeight = 0,
    double fingerDiameter = 0,
    bool withGems = false,
    double gemSize = 0,
    double gemsAngle = 0,
    string profile = null,
    Plane? plane = null,
    string element = null)

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; 0 keeps the tool default (or the user’s saved defaults): topWidth 2.5, topHeight 1.9, bottomWidth 3.5, bottomHeight 1.8, armWidth 4.5, armHeight 3.5. fingerDiameter 0 = the document’s configured finger size. withGems true enables the gem row (gemSize default 1.3 mm, gemsAngle 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 ICathedral handle to the new shank. element = name of a saved cathedral element (ElementsApi.List(“Cathedral”)) to start from instead of the tool defaults; explicit arguments override it.

ParameterTypeDefault
topWidthdouble0
topHeightdouble0
bottomWidthdouble0
bottomHeightdouble0
armWidthdouble0
armHeightdouble0
fingerDiameterdouble0
withGemsboolfalse
gemSizedouble0
gemsAngledouble0
profilestringnull
planePlane?null
elementstringnull

Returns ICathedral.

Find

ICathedral CathedralApi.Find(Guid id)

The handle for id, or null when the id does not belong to an object of this kind.

ParameterTypeDefault
idGuidrequired

Returns ICathedral.

Selected

IReadOnlyList<ICathedral> CathedralApi.Selected()

Cathedrals currently selected in the active doc.

Returns IReadOnlyList<ICathedral>.

Handles and sections

What the methods above hand back. A handle’s setters regenerate the object; wrap changes in a Transaction so they land as one undo step.

Also used here: ICathedralGems.

ICathedral

Handle — extends IParametricObject.

Cathedral ring shank (multiple gems possible) — no single MotherGem.

PropertyType
GemsICathedralGemsget
IdGuidget(from IParametricObject)
LayerNamestringget(from IParametricObject)
MotherGemIdGuidget(from IParametricObject)
ObjectTypestringget(from IParametricObject)
PositionPoint3dget(from IParametricObject)
RingDiameterMmdoubleget
RingSizeLabelstringget
RingSizeRegionstringget
ShankICathedralShankgetParameter 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
void Delete()(from IParametricObject)
void Move(Vector3d translation)(from IParametricObject)
void SetBottomHeight(double height)
void SetBottomWidth(double width)
void SetElement(string element)Applies a saved Cathedral element (ElementsApi.List(“Cathedral”)) to this shank: its parameters replace the current ones, the ring size stays, and the shank regenerates in place (same id).
void SetTopHeight(double height)
void SetTopWidth(double width)Shortcuts for the most common edits — same effect as the equivalent Shank setters.

ICathedralShank

Section.

The cathedral band itself: the two band sections, the rising arms and the bridge that spans between them.

PropertyType
ArmAngledoublegetdegrees
ArmHeightdoublegethow high the arms climb over the finger circle, mm
ArmTangentdoublegettangency of the arm transition
ArmWidthdoublegetopening between the rising arms, mm
BottomHeightdoublegetmm
BottomWidthdoublegetband section at the bottom, mm
BridgeDiameterdoublegetmm
BridgeEnabledboolgetthe bridge spanning between the arms
BridgeFilletdoublegetmm
BridgeThicknessdoublegetmm
BridgeWidthdoublegetmm
CapDistancedoublegetmm
ProfileNamestringgetRING_PROFILE asset name, "" when unset
TopHeightdoublegetmm
TopWidthdoublegetband section at the top, mm
Method
void SetArmAngle(double degrees)
void SetArmHeight(double height)
void SetArmTangent(double tangent)
void SetArmWidth(double width)
void SetBottomHeight(double height)
void SetBottomWidth(double width)
void SetBridgeDiameter(double diameter)
void SetBridgeEnabled(bool enabled)
void SetBridgeFillet(double fillet)
void SetBridgeThickness(double thickness)
void SetBridgeWidth(double width)
void SetCapDistance(double distance)
void SetProfile(string assetName)RING_PROFILE asset by name — list them with AssetsApi.List(“RING_PROFILE”)
void SetTopHeight(double height)
void SetTopWidth(double width)