libsurf
Programmer's Documentation

ellipframe.h (r6227/r5385)
1 
2 /* Copyright (C) 2015 David Eller <david@larosterna.com>
3  *
4  * Commercial License Usage
5  * Licensees holding valid commercial licenses may use this file in accordance
6  * with the terms contained in their respective non-exclusive license agreement.
7  * For further information contact david@larosterna.com .
8  *
9  * GNU General Public License Usage
10  * Alternatively, this file may be used under the terms of the GNU General
11  * Public License version 3.0 as published by the Free Software Foundation and
12  * appearing in the file gpl.txt included in the packaging of this file.
13  */
14 
15 #ifndef SURF_ELLIPFRAME_H
16 #define SURF_ELLIPFRAME_H
17 
18 #include "symframe.h"
19 
32 class EllipFrame : public SymFrame
33 {
34  public:
35 
37  explicit EllipFrame(const std::string & s) : SymFrame(s) {}
38 
40  void init(const Vct3 & ctr, Real radius);
41 
43  void init(const Vct3 & ctr, Real rz, Real ry);
44 
46  void init(const Vct3 & ctr, Real rzdown, Real rzup, Real ry);
47 
49  virtual XmlElement toXml(bool share=false) const;
50 
52  virtual void fromXml(const XmlElement & xe);
53 
55  virtual EllipFrame *clone() const;
56 
57  private:
58 
60  Vct3 ectr;
61 
63  Real rlo, rhi, rs;
64 };
65 
66 #endif
Real rlo
radii
Definition: ellipframe.h:63
virtual EllipFrame * clone() const
generate a clone
Definition: ellipframe.cpp:98
virtual XmlElement toXml(bool share=false) const
xml representation stores dimensions and center
Definition: ellipframe.cpp:52
virtual void fromXml(const XmlElement &xe)
construct from xml representation
Definition: ellipframe.cpp:70
Vct3 ectr
center position
Definition: ellipframe.h:60
Symmetric fuselage frame.
Definition: symframe.h:32
Elliptic fuselage frame.
Definition: ellipframe.h:32
EllipFrame(const std::string &s)
construction with name
Definition: ellipframe.h:37
void init(const Vct3 &ctr, Real radius)
initialization for circle
Definition: ellipframe.cpp:19
Generated on Wed Jan 19 2022 03:03:15 for libsurf by   doxygen 1.8.5