Scripting API
Wedding
from ArtisanPlugin.Scripting import WeddingApi as wedding, WeddingBandApi as band
Wedding rings come in two shapes: a set of two rings baked together as one group, and a single band. Both store the same per-ring model, so they share one section.
Create
Neither has a Create yet. Run ArtisanWeddingRing or ArtisanWeddingBand in the UI once, then script every variant from the handle.
Edit - the set
IWedding exposes FirstRing and SecondRing, each a full ring. Editing either regenerates the whole set in place, re-baking both bands, their stones and prongs.
| Member of a ring | What it edits |
|---|---|
Metal / SetMetal(metal) | e.g. "GOLD_ROSE_18", "PLATINUM" |
Profile | Profile asset, width and height of the band |
Gems | Enabled, shape (round or princess), distribution (full, half, one quarter, custom) and its count, spacing, channel, prongs (none, shared or channel) and drills |
from ArtisanPlugin.Scripting import WeddingApi as wedding, Transaction
pair = wedding.All()[0]
with Transaction.Begin("Hers in rose gold with a half row"):
pair.SecondRing.SetMetal("GOLD_ROSE_18")
pair.SecondRing.Gems.SetEnabled(True)
pair.SecondRing.Gems.SetDistribution("Half")
Wedding band
IWeddingBand is the one-ring counterpart: a single Ring member with exactly the same surface.
b = band.All()[0]
with Transaction.Begin("Wider band, no stones"):
b.Ring.Profile.SetWidth(4.0)
b.Ring.Gems.SetEnabled(False)
Queries
Both facades: All(), Find(id), Count(), Selected(), ByLayer(name).