SPLINE VÀ VẼ ĐƯỜNG HÌNH TÀU
6.3 TỰ ĐỘNG HOÁ QUÁ TRÌNH VẼ TÀU
Phần mềm phục vụ vẽ kỹ thuật ra đời từ giữa những năm sáu mươi thế kỷ hai mươi. Năm 1965 hãng Control Data Corporation, viết tắt CDC, chuyển giao cho hãng GM phần mềm giải quyết những việc liên quan vẽ kỹ thuật . Từ thòi bấy giờ khái niệm (cùng tên gọi) thiết kế / sản xuất với trợ giúp của máy tính CAD/CAM, viết tắt từ Computer Aided Design / Computer Aided
cùng năm cho các hãng khổng lồ của Mỹ. Ngoài General Motors như đã kể, các hãng sản xuất máy bay Lockheed, McDonnel Douglas đã sử dụng có hiệu quả CAD/CAM. Hãng chế tạo máy bay Boeing Commercial Airplane luôn đi đầu trong việc sử dụng phần mềm CAD trong thiết kế và mô hình hóa.
Từ giữa những năm bảy mươi với sự xuất hiện máy tính cá nhân, CAD tìm được chỗ đứng trong thế giới máy cá nhân ngay từ những ngày đầu.
Sử dụng AutoCAD trong thiết kế bằng nhiều cách.
- Thông thường sử dụng CAD như công cụ đồ hoạ, thực hiện mọi động tác người vẽ muốn.
Các bản vẽ được phát họa trên màn hình, mọi động tác, chỉ thị được máy ghi lại trong bộ nhớ. Trên bản vẽ vừa ra đời người vẽ có quyền thay đổi, điều chỉnh, thêm, bớt vv... Bản vẽ được lưu giữ trong thiết bị ngoại vi để dùng nhiều lần, nhiều mục đích. Bản vẽ từ bộ nhớ được hiện lại trên màn hình hoặc trên bất cứ thiết bị xuất nào nếu người vẽ muốn. Thông thường các đồ hoạ được in ra giấy bằng máy in hoặc máy vẽ. Đồ họa từ CAD được ghi nhớ dưới dạng bitmap hoặc vector, được ghi ra file không đồ hoạ , ví dụ file .dxf.
- CAD được sử dụng như công cụ mô hình hoá kết cấu. Phương pháp tính bằng số có tên gọi phương pháp phần tử hữu hạn thường là người bạn đồng hành với CAD khi mô hình hệ thống và tiếp đó phân tích hệ thống. Kết cấu máy bay, tàu vũ trụ, tàu thủy, ôtô vv... đều được mô hình hóa về mặt hình học thông qua CAD, còn phân tích phản ứng của vật thể này với dòng chảy, với nhiệt độ, với tác động môi trường vv... được PPPTHH tính toán. Kết quả tính được lưu giữ trong bộ nhớ để khi xuất ra chúng được thể hiện bằng dữ liệu dạng số và thông tin dạng hình ảnh của CAD.
Đọan chương trình nhỏ sau đây giành riêng cho người đọc quan tâm đến phương pháp PTHH và CAD. Trong các phiên bản viết lại từ SAP IV của Bathe và Wilson, chương trình phân tích kết cấu bằng PPPTHH được viết lại bằng ngôn ngữ C, thay cho ngôn ngữ FORTRAN IV trước đây. Chương trình chạy nhanh hơn nhiều lần và đòi hỏi về cấu hình máy cho chương trình SAP 80 ( thay cho tên gọi cũ SAP IV) giản đơn hơn trước rất nhiều. Không những thế trong chương trình đồ sộ này người ta viết thêm nhiều mô đun bằng ngôn ngữ AutoLISP phục vụ công tác giao diện. Hình ảnh kết cấu 2D hoặc 3D được tự động ghi lại trong các file .dxf để sử dụng cho CAD và các phần mềm khác.
AutoLISP làm tất cả công việc vẽ vời này. Khi nhìn vào nội dung chương trình người đọc không nhìn thấy các file viết bằng LISP thông dụng mà chỉ tìm thấy các file đã mã hoá theo bí mật riêng của hãng Autodesk. Một trong các file bằng LISP sau khi dỡ bỏ mã (theo đề nghị của người viết bài này, lập trình viên của hãng dỡ bỏ mã khi được phép của chủ) có dạng sau.
; AutoSAP
;
; Finite Element
; Structural Analysis Preprocessor
;
; for use with AutoCAD
;
;
;
; Version 1.1
; June 16, 1987
; (vmon) (defun AutoSAP ()
(setvar "CMDECHO" 0) ; Turn off command echo (setvar "MENUECHO" 3) ; Turn off menu echo
(prin1 "AutoSAP - Version 1.1 - (c) Copyright 1986, 1987 ")
(noddat nodlst) )
(defun *error* (s) (princ "error: ") (princ s)
(terpri) )
(defun exit ()
;
(prin1 "EXIT from AutoSAP ")
; )
(defun noddat (nodlst)
;;; Initialize nodal data list (setq nodlst (list '() ) ) (setq nodlst (cdr nodlst) ) (command "layer")
(command "make") (command "nodes") (command "color") (command "red") (command "nodes") (command "set") (command "nodes") (command "") (command "layer") (command "make") (command "nodnums") (command "color") (command "red") (command "nodnums") (command "")
(menucmd "S=Nodes_Create") ; load nodal input menu
(sapin nodlst) ; read nodes from SAP86 data file (while (not (member mode '("A" "G" "Q") ) )
(setq mode (strcase (getstring "\nInput Nodes ? [A]dd [G]en or [Q]uit. ") ) ) (cond ( (= mode "A") (addnod nodlst) )
( (= mode "G") (gennod nodlst) ) ( (= mode "Q") (setq mode "N") ) ( (= mode "N") (exit) )
( T (prompt "Input [A]dd [G]en or [Q]uit Only. ") ) )
) )
(defun getnod (nodlst elmlst nodfile sapfile)
(setq noddat nil) ; Recover nodespace (setq addnod nil) ;
(setq gennod nil) ; undefine (setq linegen nil) ; node (setq linegen nil) ; generation (setq surfgen nil) ; functions
(menucmd "S=Elements_main") ; Select element options from menu (setq mode (getstring "\nAdd Gen Quit? : ") )
(cond ( (= mode "a") (addelm nodlst elmlst nodfile sapfile) )
( (= mode "add") (addelm nodlst elmlst nodfile sapfile) )
( (= mode "d") (delelm nodlst elmlst nodfile sapfile) ) ; NOT AN ( (= mode "del") (delelm nodlst elmlst nodfile sapfile) ) ; OPTION ( (= mode "g") (genelm nodlst elmlst nodfile sapfile) )
( (= mode "gen") (genelm nodlst elmlst nodfile sapfile) ) ( (= mode "n") (exit) )
( (= mode "no") (exit) ) )
)
(defun txtpos (pt)
;;; Locate text position in upper right quadrant from point
(setq xold (car pt) yold (cadr pt) zold (caddr pt) ) ; Get x,y,z (setq xnew (+ xold 0.20) ynew (+ yold 0.20) znew (+ zold 0.20)) ; Set new x,y,z (setq pt (list xnew ynew znew)) ; Set text pt )
(defun spint (n ncol sp1) (setq space " " sp1 " ") (setq nsp (- ncol 2) )
(if (> n 9) (setq nsp (- ncol 3) ) ) (if (> n 99) (setq nsp (- ncol 4) ) ) (if (> n 999) (setq nsp (- ncol 5) ) ) (while (> nsp 0)
(setq nsp (- nsp 1) )
(setq sp1 (strcat sp1 space) ) )
)
(defun noderr (n)
(cond ( (= n 1) (prompt "Error... Node Number < 1") ) ( (= n 2) (prompt "Error... Node Number > 2000") ) )
)
(defun sapin (nodlst)
(prin1 "Filename for SAP86 data: ") (setq sapfile (getstring "\n(Include filename extension *.XXX): ")) (setq nodfile (open sapfile "r") )
(setq title (read-line nodfile) ) ; Read title record (write-line title nodfile)
(setq master (read-line nodfile) ) ; Read master control record (setq numnod (substr master 1 5) )
(setq maxnod (atoi numnod) ) (setq nodcnt maxnod)
(while (> nodcnt 0)
(setq nxtnod (read-line nodfile) ) ; read next node point (setq anod (substr nxtnod 2 4) ) ; read node number (setq ax (substr nxtnod 36 10) ) ; read x coordinate (setq ay (substr nxtnod 46 10) ) ; read y coordinate (setq az (substr nxtnod 56 10) ) ; read z coordinate (setq nodnum (atoi anod) ) ; convert to integer (setq x (atof ax) ) ; convert to real (setq y (atof ay) ) ; convert to real (setq z (atof az) ) ; convert to real
;;;;; (prin1 nodnum) (prin1 x) (prin1 y) (prin1 z) (command "layer")
(command "set") (command "nodes") (command "")
(initget 16)
(setq pt (list x y z) ) (command "point" pt) (command "layer") (command "set") (command "nodnums") (command "")
(setq txtloc (txtpos pt) )
(command "text" txtloc "0.20" "0" anod) (setq nd (list nodnum x y z) )
(setq nxtnod (list nd) )
(setq nodlst (append nodlst nxtnod) ) (setq nodcnt (- nodcnt 1) )
)
;;; (setq mode (getstring "\nInput Elements? (Y or N): ") )
(if (= mode "N") (exit) )
;;; end of function sapin )
(defun getnode (node1 nodlst pt1)
(setq node1 (- node1 1) ) ; Set pointer to node1 (setq pt1 (nth node1 nodlst) ) ; Get node1 data (setq node1 (+ node1 1) ) ; Reset node1 (setq pt1 (cdr pt1) ) ; Delete node no.
(setq x1 (car pt1) ) ; Get x1 (setq y1 (cadr pt1) ) ; Get y1 (setq z1 (caddr pt1) ) ; get z1
(setq pt1 (list x1 y1 z1) ) ; Set point 1 for plotting
)
Đoạn chương trình giúp người đọc hiểu kỹ hơn về giao diện giữa ngôn ngữ lập trình với ngôn ngữ trí tuệ đồng thời thấy ví dụ tổ chức của một chương trình thiết kế hiện nay.
- CAD tham gia quá trình mô hình hóa tĩnh và động. Mô phỏng các hoạt động tự nhiên hoặc mô phỏng quá trình phát triển của những hiện tượng vật lý trong thiên nhiên ngày nay được thể hiện không chỉ bằng số mà còn bằng hình ảnh. Hình ảnh trong những trường hợp vừa kể CAD có thể miêu tả hoàn chỉnh. Hình ảnh do CAD xây dựng được chuyển sang những phần mềm khác làm những việc ngày càng kỳ diệu. Buồng lái máy bay tiêm kích dùng đào tạo phi công cho quân đội dựng trên cơ sở mô phỏng bằng đồ họa. Các trung tâm đào tạo người lái tàu thủy ngày nay được trang bị thiết bị lái dạng các phòng lái mô phỏng. Trong các trung tâm ấy luôn có mặt CAD.
- Đồ họa CAD là thành phần quan trọng trong bộ môn tự động hóa thiết kế. CAD thực hiện chỉ thị của người vẽ qua đường nhận lệnh và tự động thực hiện lệnh. Điểm mạnh của CAD chính là phần thứ hai này. Trong quá trình tự động hóa thiết kế CAD làm việc như công cụ thi hành các lệnh của chương trình do người thiết kế viết. Các lệnh này truyền cho AutoCAD qua các phần mềm sau:
(1) Ngôn ngữ trí tuệ AutoLISP, (VLISP),
(2) Ngôn ngữ C chuẩn, trong phạm vi ADS,
và ngôn ngữ DCL (Dialog Control Language) cùng Diesel chỉ dùng riêng trong Autodesk.
Trước khi thực hiện tự động hóa thiết kế người đọc nhất thiết phải nắm được ngôn ngữ lập trình đã nêu.
Mỗi chương trình vẽ đường hình tàu hoặc vẽ các kết cấu tàu luôn bao gồm những phần việc sau:
(1) Ghi nhận dữ liệu và xử lý dữ liệu.
Để vẽ đường hình tàu nhất thiết phải có tọa độ vỏ tàu, ít nhất tại các sườn lý thuyết. Để khai triển vỏ tàu tại nơi sản xuất nhất thiết phải có đầy đủ và chính xác tọa độ vỏ tàu cho tất cả sườn thật và những sườn phụ rất cần cho phóng dạng. Toàn bộ dữ liệu đó phải được máy tính với khả năng xử lý các phép tính cực nhanh tạo ra theo chương trình có sẵn. Cách tạo ra dữ liệu như đã trình bày trong phần vẽ vỏ tàu. Ngôn ngữ thực hiện các phép tính và quản lý dữ liệu sinh ra trong trường hợp thiết kế tàu, thích hợp nhất ngày nay phải kể đến C/C++. Thiếu ngôn ngữ mạnh như C , trong quá trình thiết kế chúng ta không thể vẽ đường hình và thực tế hơn là không thể tính các tính năng tàu, tính ổn định, tính chống chìm, tính sức cản, chọn máy, thiết kế chân vịt, tính trọng tâm, trọng lượng tàu vv..., và khốn khổ nhất là không thể phân tích kinh tế cho tàu đang thiết kế.
Khác với quan niệm lập trình của những năm bảy mươi, ngày đó chỉ coi trọng các phép tính song chưa chú ý đúng mức cơ sở dữ liệu, lập trình của những năm tám mươi trở đi coi trọng cơ sở dữ liệu, coi trọng cách tạo, quản lý, và truyền đạt cơ sở dữ liệu đó. Trong hệ thống đó đồ họa là khâu cuối cùng thể hiện ra thiết bị ngoại vi những gì chứa trong cơ sở dữ liệu .
(2) Thực hiện các công việc đồ họa theo chỉ thị ghi trong chương trình. Cơ sở dữ liệu được chế biến trong phần (1) được sử dụng theo lệnh của chương trình.
Chương trình vẽ đường hình tàu nhỏ làm công tác tuần tra sau đây có thể là ví dụ cho công việc tự động hóa vẽ đường hình. Trong chương trình trích dưới đây chỉ đề cập phần việc vẽ theo dữ liệu đã có sẵn. Phần việc xử lý dữ liệu đề cập trong những mô đun khác của chương trình.
Chương trình vẽ đường hình tàu chạy nhanh
Tàu chạy nhanh trong chương trình được hiểu là những tàu cỡ nhỏ, đáy bằng hoặc gần như bằng (planing boat), nhẹ, lắp máy công suất đủ lớn, chạy với tốc độ tương đối đến Fr = 1 ∼ 2.
Tài liệu chuyên ngành về tàu chạy nhanh được dùng trong khi viết chương trình:
“High-speed Small Crafts”, John de Graff, New York , 1972.
Đường hình tàu chạy nhanh
Trong thủ tục vẽ tàu này sử dụng tàu mẫu, chuẩn của Canada, dùng cho tàu du lịch, thể thao, tầu tuần tra dùng cho các lực lượng bảo vệ an ninh trên nước (cảnh sát, quân đội, hải quan ).
Tàu thuộc họ planing, deep-vee. Sườn phía mũi có phần uốn cong ra nhằm tăng tính chịu sóng.
Chiều dài tối đa nhóm tàu này không quá 25m. Tốc độ tương đối , tính theo số Froude Fr ≈ 2.
Mô hình tầu đã được thử nghiệm, tầu đã được chế tạo trên 50 chiếc chiều dài khác nhau, được dùng rộng rãi tại châu Âu, châu Mỹ.
Ngôn ngữ sử dụng trong chương trình
Ngôn ngữ AutoLISP được dùng viết chương trình. Toàn bộ đường hình miêu tả trong không gian 3D. Chương trình được chạy trong môi trường AutoCAD của Autodesk. Cấu tạo chương trình cho phép chạy với AutoCAD từ R11 trở lên.
Tài liệu về ngôn ngữ AutoLISP được giới thiệu trong sách của Tr. C. N. “Ngôn ngữ AutoLISP dùng trong AutoCAD”, do nhà xuất bản Thành phố Hồ Chí Minh phát hành 1995.
Sử dụng chương trình
Người dùng chuẩn bị các dữ liệu liên quan đến tàu chạy nhanh : Chiều dài toàn bộ của tàu Loa, tính bằng m.
Chiều dài giữa hai trụ ( chiều dài thiết kế) Lpp, tính bằng m, Chiều rộng tàu, B, tính bằng m,
Chiều cao đến mép boong, đo tại giữa tàu H, tính bằng m,
Góc nghiêng của vách đuôi ( transom) so với mặt phẳng đưng, vuông góc trục dọc tàu, γ, tính bằng °, giá trị dương nếu mép trên của vách nghiêng về trước. Giá trị mặc định trong thủ tục γ = 9°.
Góc nghiêng hông, β, tính bằng °. Trong trường hợp để trống giá trị này, thủ tục nhận giá trí mặc định khi vẽ.
Tất cả dữ liệu được ghi dưới dạng số thực, đến 7 số có nghĩa sau dấu phết. Trường hợp các dữ liệu là số được làm tròn , không có số sau dấu phết, thủ tục cho phép ghi số thực này dưới dạng sốù nguyên. Mọi phép đổi kiểu số thực hiện trong chương trình.
Khi vẽ xong, toàn bộ hình khối được thấy ở mặt bằng xOy ( góc chiếu so với trục Ox bằng 0, góc nghiêng so với mặt xOy bằng 0). Để nhìn đường hình trong không gian 3D sử dụng cột View trên menu AutoCAD.
Nội dung thủ tục
Toàn bộ thủ tục được ghi trong file HSCRAFT.LSP, trên đĩa mềm kèm theo chương trình này.
Dưới đây trình bày phiên bản đầu , chưa cập nhật, của file kể trên.
Chương trình thực hiện vẽ đường hình tàu trong không gian 3D. Từ không gian 3D người dùng có thể chuyển bản vẽ về các mặt chiếu thực hiện trong các mặt 2D.
;---
;;;
;;; Vỏ tàu chạy nhanh HSCRAFT.LSP
;;; Hight Speed Craft drawing in 3D
;;; Procedure Hscraft.lsp in AutoLISP running in AutoCAD R11 or later
;;; prepared by Dr. Tran Cong Nghi
;--- (defun gduser ()
(initget (+ 1 2 4))
;;; Loa – Chieu dai toan bo, tinh bang m (setq Loa (getreal "\nLoa : "))
(initget (+ 1 2 4))
;;; Lpp – Chieu dai giua hai tru, m (setq Lpp (getreal "\nLpp : "))
;;; B – chieu rong, m
(setq B (getreal "\nChieu rong Boa : ")) (setq dL (/ Loa 10.0) B2 (/ B 2.0 ) ) (initget (+ 1 2 4))
;;; Chieu cao den mep boong, m
(setq H (getreal "\nChieu cao den mep boong H :"))
(initget (+ 1 2 4))
;;; goc gamma
(setq gamma (getreal "\n Goc nghieng cua vach duoi :")) (initget (+ 1 2 4))
;;; goc Beta
(setq betha (getreal "\ngoc nghieng hong :"))
(setq fi (open "HC.dat" "r"))
; (setq line (read-line fi)
; Ns ( atoi (read line) ) ; )
(setq line (read-line fi)
line (strcat "(" line ")" ) line (read line) )
(setq Listy (mapcar '(lambda (x) (* x dL)) line )) ;; Z cua Base
(setq line (read-line fi)
line (strcat "(" line ")" ) line (read line))
(setq ListBase (mapcar '(lambda (x) (* x H )) line )) ;;; Ox cua be goc I
(setq line (read-line fi) line (strcat "(" line ")" ) line (read line))
(setq ListChx (mapcar '(lambda (x) (* x B2)) line )) ;;; Z cua be goc I
(setq line (read-line fi) line (strcat "(" line ")" ) line (read line))
(setq ListChz (mapcar '(lambda (x) (* x H )) line )) ;;; Ox cua deck (boong- be goc II)
(setq line (read-line fi) line (strcat "(" line ")" ) line (read line))
(setq Listdkx (mapcar '(lambda (x) (* x B2)) line )) ;;; Z cua boong - be goc II
(setq line (read-line fi) line (strcat "(" line ")" ) line (read line))
(setq Listdkz (mapcar '(lambda (x) (* x H )) line )) (defun drBase ( / pt )
;;; ve base
(setq pt (list 0.0 yB0 (nth 0 ListBase) ) ) (command "COLOR" 7)
(command "3DPOLY"
(last bg) (nth 15 base) ( nth 14 base) ( nth 13 base) ( nth 12 base) ( nth 11 base)
( nth 10 base)
(nth 9 base) (nth 8 base) ( nth 7 base) (nth 6 base)
(nth 5 base) (nth 4 base) ( nth 3 base) (nth 2 base) (nth 1 base) pt
"" ) ;;;ve chine
(command "COLOR" 5) (command "3DPOLY"
(list (nth 0 ListChx) yCh0 (nth 0 ListChz) )
( nth 1 chine)
(nth 2 chine) (nth 3 chine) ( nth 4 chine) (nth 5 chine) (nth 6 chine) (nth 7 chine) ( nth 8 chine) (nth 9 chine) (nth 10 chine) (nth 11 chine) (nth 12 chine)
;;;;(nth 13 chine) (nth 14 chine) ;;;;(last chine)
"" ) ;;; ve deck
(command "COLOR" 1) (command "3DPOLY"
(nth 15 deck) ( nth 14 deck) ( nth 13 deck) ( nth 12 deck) ( nth 11 deck)
( nth 10 deck)
(nth 9 deck) (nth 8 deck) ( nth 7 deck) (nth 6 deck) (nth 5 deck) (nth 4 deck) ( nth 3 deck) (nth 2 deck)
(nth 1 deck) (list (nth 0 Listdkx) ydk0 (nth 0 Listdkz) )
;;(nth 0 deck) "" )
;;; ve be gio
(command "COLOR" 1) (command "3DPOLY"
(last bg) (nth 15 bg) ( nth 14 bg) ( nth 13 bg) ( nth 12 bg) ( nth 11 bg)
( nth 10 bg)
(nth 9 bg) (nth 8 bg) ( nth 7 bg) (nth 6 bg) (nth 5 bg) (nth 4 bg) ( nth 3 bg) (nth 2 bg)
(nth 1 bg) (list (nth 0 Listbgx) yBG0 (nth 0 Listbgz) )
;;(nth 0 bg) "" )
)
;;
Tiếp theo đây trình bày một thiết kế tàu chạy nhanh, dài 18m, làm nhiệm vụ tuần tra bờ biển, vỏ bằng vật liệu composite được vẽ bằng AutoCAD. Đường hình tàu không khác thiết kế vừa miêu tả ở trên. Thời gian xử lý những đồ hoạ dạng này trên máy tính cá nhân kiểu từ AT486 trở lên có thể tính bằng đơn vị giây.
SỬ DỤNG HÀM SPLINE VẼ ĐƯỜNG HÌNH TÀU Vẽ đường hình tàu dựa vào tàu mẫu
Trong điều kiện có đủ thông tin về tàu mẫu có thể dùng các phương pháp nội suy để vẽ đường hình tàu. Mọi công tác xử lý dữ liệu cần thực hiện theo chương trình. Hiện nay trong các tài liệu công khai có thể tìm được các nguồn dữ liệu đáng tin cậy cho các loạt tàu sau: mẫu tầu vận tải
biển BSRA (Anh), mẫu SSPA (Thụy điển), mẫu Hansena (Na uy) , Formdata và mẫu tàu ven biển Dawson ♦ .
Mẫu BSRA có các thông số nằm trong phạm vi:
CB =0,65 ÷ 0,8;
B/T = 2,0 ÷ 4,0;
Lpp/ ∇1/3 = 4,0 ÷ 6,5.
Tàu vận tải SSPA : CB = 0,6 ÷ 0,75;
Mẫu tàu Hansen:
CP = 0,55 ÷ 0,66;
B/T = 2,145 ÷ 2,74;
LWL/ ∇1/3 = 4,9 ÷ 5,8;
LCB = -3,0 ÷ +2,0%;
Mũi quả lê với b = 0 ÷ 10%AM.
Các thủ tục vẽ vỏ tàu đựa vào tàu mẫu như sau:
- Từ kết quả tính toán, sử dụng các hệ số CB, CP, LCB, và hình sườn (thuộc dạng chữ U hoặc V, hoặc chữ S ) làm chuẩn cho phép nội suy.
- Sau khi xác định giá trị tương đối theo phương pháp nội suy , tiến hành tính giá trị tuyệt đối cho các sườn lý thuyết.
- Trên cơ sở hệ thống sườn lý thuyết, sử dụng nội suy tạo các sườn trung gian dọc toàn bộ chiều dài tàu.
- Từ nội suy vẽ các đường nước chuẩn. Trên cơ sở đường nước chuẩn vẽ các đường nước phụ .
- Vẽ đường bao đáy tại mặt cắt dọc giữa tàu, vẽ đường mũi, lái và nối boong dựa theo tàu mẫu.
Phương pháp sử dụng đường spline trên đây đã tỏ ra rất hiệu nghiệm trong khi vẽ vỏ tàu.
Phương pháp nội suy đã được áp dụng vào vẽ loạt tàu vận tải sức chở 400t và 600t đầu tiên đóng theo thiết kế trong nước. Đường hình Dawson đã tỏ ra rất thích hợp cho tàu chạy ven biển. Ví dụ sử dụng thành công có thể nêu là, đường hình Dawson áp dụng cho tàu sức chở 600t vận tải ven biển cho phép giảm công suất cần thiết của máy chính 10 -20% so với tàu dùng đường hình khác kiểu, trong khi vẫn đảm bảo sức chở và vận tốc hàng hải theo yêu cầu đề ra. Từ thực tế sử dụng đường hình chuẩn, vẽ theo phương pháp nội suy, nhóm kỹ sư đóng tàu cùng làm việc với người viết, cuối những năm bảy mươi đã đề xuất phương án sử dụng máy chính 400CV lắp cho tàu sức chở 600t với cam kết đảm bảo vận tốc khai thác trên 10 HL/h . Tàu này đã hoạt động đúng như yêu cầu đã đặt ra.
Cần nói rõ thêm, vận tốc 10Hl/h này đúng bằng vận tốc của một tàu hàng khác, sức chở chỉ vỏn vẹn 400tdw, lắp máy 400CV cùng kiểu, do một phòng thiết kế “danh giá”ù trong thời ấy tung ra.
Những ví dụ tự động hóa thiết kế đường hình tàu vận tải và tàu cá được trình bày tiếp theo như tài liệu tham khảo, có thể giúp người đọc hiểu hơn về vẽ tàu.
♦ Tài liệu tham khảo:
H.Schneekluth, “Einige Verfahren und Nọherungsformeln zum Gebrauch beim Linienetwurf”, Schiffbautechnik, 1952.
D.I. Moor ,M.N.Parker, R.N.M. Pattullo, “The BSRA Methodical Series-An Overall Presentation”, Tr. RINA,1961, 1966.
A. Williams, “The SSPA Cargo Liner Series Propulsion”, 1970.
H.B. Hansen, “Systematic Experiments with Models of Fast Coasters”, 1956.