Skip to main content

Project Notes for Catenary Curves In FreeCAD



What is a Catenary Curve?


Catenary also known as chainette coming from the Latin "Catenaria" meaning“chain” describes a curve which sags under load along its length transferring this load equally to the two supports. In nature any freely hanging flexible string like material whether it being a chain, cable, spider silk etc assumes this shape if it is of uniform mass per unit along it's length.  In engineering we see this in overhead cables, chains or any long flexible connection between two points. 

The Challenge
At time of writing a curve of this description cannot be applied to modelling at a touch of a button, it will need some setup before. The only place I have seen this subject touched upon and solved is by use of the now defunct 'Animation WB' using animation paths as geometry.  My thoughts is that width aid of the Curves WB we can plot the points for the curves and then use the approximate curve or interpolate curve against these points to create a curve which can be used as a path in the draft workbench or the lattice2 workbench to attached arrays of objects to.  Well, that's my theory.  NOTE:  If anyone has a solution please let me know and I will link here.

R & D
To create these points in 3D space I am going to first simplify the problem into a number of steps.  From the challenge it is apparent that this is a mathematical problem requiring a equation to calculate each point in the curve, so we need some kind of python script to calculate each point in 3D space.  Simplify this even more lets first go to 2D space.

Taking this again and breaking this into steps I have set myself a number of goals to complete this challenge.

Phase 1

1. Manually create a number of points either draft or sketch points in 2D space and test this against the curves workbench to create this curve and make sure it can be used as a path.  There is no point in continuing if this step doesn't work.
2. Do the same but with a python script.
3. Find or figure out the code to create such a curve.  As this is a mathematical problem that has been solved for centuries then there is bound to be something out there even if I have to convert it from one language to another.
4. Roll this code into the macro to plot the curve.

Then Phase 2 is refinement.  I have a number of questions that I will leave here in the hopes of resolving.

*  Applying this to 3D space from the 2D solution.
*  What happens with a change of height of one of the supports?

Resources found so far:
The following link solves the code to calculate the curve I just need to convert this to FreeCAD macro:

https://codegolf.stackexchange.com/questions/37609/catenary-between-two-points-hanging-chain
https://blenderartists.org/t/catenary-script-for-shape-of-a-flexible-chain-suspended-by-its-ends/382187
https://gist.github.com/sketchpunk/cbfe82229234f5ccc58f6b2dd9fa98b0


Comments

Popular posts from this blog

Beginners FreeCAD: Exercise 5.1 & 5.2 (Reference Images)

Welcome to the total beginners course to FreeCAD 0.20. In this is a two part lesson we will practice our tracing skill in the form of a mini project. Using the below reference photos we will create a more complex part which will consist of repeating features. We will utilise the symmetry tools to ease construction in both FreeCAD sketcher and Part Design workbench. This project work will help teach the fundamentals of freeCAD allowing a understanding of the basics but delivering this information via teaching you different workflows. In this tutorial we will be tracing photos imported into FreeCAD via the image workbench https://wiki.freecadweb.org/Image_Workbench JUMP TO IMAGES Do you want to purchase the complete series along with others and keep forever?  Check out my shop https://ko-fi.com/mang0/shop The story of this tutorial The idea and first attempt at creating this tutorial was back in FreeCAD 0.18.  The physical part itself, well, I have no idea what really it is, i...

FreeCAD For Beginners: CAD Thinking Part 1

Learning how to turn real life objects into CAD Models. Using FreeCAD we explain at a beginner level how to break down a physical object into its primitive shapes to digitise it into a 3D model, with this episode we are looking at a multi-part assembly, modelling each piece individually. The series aims to open your eyes and mind giving you the ground skills to pick the correct profiles, geometry and workflow when it comes to modelling your parts. This is not just for FreeCAD but for all CAD packages out there. Part  1 ,  2 ,  3  and  4  have been released.  Part 5 will be coming soon. Step-by-Step FreeCAD Tutorial: Modeling a Latch Part (Part 1) Introduction This tutorial is the first in a series guiding you through modeling a latch assembly in FreeCAD (version 0.21) using the Part Design and A2Plus workbenches. It focuses on modeling the first part (a slotted component) by selecting the top profile to create a slot and adding side arcs, emphasiz...

Beginner FreeCAD Tutorial 14: Reference Document for Exercise 1

This tutorial focuses on modelling a deck eye plate. These items are normally made of stainless steel with some kind of galvanised coating to stop corrosion. They are used in many industries but are most commonly found around boats, ships, sail lofts and docks where they play an important part in marine industry. Finding their use in many applications, they are often wall mounted acting as lashing points for mooring and for tying down sails or canopies. They can even be used for domestic use around the house and garden, for example to anchor ropes, cords and lines. So if your into 3D printing your finished creations, you can make use of the finished result.   Disclaimer : The strength of the part will depend on the internal structure, settings of the slicer and the material it has been printed on.  This will limit its application as failure of the part, damage to property and injury is a possibility.  These items are normally made of steel and are tested to take a...