Jump to content

Recommended Posts

Posted

Today ships are designed on computers just like, almost, any other technical product. There are special programs for ship design but these are expensive, so I wanted to use free software for the kind of low level hobby modeling I have in mind.
The lines of a ship are highly complex and again there are tools for that but for the hobbyist they are also a bit over the top, so I tried to come up with a simple way of representing ships on a computer, beginning with the frames. This is how I started to work on my Frame Analysis Tool. The goal was a program which generates, to a large part automatically, a frame representation from a sequence of x,z data points.

 

A mathematical description of the frames of a wide variety of hull forms is challenging, because of, sometimes, not only numerous changes of radii of curvature along the frame, but reversed directions of curvature as well. Fortunately a proper method for the job has been developed quite some time ago, in the 1960ies of the last century, as far as I know. The technique is called biarc approximation which means that the frames are divided into sections which are then approximated by two arc segments. Below is an example of the kind of result you get.

 

image.png.7f2539d381aa42fee822b2926f7d6e9f.png

I wanted to use an arc sequence because it is a very simple way of getting a very good approximation to almost every type of frame plus arcs can be used to generate G code for e.g. laser cutters or CNC machines. The program is written in python because this is the script language used by the CAD program FreeCAD and because it is a simple yet very powerful programming language.


You can download the program from the git hub repository below. You will find a description of biarcs and of program handling in the document included in the repository.
https://github.com/juergenhumt/FrameAnalysisTool

 

 

This program is published under the GNU public license, which means that you can use and modify it for any non commercial use. If you improve the program please consider uploading the new version as a branch to the git hub repository

 

Any feedback is highly appreciated.

 

 

Happy modeling,

 

Juergen

 

 

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...