Blog


Learn about industry trends, news and how-tos from our product experts.

CAD

Idler Plate

 Define geometry and dimensioning:// Define layer names and text size. const string Dim = "Dimension"; const string DashDot = "DashDot"; const double TextHeight = 0.1; // Adding different layers design1.Layers.Add(new Layer(Dim, Color.CornflowerBlue)); design1.Layers[0].LineWeight = 2; des…

by Gianpiero Tovo | October 22, 2026 | Share

CAD

IfcBuilder Operations: Extrusions, Subtractions, and Geometry Manipulation in Eyeshot

In this article, we will explore how to use IfcBuilder methods in Eyeshot to create walls and roofs for a simple building design. We begin by generating two main Blocks: one for the North–South walls and one for the East–West walls. Each block contains the geometry and the openings belonging to its…

by Martina Balla | November 20, 2025 | Share

CAD

Estimate Length of a Trimmed Pipe from Face Edges Control Points

The following algorithm calculates the length of a pipe based on its control points. It automatically identifies whether each face of the pipe represents a cylindrical or tabulated surface and then measures the distance that the surface’s control points extend along its main axis. The resulting val…

by Martina Balla | November 07, 2025 | Share

CAD

CAD Practice Drawings 103

// Define layer names and text size. const string Dim = "Dimension", DashDot = "DashDot"; const double TextHeight = 3.0; // Adding different layers design1.Layers.Add(new Layer(Dim, Color.CornflowerBlue)); design1.Layers[0].LineWeight = 2; design1.LineTypes.Add(DashDot, new float[] { 10, -2, 2, -…

by Mattia Suzzi | October 31, 2025 | Share

CAD

Belt Roller Support

Block b1 = new Block("Base"); b1.Entities.Add(Base(), Color.Purple); design1.Blocks.Add(b1); Block b2 = new Block("Roller"); b2.Entities.Add(Roller(), Color.Red); design1.Blocks.Add(b2); Block b3 = new Block("Bracket"); b3.Entities.Add(Bracket(), Color.LightGreen); design1.Blocks.Add(b3); Blo…

by Mattia Suzzi | October 31, 2025 | Share

CAD

Valve Body Assembly

Note: the code in this article uses the Eyeshot 2027 API. In Eyeshot 2026 and earlier, add the mates with the Block methods instead: for example design1.RootBlock.AddConcentricMate(...) in place of design1.RootBlock.Mates.AddConcentric(...), with the same arguments.In this article, we will use Asse…

by Martina Balla | September 26, 2025 | Share

CAD

CAD Practice Drawing 141

// Define layer names and text size. const string Dim = "Dimension", DashDot = "DashDot"; const double TextHeight = 4.0; // Adding different layers design1.Layers.Add(new Layer(Dim, Color.CornflowerBlue)); design1.Layers[0].LineWeight = 2; design1.LineTypes.Add(DashDot, new float[] { 10, -2, 2, -2…

by Martina Balla | September 08, 2025 | Share

CAD

Reinforced Bracket

// "L" profile devDept.Eyeshot.Entities.Region r1 = devDept.Eyeshot.Entities.Region.CreatePolygon(Plane.YZ, new Point2D[]{ new Point2D(0, 0), new Point2D(30, 0), new Point2D(30, 10), new Point2D(7, 10), new Point2D(7, 55), new Point2D(13, 55), new Point2D(13, 75), n…

by Martina Balla | September 02, 2025 | Share

CAD

Connecting Rod

Note: the code in this article uses the Eyeshot 2027 API. In Eyeshot 2026 and earlier, add the mates with the Block methods instead: for example design1.RootBlock.AddConcentricMate(...) in place of design1.RootBlock.Mates.AddConcentric(...), with the same arguments.In this article, we will use Asse…

by Davide Angiolini | June 05, 2025 | Share

CAD

CAD Practice Drawings 27

// Define layer names and text size. const string Dim = "Dimension", DashDot = "DashDot"; const double TextHeight = 2.5; // Adding different layers design1.Layers.Add(new Layer(Dim, Color.CornflowerBlue)); design1.Layers[0].LineWeight = 2; design1.LineTypes.Add(DashDot, new float[] { 10, -2, 2, -2…

by Davide Angiolini | May 15, 2025 | Share