Solaris Marine –Invictus CAD

Stand demo · fictional data

Describe a marine part. Get the 3D model, the GA drawing and the mass.

Write what you need in plain words. Invictus CAD builds the parametric model, draws the GA sheet with its title block and weighs the part, stating the basis.

For example: a Kenter shackle for 76 mm stud-link chain.

Loading the model…

Part
Overall L × W × H
Volume
Material
Mass
Mass basis

Drawn and weighed from the same model.

This GA sheet for the Kenter shackle was generated by the app from the model above: third-angle views, a section, model data and a filled title block.

  1. Dimensions read off the model: 456, 319.2 and 79.8 mm.
  2. Model data: overall size, volume, surface area and mass.
  3. Section A-A, cut through the stud and the pin hole.
  4. Parts list and title block filled from the part, with its material and mass.
GA drawing, A3: Kenter shackle 76 mm in top, isometric, front and section A-A views, with model data, parts list and title block. Mass 43.54 kg.
Rev D of the sheet, A3, not to scale on screen. Demo title block.

Mass, with its basis

5,546.65 cm³ × 7.85 g/cm³ = 43.54 kg

An estimate from the model’s volume and the density of carbon steel. When a drawing states the part’s mass, that declared figure is shown instead, with its source.

The source is kept, and you can edit it

# Kenter (joining) shackle for 76 mm stud-link chain: link-shaped, overall 6d x 4.2d,
# two C-halves locked by a central stud block and a tapered pin (drawn as a solid
# stud with the pin boss). Origin = centre, in the XY plane, long axis X.
from build123d import *

d = 76.0
L, W = 6 * d, 4.2 * d
wc = W - d
s = (L - d) - wc
r = wc / 2
with BuildLine() as cl:
    Line((-s / 2, -r), (s / 2, -r))
    ThreePointArc((s / 2, -r), (s / 2 + r, 0), (s / 2, r))
    Line((s / 2, r), (-s / 2, r))
    ThreePointArc((-s / 2, r), (-s / 2 - r, 0), (-s / 2, -r))
profile = Plane(origin=cl.line @ 0, z_dir=cl.line % 0) * Circle(d / 2)
body = sweep(profile, path=cl.line, transition=Transition.ROUND)
# central stud block joining the two halves, full bar depth
stud = Box(0.9 * d, wc, 0.9 * d)
# locking-pin boss on top of the stud, pin hole through it
boss = Cylinder(0.32 * d, 1.05 * d)
pin_hole = Cylinder(0.12 * d, 1.2 * d)
result = body + stud + boss - pin_hole

Change d and the model, the drawing and the mass follow. Every rebuild is a new revision you can go back to.

Eighty seconds of the real app.

Recorded on the demo account. Stretches that are sped up are marked on screen. No sound.