24#define vec_polyline_index 5
38 mcerr <<
"error in polyline:Gpt(int n): n>qpt: n=" << n <<
" qpt=" <<
qpt
47 mcerr <<
"error in polyline:Gpt(int n): n>qsl: n=" << n <<
" qsl=" <<
qsl
56 virtual void get_components(ActivePtr<absref_transmit>& aref_tran);
135 virtual void get_components(ActivePtr<absref_transmit>& aref_tran);
150std::ostream&
operator<<(std::ostream& file,
const polyline_pl& p);
175 if (fpl.
Gqpt() < 4 ||
179 mcerr <<
"ERROR in polygon::polygon(polyline_pl& fpl, int fs_convex)\n";
180 mcerr <<
"fpl.Gqpt() < 4 || fpl.Gpt(0)!=fpl.Gpt(qpt-1)\n";
188std::ostream&
operator<<(std::ostream& file,
const polygon& p);
204 virtual void get_components(ActivePtr<absref_transmit>& aref_tran);
224 virtual void get_components(ActivePtr<absref_transmit>& aref_tran);
266 dir1(unit_vec(fdir1)),
267 dir2(unit_vec(fdir2)) {
272std::ostream&
operator<<(std::ostream& file,
const spquadr& p);
DoubleAc acos(const DoubleAc &f)
point cross(const straight &sl) const
int range(const point &fpt, const vec &dir, vfloat &rng, point &fptenr, vfloat prec) const
polygon(const polygon &plg)
int check_point_in(const point &fpt, vfloat prec) const
polygon(const polyline_pl &fpl, int fs_convex)
polygon & operator=(const polygon &fpl)
polyline_pl(const plane &fpn, const point *fpt, int fqpt)
virtual void get_components(ActivePtr< absref_transmit > &aref_tran)
friend std::ostream & operator<<(std::ostream &file, const polyline_pl &p)
polyline_pl & operator=(const polyline_pl &fpl)
polyline_pl(const polyline_pl &pl)
static absrefabsref::* aref_pl
polyline & operator=(const polyline &fpl)
friend std::ostream & operator<<(std::ostream &file, const polyline &p)
void polyline_init(const point *fpt, int fqpt)
straight Gsl(int n) const
vfloat dist_two_inter(polyline &pl, vfloat prec) const
virtual void get_components(ActivePtr< absref_transmit > &aref_tran)
friend int plane::cross(const polyline &pll, point *crpt, int &qcrpt, polyline *crpll, int &qcrpll, vfloat prec) const
int check_point_in(const point &fpt, vfloat prec) const
vfloat distance(const point &fpt) const
static absrefabsref::*[4] aref_rct
virtual void get_components(ActivePtr< absref_transmit > &aref_tran)
friend std::ostream & operator<<(std::ostream &file, const spquadr &p)
vfloat apos(const straight &fsl, vfloat prec) const
virtual void get_components(ActivePtr< absref_transmit > &aref_tran)
vfloat apos(const point &fpt) const
point pt_angle_rad(vfloat rad, vfloat angle)
vfloat perpos(const point &fpt) const
static absrefabsref::*[4] aref_sp
vfloat Gawidth(void) const
vfloat perpos(const straight &fsl, vfloat prec) const
vfloat distance(const straight &sl, int &type_of_cross, point pt[2]) const
std::ostream & operator<<(std::ostream &file, const BGMesh &bgm)
int cross4pllines(const polyline pl[4], vfloat precision, straight &sl, point ptc[4][2])
vfloat cos2vec(const vec &r1, const vec &r2)