.NET API
MatchingShankBuilderApi
Headless builder for the matching shank. MatchingShankApi stays query-only (All/Find/ForRing/Selected); the IMatchingShank handle returned here is the same one it hands out, so MatchingShankApi.ForRing(ringId) lists what Create fitted to it.
from ArtisanPlugin.Scripting import MatchingShankBuilderApi
See also the Python package, ra.matching_shank.
Methods
| Method | |
|---|---|
Create | Builds a matching shank (the ArtisanMatchingShank tool, headless): a band shaped to sit against an existing ring — the mother — so the pair stacks without a gap. |
Create
IMatchingShank MatchingShankBuilderApi.Create(
IEnumerable<Guid> ringIds,
double width = 0,
double height = 0,
double fingerDiameter = 0,
string profile = null,
string metal = null,
double clearance = double.NaN,
double distance = double.NaN,
double topDistance = double.NaN,
string interiorType = null,
double comfort = 0,
int numberOfPoints = 0,
bool flipSide = false,
bool bothSides = false,
bool withGems = false,
double gemSize = 0,
string gemDistribution = null,
string element = null)
Builds a matching shank (the ArtisanMatchingShank tool, headless): a band shaped to sit against an existing ring — the mother — so the pair stacks without a gap. The mother ring must sit at the origin like every Artisan ring (the rail is the finger-size circle there). ringIds: the ring to hug — document ids of its solids (breps, extrusions, meshes) or the Id of an Artisan shank handle (classic, eternity, wedding band…; its stones are ignored). Millimetres; 0 keeps the tool default (or the user’s saved defaults): width 3, height 2, numberOfPoints 8, comfort 0.3. NaN keeps the default for the signed / zero-legit ones: clearance 0.3 (gap kept against the mother), distance 0 (axial gap; negative presses into the mother), topDistance 0. interiorType “SOLID” | “COMFORT”. flipSide builds on the other side of the mother, bothSides one band on each side (both baked in the same group). withGems adds a row of round stones along the crest: gemSize (default 1.5), gemDistribution “FULL” | “SIDE” | “TOP”. fingerDiameter 0 = the document’s finger size; profile picks a RING_PROFILE asset by name; metal a Metal name (omitted = the document’s Metal 01). element = name of a saved MatchingShank element (ElementsApi.List(“MatchingShank”)) to start from; explicit arguments override it (its finger size and ring are always replaced). Returns the IMatchingShank handle of the new group; the mother ring is its parametric mother, so the band follows the ring’s edits.
| Parameter | Type | Default |
|---|---|---|
ringIds | IEnumerable<Guid> | required |
width | double | 0 |
height | double | 0 |
fingerDiameter | double | 0 |
profile | string | null |
metal | string | null |
clearance | double | double.NaN |
distance | double | double.NaN |
topDistance | double | double.NaN |
interiorType | string | null |
comfort | double | 0 |
numberOfPoints | int | 0 |
flipSide | bool | false |
bothSides | bool | false |
withGems | bool | false |
gemSize | double | 0 |
gemDistribution | string | null |
element | string | null |
Returns IMatchingShank.
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: IMatchingShank, IMatchingShankGems.