Loading...
Searching...
No Matches
SASEdge.h
Go to the documentation of this file.
// -*- Mode: C++; tab-width: 2; -*-
// vi: set ts=2:
//
#ifndef BALL_STRUCTURE_SASEDGE_H
#define BALL_STRUCTURE_SASEDGE_H
#ifndef BALL_STRUCTURE_GRAPHEDGE_H
# include <BALL/STRUCTURE/graphEdge.h>
#endif
#ifndef BALL_MATHS_ANGLE_H
# include <BALL/MATHS/angle.h>
#endif
#ifndef BALL_MATHS_CIRCLE3_H
# include <BALL/MATHS/circle3.h>
#endif
namespace BALL
{
class SolventAccessibleSurface;
class SASFace;
class SASVertex;
class RSEdge;
class TriangulatedSAS;
class SASTriangulator;
class BALL_EXPORT SASEdge : public GraphEdge< SASVertex,SASEdge,SASFace >
{
public:
friend class SASVertex;
friend class SASFace;
friend class SolventAccessibleSurface;
friend class TriangulatedSAS;
friend class SASTriangulator;
BALL_CREATE(SASEdge)
SASEdge()
;
SASEdge(const SASEdge& sasedge, bool deep = false)
;
SASEdge(SASVertex* vertex0,
SASVertex* vertex1,
SASFace* face0,
SASFace* face1,
const TCircle3<double>& circle,
const TAngle<double>& angle,
Index index)
;
virtual ~SASEdge()
;
void set(const SASEdge& sasedge, bool deep = false)
;
SASEdge& operator = (const SASEdge& sasedge)
;
void set(SASVertex* vertex0,
SASVertex* vertex1,
SASFace* face0,
SASFace* face1,
const TCircle3<double>& circle,
const TAngle<double>& angle,
Index index)
;
void setCircle(const TCircle3<double>& center)
;
TCircle3<double> getCircle() const
;
void setAngle(const TAngle<double>& angle)
;
TAngle<double> getAngle() const
;
virtual bool operator == (const SASEdge&) const
;
virtual bool operator != (const SASEdge&) const
;
virtual bool operator *= (const SASEdge&) const
;
bool isFree() const
;
protected:
/*_ @name Attributes
*/
/*_ The circle on which the SASEdge lies.
*/
TCircle3<double> circle_;
/*_ The angle of the SASEdge.
*/
TAngle<double> angle_;
};
BALL_EXPORT std::ostream& operator << (std::ostream& s, const SASEdge& sasedge);
} // namespace BALL
#endif // BALL_STRUCTURE_SASEDGE_H
BALL_EXPORT
#define BALL_EXPORT
Definition COMMON/global.h:50
angle.h
circle3.h
BALL::GraphEdge< SASVertex, SASEdge, SASFace >::GraphEdge
GraphEdge()
Definition graphEdge.h:255
BALL::RSEdge
Definition RSEdge.h:49
BALL::SASEdge
Definition SASEdge.h:34
BALL::SASEdge::isFree
bool isFree() const
BALL::SASEdge::setAngle
void setAngle(const TAngle< double > &angle)
BALL::SASEdge::SASTriangulator
friend class SASTriangulator
Definition SASEdge.h:50
BALL::SASEdge::set
void set(const SASEdge &sasedge, bool deep=false)
BALL::SASEdge::SASVertex
friend class SASVertex
Definition SASEdge.h:46
BALL::SASEdge::SASFace
friend class SASFace
Definition SASEdge.h:47
BALL::SASEdge::circle_
TCircle3< double > circle_
Definition SASEdge.h:208
BALL::SASEdge::setCircle
void setCircle(const TCircle3< double > &center)
BALL::SASEdge::angle_
TAngle< double > angle_
Definition SASEdge.h:211
BALL::SASEdge::TriangulatedSAS
friend class TriangulatedSAS
Definition SASEdge.h:49
BALL::SASEdge::getAngle
TAngle< double > getAngle() const
BALL::SASEdge::SolventAccessibleSurface
friend class SolventAccessibleSurface
Definition SASEdge.h:48
BALL::SASEdge::getCircle
TCircle3< double > getCircle() const
BALL::SASEdge::SASEdge
SASEdge()
BALL::SASFace
Definition SASFace.h:31
BALL::SASTriangulator
Definition triangulatedSAS.h:161
BALL::SASVertex
Definition SASVertex.h:29
BALL::SolventAccessibleSurface
Definition solventAccessibleSurface.h:39
BALL::TAngle
Definition angle.h:53
BALL::TCircle3
Definition circle3.h:46
BALL::TriangulatedSAS
Definition triangulatedSAS.h:63
BALL_CREATE
#define BALL_CREATE(name)
Definition create.h:62
graphEdge.h
BALL
Definition constants.h:13
BALL::Index
BALL_INDEX_TYPE Index
Definition COMMON/global.h:105
std
STL namespace.