Descrizione |
---|
Partendo da una serie di disegni 2D, questa macro genera un modello tridimensionale di mezzo scafo o dello scafo completo. Versione macro: 1.0 Ultima modifica: 2016-01-25 Versione FreeCAD: <= 0.16 Download: ToolBar Icon Autore: Piffpoof |
Autore |
Piffpoof |
Download |
ToolBar Icon |
Link |
Raccolta di macro Come installare le macro Personalizzare la toolbar |
Versione macro |
1.0 |
Data ultima modifica |
2016-01-25 |
Versioni di FreeCAD |
<= 0.16 |
Scorciatoia |
Nessuna |
Vedere anche |
Nessuno |
Questa macro crea dei semplici modelli di scafi di imbarcazioni e di navi. Essa aiuta chi modella o progetta scafi, fornendo in modo veloce e semplice la superficie dello scafo, e riduce il tempo necessario per tutto il processo.
This macro makes simple models of the hulls of boats and ships. It is intended to aid people modeling or designing hulls by providing the hull surface in a straight forward and timely fashion so they can avoid the time consuming full process.
Temporary code for external macro link. Do not use this code. This code is used exclusively by Addon Manager. Link for optional manual installation: Macro
# This code is copied instead of the original macro code # to guide the user to the online download page. # Use it if the code of the macro is larger than 64 KB and cannot be included in the wiki # or if the RAW code URL is somewhere else in the wiki. from PySide import QtGui, QtCore diag = QtGui.QMessageBox(QtGui.QMessageBox.Information, "Information", "This macro must be downloaded from this link\n" "\n" "http://pastebin.com/raw/tZMpUi6F" + "\n" "\n" "Quit this window to access the download page") diag.setWindowFlags(QtCore.Qt.WindowStaysOnTopHint) diag.setWindowModality(QtCore.Qt.ApplicationModal) diag.exec_() import webbrowser webbrowser.open("http://pastebin.com/raw/tZMpUi6F")
Fin dall'antichità i costruttori di barche hanno dovuto progettare le barche e poi realizzarle in un ambiente tridimensionale dove poche linee sono rette, poche superfici sono piane e sulla distanza non ci sono angoli costanti. Dello scafo veniva costruito un modello in scala che serviva per rivedere il disegno o per comunicare i concetti ad altre persone. Le leggi dell'idrodinamica richiedono che qualsiasi imbarcazione che passa attraverso un liquido deve avere la sezione trasversale simmetrica se deve muoversi in una linea retta. Di conseguenza, nel modello basta costruire metà dello scafo - se il mezzo scafo è perfetto, anche la sua immagine speculare è perfetta. In questi ultimi anni i mezzi-scafi sono stati utilizzati per creare dei simboli, come, ad esempio, le targhe, e nell'arte nautica.
Questo codice deriva da un progetto fatto per costruire in FreeCAD il modello di una barca a vela di 12,5 metri. I costruttori non avevano più i disegni, e il figlio del proprietario originale dubitava che i disegni completi fossero mai esistiti. Di conseguenza, si dovevano misurare le dimensioni dello scafo e poi costruirne il modello in un software. I pacchetti di software moderni, come FreeCAD, offrono molte caratteristiche utili, come ad es. i vincoli di simmetria, ma quando l'obiettivo finale è un modello che sia "bello da vedere", esso deve essere "massaggiato" a lungo. Questo codice è stato scritto per aiutare ad automatizzare questo processo.
Lo scopo iniziale di questo codice era quello di fornire uno scafo simmetrico che fosse malleabile e adattabile al modello 3D in costruzione. Poiché il software si è evoluto è stato generalizzato e speriamo che sia utile a chi:
Certamente i progettisti di imbarcazioni commerciali per sviluppare il loro lavoro utilizzano dei software di fascia alta, questa macro non ha intenzione di sostituirli, ma può essere utile all'hobbista.
I progetti navali hanno una storia diversa rispetto a quella degli edifici e quindi anche la presentazione è un po' diversa. Ecco un esempio di una barca a vela che ha più di un secolo:
Tra gli obiettivi finali di questo software c'è quello di utilizzare l'ambiente Draft per generare alcuni di questi schemi, utilizzando il modello originale per generare le linee.
Note sulle Unità di misura in FreeCAD:
Al momento, in FreeCAD non c'è ancora nessun Sistema di gestione delle unità di misura, ma ovviamente un costruttore di barche o modellatore ha bisogno di un sistema di dimensionamento accurato. Per utilizzare questa macro, si deve impostare la griglia di FreeCAD con la dimensione appropriata al lavoro (per esempio mm, cm, pollici, piedi). FreeCAD è coerente, una unità di FreeCAD sarà sempre uguale a una unità di FreeCAD. Se avete deciso che una unità FreeCAD corrisponde a una determinata lunghezza fisica, allora i vostri disegni rimarranno dimensionati coerentemente. Al momento si sta lavorando su un Sistema di unità per FreeCAD, quindi questa situazione potrebbe cambiare presto.
Per questa macro, le forme della carena sono definite da un minimo di 3 schizzi di FreeCAD: uno nel piano YZ, uno o più nel piano XZ e uno nel piano XY. Qui è presentato lo scafo minimo supportato da questa macro, ha solo 3 schizzi:
For this macro the hull shapes are defined by a minimum of 3 FreeCAD Sketches: one in the YZ plane, one or more in the XZ plane, one in the XY plane. Here is the minimum hull supported by this macro, it has only 3 Sketches:
Nota: nello schema precedente stiamo guardando direttamente a poppa, la prua è rivolta in direzione opposta al punto di vista.
Da davanti a dietro (da prua a poppa) i 3 schizzi sono:
linea di prua |
piano YZ |
linea rossa nello schizzo |
sezione trasversale |
piano XZ |
linea verde nello schizzo |
specchio di poppa |
piano XY |
linea blu nello schizzo |
Forse è più facile da vedere con 7 schizzi (uno nel piano YZ, uno nel piano XY e 5 nel piano XZ):
Con 5 schizzi nel piano XZ è più facile cominciare a percepire la forma dello scafo. Le prossime 2 immagini mostrano le linee di disegno sovrapposte al modello che FreeCAD produce,
questa seconda figura riproduce lo stesso modello ruotato di 90 gradi, con la prua in primo piano:
Alcuni punti da prendere in considerazione:
Con sufficienti schizzi il modello generato diventa verosimile:
La macro HalfHull genera 4 modelli:
Questi modelli sono tutti prodotti nella posizione unificata dello spazio di FreeCAD in modo che possano essere assemblati - per esempio le paratie possono essere inserite perfettamente nello scafo completo. Questa è una foto delle paratie di un modello di barca in costruzione:
Così come le paratie generate dalla macro (notare che queste paratie sono per un cassero e non per un ponte raso):
L'immagine composita sottostante mostra i principali risultati prodotti da questo software (attualmente il mezzo scafo di babordo non è mostrato ma è lo specchio del mezzo scafo di dritta che è mostrato). I prodotti sono in senso orario dall'alto a sinistra:
Come nuove caratteristiche, opzionalmente la macro può anche produrre targhe per i mezzi-scafi, o una bottiglia per lo scafo completo:
Tutto il codice di halfHullModel.FCMacro è contenuto in una macro, quindi per installarla basta copiare il suo codice nella appropriata directory delle Macro. Dopo, si può invocare halfHullModel.FCMacro dal menu Macro, dalla console Python o da un pulsante della barra degli strumenti (il metodo preferito).
All the code for halfHullModel.FCMacro is in one macro. So installation is comprised of copying the code to the appropriate Macro directory and invoking the Build Utility from the Macro menu, the Python console or a toolbar button (the preferred method).
Le operazioni FreeCAD coinvolte nella generazione del modello dello scafo sono piuttosto complesse e numerose. Alcune cose come, ad esempio, la direzione in cui viene disegnata una linea possono portare FreeCAD alla costruzione dello scafo o al fallimento o a produrre deformazioni come questa:
Di conseguenza, i passaggi successivi devono essere seguiti attentamente. La macro non consente alcune incongruenze di dati, in generale se i dati (cioè gli schizzi) non sono corretti il prodotto è simile a una grattugia oppure il riempimento della macro fallisce con un errore.
Le successive istruzioni si riferiscono ai quadranti del grafico XY, dove i 4 quadranti sono etichettati in questo modo:
Creare un Nuovo Documento
La prima cosa da fare è quella di creare un nuovo documento in FreeCAD . Questo documento conterrà tutti gli schizzi che compongono la definizione dello scafo.
Il primo passo consiste nel creare i dati per il modello dello scafo che si vuole realizzare. I dati sono forniti in forma di schizzi interni a FreeCAD. Quando il modello dello scafo è stato generato, per apportare delle modifiche basta semplicemente editare gli schizzi, e poi eseguire ripetamente la macro.
Salvare il Nuovo Documento
Ora salvare il documento che contiene gli schizzi che definiscono la forma dello scafo, dandogli un nome descrittivo
Quando tutti gli schizzi sono stati creati e posizionati, nella vista dall'alto il documento dovrebbe essere simile a questo:
Le principali limitazioni per costruire il modello sono:
Questo conclude la prima parte che consiste nel creare i dati che la macro utilizza per creare due mezzi scafi o uno scafo completo. La seconda parte è descritta nella sezione seguente ed è intitolata Interfaccia utente
In questa fase la macro raccogliere alcune informazioni dall'utente e quindi elabora gli schizzi input per generare i modelli di scafo desiderati. Questa è l'immagine dell'unica GUI della macro che permette di configurare i principali dettagli per la produzione dei modelli di scafo dagli schizzi:
Nella finestra GUI si può sceglire:
Quando viene eseguita, la macro prende i dati di configurazione dall'utente e poi legge gli schizzi di Sketcher nel file di input selezionato.
Nota: Dato che la macro opera attraverso gli schizzi essa stampa le eventuali eccezioni e alcuni passaggi chiave nella Vista Report. Se si ottengono dei risultati imprevisti o mancano alcune parti, probabilmente è il primo posto in cui conviene guardare.
Per le imbarcazioni ci sono molti tipi di prue e di poppe, e ci sono più varietà di poppe che di prue. Ecco alcuni esempi di specchi di poppa e di prue dal mondo reale affiancate dall'analogo prodotto della macro:
There are various types of bows and sterns for boats, with sterns having much more variety than bows. Here are examples of transoms and bows from the real world alongside the similar macro output:
Poppa Sheer
La poppa quadra è probabilmente la più comune, è utilizzata per imbarcazioni di qualsiasi dimensione, dalle navi commerciali fino alle barche a remi.
![]() |
![]() |
Poppa Sugar-Scoop
È probabile che si trovi su una barca a vela, è un prodotto studiato per massimizzare la lunghezza della linea di galleggiamento per beneficiare delle regole sulle classi nelle competizioni a vela.
![]() |
![]() |
Poppa a canoa
Si trova su tutti i formati di natanti, a motore e a vela, da diporto e commerciali.
![]() |
![]() |
Prua normale
Ci sono molte meno varietà di forme di prua che non di poppe:
![]() |
![]() |
Prua Trireme
Anche se negli ultimi 2 millenni non si vede molto spesso, in passato, questa era il profilo definitivo della prua per le navi belliche:
![]() |
![]() |
Questi file contengono gli schizzi con i dati campione da utilizzare con la macro, e sono soprattutto i modelli per le schermate riprodotte nella precedente sezione Opzioni. I file funzionano con la Macro, quindi possono essere scaricati e riprodotti per adattarli alle proprie specifiche esigenze. Il prefisso di 5x3 (ad esempio) significa che il modello è dotato di 5 sezioni e che ci sono 3 segmenti di linea per ogni sezione (i.e. sketch)
These files are samples of Sketch data to use with the macro, mainly they are the models for the screen snapshots in the Options section above. The files work with the Macro and so can be downloaded and played with to adapt to your specific requirements. The prefix of 5x3 (for example) means the model has 5 cross-sections and 3 line segments per cross-section (i.e. sketch)
Per utilizzare uno dei file di esempio, fare clic destro sul link del file e selezionare Salva file ... dal menu. Sarà specificato il nome del file, scegliere la cartella o directory desiderata per contenere il file di esempio.
Per generare sezioni scafo dagli schizzi viene utilizzata la funzione 'Superficie rigata' di FreeCAD. A volte può generare un risultato sbagliato e visualizzare una grattugia come superficie invece di una superficie liscia. Questo in genere si verifica quando i disegni sono ruotati come, ad esempio, quando si modella una poppa Sugar Scoop. Questo può capitare anche inclinando un specchio di poppa quadro. Se succede questo, in genere avviene nei due modelli mezzo-scafo oppure nel modello dello scafo completo - sembra che non si verifichi mai in tutti e tre i modelli dello stesso scafo. Inoltre, di solito, succede solo all'estremità di prua o di poppa. Se capita in una sezione nel mezzo della barca è molto probabile che uno degli schizzi sia stato redatto nella direzione sbagliata (cioè o con sequenza casuale o dall'alto verso il basso mentre invece tutte le linee devono essere tracciate dal basso verso l'alto)
The 'Ruled Surface' feature of FreeCAD is used to generate the hull sections from the Sketches. It can sometimes generate the wrong result and display a grater like surface instead of a smooth planar one. This will typically occur when the Sketches are rotated such as when a Sugar Scoop stern is modeled. Also angling a Sheer Transom stern can cause this. If it occurs then typically it will do so in either the half-hull models or the complete hull model - it never seems to occur in all three models for the same hull. Also it usually only happens at the extreme bow or stern. If it happens to section in the middle of the boat then most likely one of the Sketches was drawn in the wrong direction (i.e. either random sequence or top-down where as all lines should be drawn bottom-up)
Di solito, si può correggere la distorsione nel seguente modo:
La seguente schermata mostra la parte dello schermo interessata:
Come per qualsiasi settore antico e pratico, intorno alle navi, alle imbarcazioni e alle pratiche nautiche si è sviluppato un vocabolario ricco e talvolta confuso. Nel descrivere questa macro è scomodo e inefficiente descrivere il processo senza utilizzare dei termini corretti e precisi. È evidente che non tutti hanno familiarità con questa terminologia, quindi ecco questo vocabolario:
poppa | la parte posteriore di una barca |
chine spigolatura | la sfaccettatura piana di uno scafo, può essere utilizzata per approssimare una superficie curva o come tecnica di finitura |
cassero | la parte del ponte centrale che si eleva al di sopra del livello del ponte - di solito per ospitare maggiore altezza libera all'interno della barca |
ponte raso | un ponte che dalla parte superiore corre liscio da un lato dello scafo all'altro, l'inverso di un ponte con cassero |
prua | la parte anteriore di una barca |
babordo | il lato sinistro guardando avanti, verso la prua |
dritta o tribordo | lato destro guardando avanti, verso la prua |
linea di prua | il bordo inclinato verticale che è la prua di uno scafo |
specchio di poppa | il bordo superiore curvo della faccia di poppa che può essere piana o curva |
As with any ancient and practiced trade, a rich and sometimes confusing vocabulary has developed around ships, boats and nautical practices. In describing this macro it is both awkward and inefficient to describe the process without using the correct and accurate terms. The obvious problem is that the average lay person will be unfamiliar with such terminology, hence this vocabulary:
aft | the rear aspect of anything on a boat |
chine | a planar facet of a hull, can be used to approximate a curved surface or as a finished building technique |
coachhouse | the part of the central deck which is raised above the deck level - usually to accommodate increased headroom in the interior of the boat |
flush deck | a deck that runs smoothly from the top of one side of the hull to the other, the converse to a coachhouse deck |
forward | also 'fore'; the front aspect of anything on a boat |
port | lefthand side looking forward |
starboard | righthand side looking forward |
stemline | the sloped vertical edge which is the bow of a hull |
transom | the curved top edge of the stern face which can be flat or curved |
Macro_Half_Hull_Model.FCMacro
Questo script funziona senza bug. Ma a causa della grande varietà di possibili input può fallire per alcuni input. Se succede siete pregati di segnalarlo.
Lo script è troppo lungo per essere visualizzato nel Wiki quindi deve essere copiato o scaricato da unabbreviated script on pastebin.com