Points&Forces (survey)
Software tools facilitating the task of surveying architecture
|
#include <a_block_2d5.h>
Public Member Functions | |
a_block_2d5 () | |
~a_block_2d5 () | |
a_block_2d5 (a_point *p1, a_point *p2, a_point *p3, a_point *p4, a_point *p5, double thickness=1.) | |
constructor: 5 coplanar points defining a pentagon + constant thickness More... | |
virtual void | copy (const a_block_2d5 &) |
copy the block. do not create new edges More... | |
virtual void | deepcopy (const a_block_2d5 &) |
copy the block. create new edges More... | |
virtual std::string | name () const |
get type of the pointer More... | |
void | thickness (const double thickness) |
set block thickness More... | |
double | thickness () const |
get block thickness More... | |
double * | thickness_p () const |
get block thickness pointer More... | |
a_point | v3d (const int i) const |
get vertex (world coordinate, 3D: 10 points: order v0-n, v0+n, v1+n, v1-n More... | |
int | nvt () const |
get number of vertices (here 10, from 5 which are defined) More... | |
int | nit () const |
get number of faces (here 7, from 5 which are defined) More... | |
double | V () const |
volume of the block More... | |
virtual a_point | cl () const |
centre of gravity of the face (local coordinate system) More... | |
a_point | normall () const |
normal to the definition plan of the block (local coordinates) More... | |
a_point | normal () const |
normal to the definition plan of the block (world coordinates) More... | |
virtual void | read (std::istream &i) |
input/output More... | |
virtual void | write (std::ostream &o) const |
virtual void | writetri (std::ostream &o) const |
write a triangle face representation of the block More... | |
virtual void | writeb (std::ostream &o) const |
write a blender description of the block More... | |
virtual void | writeg (std::ostream &o) const |
write a brlcad description of the block More... | |
void | writefaces (std::ostream &o, const int base) const |
write a triangle file description of the block More... | |
void | trianglecloud (a_trianglecloud &) const |
Public Member Functions inherited from a_block | |
a_block () | |
virtual | ~a_block () |
void | clear () |
virtual void | copy (const a_block &) |
virtual void | deepcopy (const a_block &) |
void | g (a_point *g) |
set gravity More... | |
a_point * | g () const |
get gravity More... | |
a_point | c () const |
centre of mass (in world coordinate) More... | |
double | m () const |
mass More... | |
double | Ws () const |
weight More... | |
a_wrench | W () const |
weight wrench in world coordinate More... | |
a_wrench | fe () const |
external force on block in world coordinate More... | |
a_wrench | ft () const |
total force on block in world coordinate More... | |
a_wrench | W (const a_block &be) const |
compute the weight (in world coordinate) of block connected up to block be (included) More... | |
a_wrench | ft (const a_block &be) const |
compute the total force (in world coordinate) of block connected up to block be (included) More... | |
a_block * | nextblock () const |
block connected (return 0 if end or problem) More... | |
double | potential () const |
potential energy More... | |
void | clearinternal () |
clear all the internal face forces More... | |
void | clearexternal () |
clear all the external face forces More... | |
void | clearall () |
clear all the forces on faces More... | |
a_block * | compute () |
compute the exit force from all the forces on the block, return next block or 0 if last one or problem More... | |
void | material (a_material *material) |
link a material More... | |
a_material * | material () const |
get pointer to material More... | |
int | nv () const |
get number of vertices More... | |
int | ni () const |
get number of faces More... | |
void | av (a_point *vertex) |
add a vertex More... | |
void | ai (a_face *face) |
add a face More... | |
a_point * | v (const int i) |
get pointer to vertex More... | |
a_point * | v (const int i) const |
get pointer to vertex More... | |
a_face * | i (const int i) |
get pointer to face More... | |
a_face * | i (const int i) const |
get pointer to face More... | |
a_twist * | pos () const |
get pointer to position handle More... | |
void | place (const int fi, a_block *block, const int fe, double u, double v) |
place a face of the block on the face of another block More... | |
std::vector< int > | in () const |
return inside faces More... | |
std::vector< int > | out () const |
return outside faces More... | |
void | exit (int ref) |
set exit face More... | |
int | exit () const |
get exit face More... | |
int | entrance (int ref) |
set exit face specifying where the force enters More... | |
void | criteria (a_fcriteria *criteria) |
set resistance criteria More... | |
bool | ok () const |
check if forces on face are acceptable More... | |
double | penalty () const |
penalty value used for optimization More... | |
void | writeverts (std::ostream &o) const |
Static Public Member Functions | |
static const std::string | help () |
get information about the class More... | |
Static Public Member Functions inherited from a_block | |
static const std::string | help () |
get information about the class More... | |
Protected Attributes | |
double * | thickness_ |
Protected Attributes inherited from a_block | |
std::vector< a_point * > | vertices_ |
std::vector< a_face * > | faces_ |
a_material * | material_ |
bool | material_auto_ |
int | exit_face_ |
a_twist * | pos_ |
a_point * | g_ |
Definition at line 21 of file a_block_2d5.h.
a_block_2d5::a_block_2d5 | ( | ) |
Definition at line 37 of file a_block_2d5.cxx.
a_block_2d5::~a_block_2d5 | ( | ) |
Definition at line 44 of file a_block_2d5.cxx.
a_block_2d5::a_block_2d5 | ( | a_point * | p1, |
a_point * | p2, | ||
a_point * | p3, | ||
a_point * | p4, | ||
a_point * | p5, | ||
double | thickness = 1. |
||
) |
constructor: 5 coplanar points defining a pentagon + constant thickness
Definition at line 51 of file a_block_2d5.cxx.
|
virtual |
centre of gravity of the face (local coordinate system)
Implements a_block.
Definition at line 117 of file a_block_2d5.cxx.
|
virtual |
copy the block. do not create new edges
Definition at line 88 of file a_block_2d5.cxx.
|
virtual |
copy the block. create new edges
Definition at line 96 of file a_block_2d5.cxx.
|
static |
get information about the class
Definition at line 64 of file a_block_2d5.cxx.
|
inlinevirtual |
|
inlinevirtual |
get number of faces (here 7, from 5 which are defined)
Implements a_block.
Definition at line 47 of file a_block_2d5.h.
a_point a_block_2d5::normal | ( | ) | const |
normal to the definition plan of the block (world coordinates)
Definition at line 149 of file a_block_2d5.cxx.
a_point a_block_2d5::normall | ( | ) | const |
normal to the definition plan of the block (local coordinates)
Definition at line 142 of file a_block_2d5.cxx.
|
inlinevirtual |
get number of vertices (here 10, from 5 which are defined)
Implements a_block.
Definition at line 45 of file a_block_2d5.h.
|
virtual |
input/output
Reimplemented from a_block.
Definition at line 160 of file a_block_2d5.cxx.
|
inline |
get block thickness
Definition at line 39 of file a_block_2d5.h.
|
inline |
set block thickness
Definition at line 37 of file a_block_2d5.h.
|
inline |
get block thickness pointer
Definition at line 41 of file a_block_2d5.h.
|
virtual |
Implements a_block.
Definition at line 241 of file a_block_2d5.cxx.
|
virtual |
volume of the block
Implements a_block.
Definition at line 131 of file a_block_2d5.cxx.
|
virtual |
get vertex (world coordinate, 3D: 10 points: order v0-n, v0+n, v1+n, v1-n
Implements a_block.
Definition at line 107 of file a_block_2d5.cxx.
|
virtual |
Reimplemented from a_block.
Definition at line 168 of file a_block_2d5.cxx.
|
virtual |
write a blender description of the block
Implements a_block.
Definition at line 182 of file a_block_2d5.cxx.
|
virtual |
write a triangle file description of the block
Implements a_block.
Definition at line 221 of file a_block_2d5.cxx.
|
virtual |
write a brlcad description of the block
Implements a_block.
Definition at line 205 of file a_block_2d5.cxx.
|
virtual |
write a triangle face representation of the block
Implements a_block.
Definition at line 174 of file a_block_2d5.cxx.
|
protected |
Definition at line 67 of file a_block_2d5.h.