Skip to content

Python package

The rhinoartisan package

import rhinoartisan as ra — API 0.9.0, shipped with RhinoArtisan 7.0.0.10 for Rhino 8+ (Python 3). The plugin installs the package into Rhino’s scripts folder, so the import needs no setup in the ScriptEditor, RhinoCode, Flow Studio or MCP.

#! python 3
import rhinoartisan as ra

with ra.transaction("Solitaire 1 ct"):
    ring = ra.classic.create(width=2.5)
    gem = ra.gems.create("round", "diamond", 1.0, (0, 0, ring.ring_diameter_mm / 2 + 1))
    ra.peghead.create(gem, prongs=6)
print(f"{ra.weight.calculate()[0].grams:.2f} g")

Conventions: optional arguments default to None (the tool default); ids are strings and any handle, string or Rhino object id works where an id is expected; points and vectors are (x, y, z) tuples; a plane is a point (normal +Z), an (origin, normal) pair or a Rhino Plane; millimetres everywhere. Handles expose properties — assigning a settable one regenerates the object — plus update(**kwargs), parameters(), id and delete(). See Errors and Results.

Gems

Module
ra.advanced_gems_on_curveRuns of stones along a curve with per-stone sizes, shapes and rotations.
ra.gemsCreate, query and edit stones: shapes, materials, carats, placement, copies, collisions.
ra.gem_orientationFix the orientation plane of stones without moving them.
ra.gem_sizeStones by millimetre size instead of carats.
ra.gem_toolsUtilities over existing stones: centers, tags, alignment, curves from gems, copy by gems, colors by size.
ra.gems_by_networkStones over a network of intersecting curves, sized to meet at the nodes.
ra.gems_from_circleTurn circles into round stones of the matching size.
ra.gems_on_two_curvesStones fitted between two rails, sized to the gap.
ra.gems_on_curveA run of stones along one curve, with prongs and cutters, editable afterwards.
ra.tapered_baguettesTapered baguettes between two curves.
ra.three_stonesThe classic three-stone layout.
ra.toi_et_moiTwo stones facing each other.
ra.trilogyThree-stone families: trellis, halo, individual, bezel set, east-west.

Settings

Module
ra.advanced_basketBaskets with independent prong and rail profiles.
ra.advanced_bezelBezels with a custom profile.
ra.basketBasket settings: prongs, upper and base rails.
ra.bezelBezel settings with support, cutter and air-gap sections.
ra.cabochonCabochon stones and their settings.
ra.channelChannel settings along a curve.
ra.clusterCluster settings around a centre stone.
ra.cutterThe cutters that carve the seat of a stone into the metal.
ra.haloA halo of small stones around a centre stone.
ra.hidden_haloA hidden halo under the centre stone.
ra.martiniMartini settings.
ra.micro_settingMicro settings (micro-pave heads).
ra.pearlPearls and their cups.
ra.pegheadPeghead seats under a stone: prongs, height, thickness.
ra.trellis_gemsetTrellis settings.
ra.tulipTulip settings.

Shanks and rings

Module
ra.advanced_cathedralCathedral shanks with station-by-station control.
ra.advanced_ringRings built from positioned sections along the finger curve.
ra.advanced_signet_ringSignet rings with independent top and side profiles.
ra.bypassBypass shanks whose arms cross past each other.
ra.cathedralCathedral shanks: arms rising toward the setting.
ra.class_ringClass rings.
ra.classicClassic ring shanks: comfort-fit bands at the document finger size, optionally with a stone row.
ra.eternityEternity bands with stones all around.
ra.graduatedGraduated shanks: a run of stones shrinking away from the centre.
ra.matching_shankMatching shanks fitted against an engagement ring.
ra.pave_shankPave shanks: rows of stones along the band.
ra.ring_curveRing rail curves at the document finger size (closed, open, bypass, shaped).
ra.ring_extrudeRings extruded from a frontal profile.
ra.ring_toolsUtilities on ring geometry: cut by ring size, estimate size, rail helpers.
ra.scoop_ringScoop rings.
ra.signet_ringSignet rings with a shaped top face.
ra.split_shankSplit shanks.
ra.two_rows_shankTwo-row shanks.
ra.weddingWedding sets (band pairs) built as one editable object.
ra.wedding_bandSingle wedding bands.

Pave and prongs

Module
ra.automatic_paveRelaxed multi-size pave fill with symmetry.
ra.azureAzure cutters under a pave: the openwork underneath.
ra.pave_along_surfacePave rows following a surface direction.
ra.paveAutomatic pave over surfaces: one size in a regular grid, with prongs and cutters.
ra.prongProngs: dynamic (between stones), automatic, custom and axis-aligned.

Components

Module
ra.bailPendant bails.
ra.bangleBangles.
ra.beadBeads.
ra.chainChains along a curve.
ra.charmCharms.
ra.engravingRing engravings.
ra.hingeHinges.
ra.honeycombHoneycomb patterns over surfaces.
ra.huggieHuggie earrings.
ra.linkChain links.
ra.milgrainMilgrain beading along curves.
ra.named_pendantName pendants from text.
ra.patternRepeated patterns over surfaces.
ra.profile_sweepSweeps of a profile along rails.
ra.ropeRope twists.
ra.smart_componentEdit bails, named pendants, bangles, beads, charms, links, milgrain, ropes, 3D textures and ring engravings after creation (their model as JSON).
ra.text_on_curveText laid along a curve.
ra.texture_3d3D textures applied to surfaces.
ra.user_elementUser-defined elements.
ra.voronoiVoronoi patterns over surfaces.

Solids, curves and transforms

Module
ra.booleanArtisan booleans that keep the pieces editable: union, difference, intersection, split, update.
ra.curveCurve helpers for jewelry layouts.
ra.meshMesh decimation.
ra.raster_to_vectorTrace an image into curves.
ra.relationsParent/child relations between parametric objects.
ra.relief2.5D reliefs: creators, the operation stack, sculpt/smooth by points, bake, heightmaps.
ra.smart_profileSmart Profiles: profile sections swept along a curve, varying along the way.
ra.solidSolid modelling helpers: caps, shells, sweeps, offsets.
ra.transformMove, rotate, scale, mirror, arrays, deformations (bend, twist, taper), flow, placement on objects.

Analysis and pricing

Module
ra.analyzeWall thickness: at points and globally.
ra.pricingPrices and cost breakdowns, markup and taxes profiles.
ra.weightMetal weights: per layer, per selection, by area.

Production

Module
ra.filesFile utilities: standardize, elements import/export, layer exports.
ra.manufacturingProduction: repair, printability checks, identifiers, sprues, resizing, exports.

Drafting

Module
ra.draftingReports, gems maps, cost tables, dimensions.

Render and views

Module
ra.realtime_renderThe web Realtime Render viewer: open, update, camera, materials, screenshots.
ra.renderRender materials, staging and batch rendering.
ra.render_studioRender Studio: environments, materials, stills and turntables.
ra.viewViewport cameras, display modes, named views and captures.

Document and library

Module
ra.assetsThe profile library the parametric tools build from.
ra.documentThe document: open/save/new, computation mode, metals, ring size, STL/PDF/GLB exports.
ra.elementsSaved element presets: build from them, apply them, save objects as new ones, organize the library.
ra.panelsThe open Artisan command panel: which one it is, and closing it without applying.
ra.semanticsSemantic descriptions of the design.

Integrations

Module
ra.file_searchInstant search over indexed design files.
ra.nivodaNivoda certified-diamond search.