Virtual Testbed
Ship dynamics simulator for extreme conditions
composite_curve.hh
1 #ifndef VTESTBED_IGES_COMPOSITE_CURVE_HH
2 #define VTESTBED_IGES_COMPOSITE_CURVE_HH
3 
4 #include <blitz/array.h>
5 
6 #include <vtestbed/iges/entity.hh>
7 
8 namespace vtb {
9 
10  namespace iges {
11 
13  template <class T>
14  class Composite_curve: public Entity {
15 
16  private:
17  typedef blitz::TinyVector<T,3> vec3;
18 
19  private:
20  Entity_container _entities;
21 
22  public:
23 
24  inline
26  Entity(Entity_type::Composite_curve) {}
27 
28  inline
30  Entity(Entity_type::Composite_curve),
31  _entities(entities)
32  {}
33 
34  inline void
35  clear() {
36  this->_entities.clear();
37  }
38 
39  protected:
40 
41  void
42  parameters(iges_ostream& out) const override;
43 
44  };
45 
46  }
47 
48 }
49 
50 #endif // vim:filetype=cpp
Base class for entities.
Definition: iges/entity.hh:17
Main namespace.
Definition: convert.hh:9
Output stream that automatically wraps text for IGES files.
Definition: stream.hh:143