Jump to content

Modelling a ship's hull with Delftship

Recommended Posts

The topic shows how to use the free program Delftship (www.delftship.net) and build a ship’s hull basing on theoretical lines. The lines of the CARLETON (1776) come from the collection of the Royal Museums Greenwich http://collections.rmg.co.uk/collections/objects/84909.html



The scan resolution is not particularly stunning, but for our purposes is good enough. At the beginning, using a bitmap graphics program I divided the scan into 3 separate files containing stations, waterlines and buttocks. Each drawing should contain the linear scale, for proper scaling. Now, I had to adjust the scans, this means I had to rotate them so that all guides (i.e. axes and planes defining theoretical lines) were vertically or horizontally aligned. Additionally, I noticed the Delftship “likes” the model to be pointing to the right, so I mirrored Carleton drawings.

When starting the work with Delftship I needed set design parameters according to the details given on the plans, that is, I gave the actual length and width of the individual, of course, in units indicated on the original plans:



The Delftship model is oriented relative to the coordinate, orthogonal system: the X-axis determines the length of the model, Y - width, Z - height. The YZ plane defines the plane of stations (the value of X determines stations positions), XZ - buttocks (Y value determines the buttocks positions), XY – waterlines (Z value determines the waterlines positions). A small window dynamically indicates the coordinates of pointer position on the working plane:



I added scans to the just created Delftship file (as a background image, just right-click on a view port), each one to the appropriate view (Fig. 2). Now, I had to calibrate and adjust the model. I began by setting (for each view) proportional scaling or “uniform scaling in the X and Y”:



I always build a model building with scale 1/1, which is the actual size of a ship. To make a scan fit this scale I needed a linear scale on drawings - in every view I moved the scan so its zero point would lie directly in 0,0 point. Then I re-scaled the scans: first I checked the current coordinate values (in Delftship coordinate box) of a characteristic point on the linear scale, then with right-click I chose the scaling option and I filled the box with the proper coordinate value. The plan was scaled according to the working plane value only, as the second one always should be equal to zero (in stations view it is a pair of Y and Z = 0, in waterlines view - X and Y = 0, in buttocks view - X and Z = 0). With scaled plans I needed to move them back to the right position. I moved the plans so its base (the 0,0,0 point) would be the high point of the stem aft (and the model is facing to the right). In this arrangement, all the points of the model (with the exception of the transom) are of positive coordinates. Of course, the 0,0,0 point in each view-port should correspond to the same point on the ship. If we were able to do it properly should result in a system as shown below:



Edited by Jaro Bakowski
Link to comment
Share on other sites

Now I tried to give the model a shape similar to the original ship - in any view, I moved the control points so the contour grid (red envelope) coincided with the contour of the scan. The visibility of checkpoints could be set with the appropriate button.


Now, what I could see on the screen still was not the exact model. I needed to set planes for theoretical lines, exactly as in the scanned plans. In buttocks view I moved the pointer over vertical lines of frames and wrote down their X coordinates. I could do the same for the stations and waterlines views, but quite unexpectedly there are no waterlines and buttocks for Carleton. It didn’t matter, as for such a small and easy vessel the stations were good enough. Now, using the sections box firstly I removed old data, then I set up the measured stations:




I noticed there are several plans with measured positions of frames, so we don’t have to check them with Delftship. It was good time to check how our lines fitted to drawings. By moving control points I could get proper shape of the hull.





Lines and control grid are the only auxiliary elements used by Delftship. Just like with Bezier splines, these elements show us only to what elements the hull is tangential. To see the body of a ship we have to set up and turn on theoretical lines (intersections) or set a shaded view or draw auxiliary curves on the hull’s surface. We do this by selecting mesh edges and then turning them into a curve on the surface with the command “Add a new curve to selected edges”. It is a good option to see real edges of the model. For the purpose of this tutorial no curve was created and used.

Edited by Jaro Bakowski
Link to comment
Share on other sites

With the grid adjusted I almost got the finished model. Drawings show the extended upper edge of the hull, it would be cut off later. Of course, at this stage of work I could model the edge but it would be distorted a bit, especially around break points of the rails. As we can see the drawings show the hull with theoretical lines fitted to the scanned plans. Some minor inaccuracies, if any, would be corrected later. There is a shaded view of both halves of the model - Delftship by default treats the model as a symmetrical object, although this could be changed with the window of layer properties.


In the next step we would build the keel and stem. The edges of the model (red outline) lying on the XZ plane had the Y coordinates equal to 0. Now I moved all these points outwards of the model axis, setting the new value of Y coordinates. This value referred to the value of the keel thickness. I measured the thickness by moving the cursor over a point on the outer edge of the keel, rounded the Y value of (in this case I assumed that Y = 0.5 so the thickness of the keel and the stew would be, in fact, one foot). Now, preferably in a perspective view, I clicked on each of the points and changed their Y coordinates from 0 to 0.5. Below is the result:




In the side view (buttocks view) I added a few-dozen points and moved them to the edge of the stew and the keel, then changed their Y coordinate to 0.5. Then I created the side surfaces of the keel: holding down CTRL-key I clicked on the three adjacent points, then I selected the option to “create a new face ...”, and so on until I got whole stew and keel.




To simplify the model I reduced the net of surfaces to 4-sides segments by selecting the diagonal and removing it with the “remove an edge ...” command.



After this operation, the edge between the keel / hull is a bit irregular. I selected it (I clicked on the first segment and then holding down CTRL-key on the next one - this automatically selects the whole edge), selected the option to “switch selected edges between ...”. The next step was to give a proper shape to keel and stem - on the buttocks plane (view) I moved the points to the right positions. On the horizontal section of the keel I gave to all the points the Z = 0 elevation.


Edited by Jaro Bakowski
Link to comment
Share on other sites

As we can see the model is a bit weird - with initial settings (and the given waterline level) the lower part of the hull should be coloured white. The non-normal surfaces (with reversed vectors) are shown in green. I used the “tools” tab, selected the “check the model for errors ...” option and allowed the correction of errors. The operation could be carried out whenever I felt there was something wrong with the model.





To be continued...

Edited by Jaro Bakowski
Link to comment
Share on other sites

It remained to give thickness to the keel. In the side view, I added points, placing them near the boundary points of keel and stem. In buttocks view the newly added points would lay in exactly the same place, the difference was that these new points had the Y coordinates equals 0 (i.e., they would lie on the central plane of the model). Now, point by point, I changed the coordinates - I just copied the right values and pasted them accordingly. The X and Z coordinates of the newly created points were the same as the coordinates of points forming the “thickness” of the stem:







When I turned on the shaded view, it appeared that the stem intersected with the hull. This was due to the different number of control points on the keel and the lower edge of the hull. To fix the problem I added some additional points (by dividing the edge), connected them to hull’s edge points, finally divided the side plane of the keel with  “split and face by inserting a new edge ... “ command.





If you feel the urge for more evenly distributed control points (I do not) you may add new points on the lower edge of the keel exactly below (on vertical axis). Below we can see the stem and keel ready.



Edited by Jaro Bakowski
Link to comment
Share on other sites

Thanks, That helps.  Will you be going on to show how to obtain the frames and other parts?



Edited by Cap'n'Bob

Every build is a learning experience.


Current build:  SS_ Mariefred


Completed builds:  US Coast Guard Pequot   Friendship-sloop,  Schooner Lettie-G.-Howard,   Spray,   Grand-Banks-dory

                                                a gaff rigged yawl,  HOGA (YT-146),  Int'l Dragon Class II,   Two Edwardian Launches 


In the Gallery:   Catboat,   International-Dragon-Class,   Spray

Link to comment
Share on other sites

Bob, George,

It won't be a long story. I use Delftship just to check the theoretical lines, a fairing as you say, and getting frames. For preparing drawings for ship's elements I have to use some descriptive geometry tools. Delftship is not intended for more complicated drafting tasks. It's not a parametric programme. Or maybe I just don't know how to do these. Anyway, I need a CAD (or any vector graphics) programme for obtaining the rest of model elements. I will show my methods.


OK, back to the hull then.Now it was time for the transom and its connection to stern post. To build the transom I added a few points and built a smooth surface:




To find an intersection between transom and stern-post I needed another tools (of course, I could build a connection right away with the transom, but there would be some distortions around the stem). I added a point to the stem and moved so it was “inside” the model (thus created edge had to be the exact extension of the stern post).



The next step was to find an intersection point. With the “interrogate” tool it was quite simple. Firstly, I defined the line by inputting their coordinates, the programme calculated all possible intersections. For my convenience I wrote the data in a text file, as well as the coordinates of the intersection points (Delftship doesn’t store it anywhere. I selected the edge of the stern-post, inserted new control point on it and assigned XYZ coordinates obtained by the intersection calculation. I removed unnecessary edges to obtain the final shape of the stern-post.




Edited by Jaro Bakowski
Link to comment
Share on other sites

The hull was almost ready, now I should smooth it a bit. For this purpose, I used the Gaussian curvature view mode. When enabled, there is an analyzing table / scale visible on the left side of the window. It’s a scale showing the curvature’s degree - red colour means convex surfaces, purple - concave ones. The intermediate colour, which is green, means the surface is “flat”. Our model should smoothly, seamlessly blend from one colour (curvature) to another. For example, if we can see on the convex surface (orange) area with a different colour (e.g., yellow) this means there is an unnatural distortion in this point. The colour of the area tells us whether it is convex or concave, and so that we know in which direction we should move the control point. Using the stations, buttocks and waterlines view-ports we can adjust the position of points, until the deformation disappears.




So, with the ready hull I cut off the upper parts of it to refine the rail line. I started by creating a new layer, on which we would build a cutting surface. I gave it a different colour, for an easy orientation. I should mention here, no matter on which layer we build a part of a model, Delftship everything treats as a single object. This means that all the time we work on a single object (surface) described by a control grid assigned to multiple layers.



I added some points and created a surface with a profile similar ship’s rail line.




At this point I saved the project under a different name, because the very next operation so interfered with the model that any subsequent corrections to the hull would be difficult (if possible). I changed the density of the grid control, the program did it automatically dividing each edge in half and connecting these new points with new edges. I did the operation twice. Using the “find the intersection between two layers” option I cut off the upper side of the hull. It is worth to try all the available options, i.e. try to see each variant of input and target layers, the results may differ.





I founded that the rail cascade was much simplified. I could further subdivide the control grid, but it would result in excessive and unnecessary complexity of the model.




The points visible on the screen were on the auxiliary layer, and was no simple way to transfer them to the layer with the hull (it is the next limitation of Delftship) - and without that I couldn’t properly cut off the upper part of the bulwark. So I needed to divide the edge of the control grid (by adding additional control points) and manually change the coordinates of these points to match the result of cutting layer. After this operation I removed excess surfaces - I selected a point and just deleted it. The fastest way to do this was by selecting a point common to the four adjacent surfaces, removing it would remove all the four faces.


Edited by Jaro Bakowski
Link to comment
Share on other sites

The deck is two-directions curvature (the inside part of a torus). Constructing such a surface in Delftship is not possible - the program does not give us any tools to construct parametric components (i.e., designated by the geometric patterns). I could try to build a cylinder and transform it, but I chose a more simplified structure. The plans show two lines - the axis of the deck and (the most probably) the outer edge of the deck. These two lines helped me to estimate the curvature of the deck.


Firstly, I built a surface, with pairs of points differing on Y value. I subdivided the edges of the surface, then I changed the Y coordinate values of  “outer” points - I gave a lower Y value (I assumed that this elevation is lower 0.5 - it was an approximate value, I could use some math and find the real values). I thought it didn’t make much sense, the board was just an approximation - the most important (and determined correctly) is the centre line of the deck. The exact flow of the deck would be done at the final stage of processing with a vector graphics program.





I could add any other elements – gun ports, wale etc. just in the same way as the deck.


Finally, I could set new section planes for stations, buttocks and waterlines, just I would need building a model. The computer model was built in 1/1 scale. For the purposes of this tutorial I assumed that the model would be built in 1/48 scale (that's for easy unit conversion). Assuming that I would set the frames at every one inch (2.54 cm) it meant that in the Delftship model I would have to set them every 4 feet. So, using the intersections option I set up the stations to be spaced in the range of 0 to 60 (as Carleton had a length 59'2") at 4 feet. Of course, frames could be set up any other way, depending on our needs and objectives of the model construction.





The ready lines could be exported to a vector graphics program (such as a CAD or Corel Draw). After switching to the theoretical line view (“linesplan”) I used the export to DXF option, the common format for vector drawing. I opened the file with CAD programme (or imported the file with Corel), preserving the original layers. Delftship separated all the elements into layers according to their nature (separate layers for stations, buttocks, waterlines, hull’s edges). Then I scaled the drawing to 1/48 scale (or any other, as I wished), made half frames, added the thickness of frames, refined the deck. That’s for another story.




Edited by Jaro Bakowski
Link to comment
Share on other sites

  • 3 months later...
  • 1 month later...

Thanks for the tutorial.  I have been using a more complicated CAD program I've had since its inception but this is much better.


Current Built: Zeehaen 1639, Dutch Fluit from Dutch explorer Abel J. Tasman


Unofficial motto of the VOC: "God is good, but trade is better"


Many people believe that Captain J. Cook discovered Australia in 1770. They tend to forget that Dutch mariner Willem Janszoon landed on Australia’s northern coast in 1606. Cook never even sighted the coast of Western Australia).

Link to comment
Share on other sites

Thank you very much for the walk through and showing us what the program can and like you said can't do. It would be nice if it could do everything that way a person doesn't have to use more than one program. But it does seem to do an excellent job. Thanks.


Joe :D


Go MSW :) :)

Link to comment
Share on other sites

Dida, the last picture shows the DXF file imported to a CAD programme (Bentley Powerdraft precisely).

Marc, Wacko, it's fairly easy software but you won't avoid using another ones. Delftship still lacks some features. for example there are no parametric objects, and working with some regular curves is a real pain. also, the more advanced option for rotating planes would be a great idea...

Link to comment
Share on other sites

  • 1 year later...

Nice tutorial! I've started about half a dozen ships in delftship that i completed with other programs, and I'd say this covers most important aspects. one trick I've found to make the hull easier to shape accurately is to give the same fore-aft value to all of the station points in the vertical lines, so that you only have to worry about moving them in two directions-making the shape more predictable. 

Link to comment
Share on other sites

  • 2 weeks later...

Hmm from what I recall you could hold down shift and it would move in one direction, or you could lock the points in that direction, but I could be getting mixed up with another program.

Link to comment
Share on other sites

  • 2 weeks later...

That is a very good tutorial, Jaro.


I used Freeship to develop a hull for the first time and am yet to practice it's features.


Could you please tell me how you take out frames in AutoCAD using these hull data ?


Thanks for sharing this tutorial.



Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Recently Browsing   0 members

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