#include <hullworker.h>

Public Member Functions | |
| CHullWorker (const CHullDef &d) | |
| CPanelGroup | makeHull () |
Protected Member Functions | |
| CPoint3d | ptDeck (const real &x) |
| CPoint3d | ptKeel (const real &x) |
| CPoint3d | ptChine (const int &n, const real &x) |
| CPoint3d | ptLowChine (const real &x) |
Protected Attributes | |
| real | xBmax |
| CSubSpace | planeCentral |
| CSubSpace | planeDeck |
| CSubSpace | planeTransom |
| CSubSpace | planeChine [5] |
| CSubSpace | planeLowChine |
| CPoint3d | ptFwdChine |
| CPoint3d | ptAftChine |
| CPoint3d | ptCentreChine |
| CPoint3d | ptFwdDeck |
| CPanel | deck |
| CPanel | plank |
| CPanel | chine |
Definition at line 33 of file hullworker.h.
| CHullWorker::CHullWorker | ( | const CHullDef & | d | ) |
The constructor does some preliminary calculations to set internal variables, compute chine and deck plane, and compute lower chine plane panel.
compute the vertical central plane
compute the lower Chine plane
compute the Deck plane
compute the transom plane
lay lower chine plane decking panel
Definition at line 31 of file hullworker.cpp.
References CHullDef::BaftHeight, CHullDef::BaftW, CHullDef::BfwdHeight, CHullDef::BLWL, CPanel::bottom, CHullDef::BSlopeA, CHullDef::DaftHeight, CHullDef::DBWPos, CHullDef::DfwdHeight, CHullDef::DSlopeA, CSide::fill(), CSubSpace::getdim(), CSubSpace::getp(), CSubSpace::intersect(), CPanel::left, CSubSpace3d::plane(), planeCentral, planeDeck, planeTransom, ptAftChine, ptCentreChine, ptFwdChine, ptFwdDeck, ptLowChine(), CPanel::right, CPanel::top, CHullDef::TransomA, CVector3d::x(), and xBmax.
| CPanelGroup CHullWorker::makeHull | ( | ) |
Creates the basic hull with bottom, deck and only one top side plank.
NOTE: the code will have to be changed to build the full hull from the lower chine
Lay the two bottom panels with top edge at centre plane
Lay a single top side plank on each side with bottom at chine
Lay the two deck planks
Definition at line 169 of file hullworker.cpp.
References CPanel::bottom, CSide::fill(), CSubSpace::getdim(), CSubSpace::getp(), CHullDef::hullID, CSubSpace::intersect(), CPanel::left, CSubSpace3d::line(), planeDeck, ptKeel(), CPanel::right, CHullDef::StemA, CPanelGroup::title, CPanel::top, CHullDef::TopPlankA, and CPanelGroup::type.
| CPoint3d CHullWorker::ptDeck | ( | const real & | x | ) | [protected] |
function compute a point on Deck edge
| CPoint3d CHullWorker::ptKeel | ( | const real & | x | ) | [protected] |
function compute a point on Keel line
Return the 3D point at the keel line function of x x is the absisse of the corresponding point on the lower chine
Definition at line 139 of file hullworker.cpp.
References CHullDef::BDeadriseA, CHullDef::BSweepA, CSubSpace::getdim(), CSubSpace::getp(), CSubSpace::intersect(), CSubSpace3d::line(), planeCentral, and ptLowChine().
Referenced by makeHull().
| CPoint3d CHullWorker::ptChine | ( | const int & | n, | |
| const real & | x | |||
| ) | [protected] |
function compute a point on chine n
| CPoint3d CHullWorker::ptLowChine | ( | const real & | x | ) | [protected] |
function compute a point on lower Chine
Return the 3D point at the Lower chine edge function of x x is the absisse of the point along the centre line The chine edge curve is a power curve on either side of the maximum beam point
Definition at line 102 of file hullworker.cpp.
References CHullDef::BaftW, CHullDef::BBW, CHullDef::BfwdShape, CSubSpace::getdim(), CSubSpace::getp(), CSubSpace::intersect(), CSubSpace3d::line(), ptAftChine, CVector3d::x(), and xBmax.
Referenced by CHullWorker(), and ptKeel().
real CHullWorker::xBmax [protected] |
abciss of Bmax point on chine
Definition at line 42 of file hullworker.h.
Referenced by CHullWorker(), and ptLowChine().
CSubSpace CHullWorker::planeCentral [protected] |
central plane longitudinal X-Y
Definition at line 54 of file hullworker.h.
Referenced by CHullWorker(), and ptKeel().
CSubSpace CHullWorker::planeDeck [protected] |
CSubSpace CHullWorker::planeTransom [protected] |
CSubSpace CHullWorker::planeChine[5] [protected] |
chine plane
Definition at line 60 of file hullworker.h.
CPoint3d CHullWorker::ptFwdChine [protected] |
Lower Chine point at stem/centre line
Definition at line 64 of file hullworker.h.
Referenced by CHullWorker().
CPoint3d CHullWorker::ptAftChine [protected] |
Lower Chine point at transom/edge
Definition at line 66 of file hullworker.h.
Referenced by CHullWorker(), and ptLowChine().
CPoint3d CHullWorker::ptCentreChine [protected] |
Lower Chine point at transom/centre line
Definition at line 68 of file hullworker.h.
Referenced by CHullWorker().
CPoint3d CHullWorker::ptFwdDeck [protected] |
CPanel CHullWorker::deck [protected] |
basic panels
Definition at line 74 of file hullworker.h.
1.5.6