Skip to content

Scripting API

Bypass

from ArtisanPlugin.Scripting import BypassApi as bypass

The bypass shank: two arms that cross past each other instead of meeting.

Create

No Create yet. Run ArtisanBypass in the UI once, then script every variant from the handle.

Edit

The IBypass handle has two sections; each setter regenerates the shank in place, re-baking gems and prongs:

SectionWhat it edits
ShankThe band - either by the top/bottom gradient or by a list of stations; arm angle/width/height, tip rotation, how far the arms pass each other and where that displacement starts, plus the bridge
GemsThe gems row along each arm: shape, size, arc from the tip, spacing, channel, a stone-size gradient, prongs (growth, minimum diameter, end count, spacing) and drills
from ArtisanPlugin.Scripting import BypassApi as bypass, Transaction

ring = bypass.Selected()[0]
with Transaction.Begin("Wider crossing, graded stones"):
    ring.Shank.SetDisplacement(3.0)
    ring.Gems.SetGradient(True)
    ring.Gems.SetGemSizeGradient(1.2, 1.5, 1.8)

Queries

All(), Find(id), Count(), Selected(), ByLayer(name).