16 #ifndef _A_BLOCK_2D3_H_
17 #define _A_BLOCK_2D3_H_
29 static const std::string
help();
35 virtual std::string
name()
const {
return "a_block_2d3";}
43 a_point
v3d(
const int i)
const;
45 inline int nvt()
const {
return 6;}
47 inline int nit()
const {
return 5;}
51 virtual a_point
cl()
const;
57 virtual void read(std::istream &
i);
58 virtual void write(std::ostream &o)
const;
60 virtual void writetri(std::ostream &o)
const;
61 virtual void writeb(std::ostream &o)
const;
62 virtual void writeg(std::ostream &o)
const;
64 void writefaces(std::ostream &o,
const int base)
const;
a_block_2d3 * cb_2d3(a_block *b)
virtual void write(std::ostream &o) const
virtual std::string name() const
get type of the pointer
int nit() const
get number of faces (here 5, from 3 which are defined)
virtual void writeb(std::ostream &o) const
write a blender description of the block
a_point normal() const
normal to the definition plan of the block (world coordinates)
virtual void writetri(std::ostream &o) const
write a triangle face representation of the block
a_point v3d(const int i) const
get vertex (world coordinate, 3D: 8 points: order v0-n, v0+n, v1+n, v1-n
void thickness(const double thickness)
set block thickness
virtual void read(std::istream &i)
input/output
static const std::string help()
get information about the class
double * thickness_p() const
get block thickness pointer
double thickness() const
get block thickness
virtual a_point cl() const
centre of gravity of the face (local coordinate system)
virtual void deepcopy(const a_block_2d3 &)
copy the block. create new edges
void trianglecloud(a_trianglecloud &) const
virtual void writeg(std::ostream &o) const
write a brlcad description of the block
void writefaces(std::ostream &o, const int base) const
write a triangle file description of the block
int nvt() const
get number of vertices (here 6, from 3 which are defined)
a_point normall() const
normal to the definition plan of the block (local coordinates)
virtual void copy(const a_block_2d3 &)
copy the block. do not create new edges
double V() const
volume of the block
a_face * i(const int i)
get pointer to face