Section Properties Calculator

Build a cross-section from a standard shape or draw your own outline, and get the full property set: area, centroid, second moments of area, elastic and plastic moduli, torsion constant, warping constant and shear centre. Everything runs in your browser — nothing is uploaded.

Exact where it can be, solved where it must be

Most section calculators mesh the shape and integrate over the elements. That is unnecessary for the properties people use most: area, the centroid, second moments of area and the section moduli are all boundary integrals, so this tool evaluates them around the outline itself and treats fillets and circular walls as true arcs rather than as chains of short lines. Those numbers do not move when you change the mesh, because no mesh was involved.

Torsion is different. The St Venant constant, the warping constant and the shear centre all require solving a partial differential equation over the section, so those come from a finite element mesh of quadratic triangles. The mesh control affects only that second group, and the tool reports the element count and mesh quality alongside the answer.

Why the shear centre matters

For an I-section or a hollow box the shear centre sits on the centroid and can be ignored. For a channel or an angle it does not: it lies outside the web, sometimes by more than the section is wide. A load applied through the centroid of a channel therefore applies a torque about its shear centre, and the member twists as it bends. The tool marks both points on the outline so the offset is visible rather than buried in a table.

The same applies to the principal axes of an angle. An unequal angle bent about a geometric axis deflects sideways, because its principal axes are rotated. When the product of inertia is non-zero the tool shows the principal axis angle and draws those axes on the section.

Questions

Which section properties does it calculate?

Cross-sectional area, centroid, second moments of area about both centroidal axes, the product of inertia and principal axis angle, elastic and plastic section moduli about both axes, radii of gyration, the St Venant torsion constant J, the warping constant Iw, the shear centre and both shear areas.

How accurate are the results?

Area, centroid, second moments and the section moduli are computed by integrating around the section outline itself, with arcs handled analytically rather than approximated by straight segments. They carry no meshing error at all. The torsion constant, warping constant and shear centre come from a finite element solve and agree with reference values to within a percent or two.

Why does my torsion constant differ slightly from a steel table?

Published tables idealise root fillets differently between standards, and most quote the warping constant from a thin-walled formula rather than a full solution. Area, second moments and section moduli normally agree to three or four significant figures; J and Iw typically differ by one to two per cent.

Can I create a section with holes?

Yes. Hollow sections are built in directly, and in draw mode you can add any number of interior loops. Each loop after the first is treated as a hole, so a box with voids or a section with bolt holes works as expected.

What is the difference between the centroid and the shear centre?

The centroid is where axial load produces no bending. The shear centre is where a transverse load produces no twist. They coincide for a doubly symmetric shape such as an I-section, but for a channel or an angle the shear centre lies well away from the centroid, which is why loading a channel through its centroid makes it twist.

Which axis is the strong axis?

In FERS the section depth runs along the local y axis and the width along z, so the second moment about z is the strong-axis value for an I-shape. That is the opposite of the Eurocode habit of calling the strong axis y-y. The results here follow the FERS convention so they can be used directly as solver input.

Need the whole frame rather than one section? Draw a 2D frame or drive the solver from Python.