Skip to content

Artisan Grasshopper

Utilities

10 components in Diamonds › Utilities.

Center Between Gems

Circles tangent to every three neighbouring gems: where the shared prongs go

Nickname: Center Between · Tab: Diamonds › Utilities

Inputs

NameNicknameTypeAccessDefaultDescription
GemsGemsGemObjectlist—Gems
Triangle FactorFactorNumberitem0.2How unequal a triangle of gems may be to still count as neighbours (0-1)

Outputs

NameNicknameTypeAccessDescription
CirclesCirclesCirclelistTangent circles between neighbouring gems
CentersCentersPointlistTheir centres

Curve From Gems

Interpolated curve through the gem centres, in the order given

Nickname: Curve From Gems · Tab: Diamonds › Utilities

Inputs

NameNicknameTypeAccessDefaultDescription
GemsGemsGemObjectlist—Gems, in order
DegreeDegreeIntegeritem3Curve degree

Outputs

NameNicknameTypeAccessDescription
CurveCurveCurveitemCurve through the centres
CentersCentersPointlistGem centres

Gem Collisions

Finds the pairs of gems whose meshes intersect

Nickname: Gem Collisions · Tab: Diamonds › Utilities

Inputs

NameNicknameTypeAccessDescription
GemsGemsGemObjectlistGems to check

Outputs

NameNicknameTypeAccessDescription
CollidesCollidesBooleanlistPer gem: true when it intersects another gem
Pairs AAIntegerlistFirst index of each colliding pair
Pairs BBIntegerlistSecond index of each colliding pair
CountNIntegeritemNumber of colliding pairs

Gem Info

Extracts gem information and outputs it as JSON with setting type and compound.

Nickname: Gem Info · Tab: Diamonds › Utilities

Inputs

NameNicknameTypeAccessDefaultDescription
GemsGemsGemObjectlist—List of gem objects
Setting Type (optional)SettingTextitemPRONGSGem setting type (e.g. PRONGS, PAVE, CHANNEL, FLUSH, BEZEL, PRESSURE, WAX, OTHER)
Compound (optional)CompoundTextitemDIAMONDGem compound (e.g. DIAMOND, RUBY, SAPPHIRE)

Outputs

NameNicknameTypeAccessDescription
JSONJSONTextitemJSON output with gem info
GemInfoGemInfoGenericitemGem info as a dictionary object

Gem Offset

Girdle curve of each gem offset outwards (or inwards with a negative value) on the gem plane

Nickname: Gem Offset · Tab: Diamonds › Utilities

Inputs

NameNicknameTypeAccessDefaultDescription
GemsGemsGemObjectlist—Gems
OffsetOffsetNumberitem0.3Offset distance (negative = inwards)

Outputs

NameNicknameTypeAccessDescription
CurvesCurvesCurvelistOffset curves, one per gem
GirdlesGirdlesCurvelistGirdle curves, one per gem

Gems Color By Size

A colour per gem by its size, with the plugin’s size palette (0.8 to 3.5 mm in 0.1 mm steps)

Nickname: Color By Size · Tab: Diamonds › Utilities

Inputs

NameNicknameTypeAccessDescription
GemsGemsGemObjectlistGems

Outputs

NameNicknameTypeAccessDescription
ColorsColorsColourlistOne colour per gem
SizesSizesNumberlistGem sizes (X), rounded to 0.05
Distinct SizesDistinctNumberlistThe distinct sizes found, sorted

Gems Flip

Flips the plane of each gem (table pointing the other way)

Nickname: Gems Flip · Tab: Diamonds › Utilities

Inputs

NameNicknameTypeAccessDescription
GemsGemsGemObjectlistGems

Outputs

NameNicknameTypeAccessDescription
GemsGemsGemObjectlistFlipped gems
MeshesMeshesMeshlistFlipped gem meshes

Metal Info

Extracts metal geometry information and outputs it as JSON with material.

Nickname: Metal Info · Tab: Diamonds › Utilities

Inputs

NameNicknameTypeAccessDefaultDescription
GeometryGeoGeometrylist—List of metal geometry
Material (optional)MaterialTextitemGOLD_YELLOW_18Metal material (e.g. GOLD_YELLOW_18, SILVER, PLATINUM)

Outputs

NameNicknameTypeAccessDescription
JSONJSONTextitemJSON output with metal info
MetalInfoMetalInfoGenericitemMetal info as a dictionary object

Prong Axis

Axis curves for the prongs of a gem: number of prongs, height over and under the girdle, bottom diameter

Nickname: Prong Axis · Tab: Diamonds › Utilities

Inputs

NameNicknameTypeAccessDefaultDescription
GemGemGemObjectitem—Gem the prongs go around
Number Of ProngsNIntegeritemd.NumberOfProngsNumber of prongs
StraightStraightBooleanitemd.StraightStraight prongs (vertical axis) instead of following the gem
DiameterDNumberitemd.DiameterProng diameter at the girdle
HeightHNumberitemd.HeightProng height under the girdle
Gem InsideGemInNumberitemd.GemInsideHow far the prong enters the gem
Over GirdleOverGNumberitemd.OverGirdleProng rise over the girdle
Bottom DiameterBottomDNumberitemd.BottomDiameterDiameter of the bottom rail the prongs meet
Bottom Rail InsideBottomInNumberitemd.BottomRailInsideBottom rail offset inwards

Outputs

NameNicknameTypeAccessDescription
CurvesCurvesCurvelistOne axis curve per prong

Rotate Gems

Rotates each gem about its own axis (positive = left, negative = right)

Nickname: Rotate Gems · Tab: Diamonds › Utilities

Inputs

NameNicknameTypeAccessDefaultDescription
GemsGemsGemObjectlist—Gems
AngleAngleNumberitem45Rotation angle (degrees)

Outputs

NameNicknameTypeAccessDescription
GemsGemsGemObjectlistRotated gems
MeshesMeshesMeshlistRotated gem meshes