Go to the documentation of this file.
30 namespace Core {
class CoreDocument; }
58 struct Line {uint32_t I1; uint32_t
I2;};
59 struct Facet {uint32_t I1; uint32_t I2; uint32_t
I3;};
83 std::vector<Base::Vector3d> &Points,
84 std::vector<Line> &lines)
const;
88 std::vector<Base::Vector3d> &Points,
89 std::vector<Base::Vector3d> &PointNormals,
90 std::vector<Facet> &faces)
const;
136 virtual void getPoints(std::vector<Base::Vector3d> &Points,
137 std::vector<Base::Vector3d> &Normals,
138 float Accuracy, uint16_t flags=0)
const;
140 virtual void getLines(std::vector<Base::Vector3d> &Points,std::vector<Line> &lines,
141 float Accuracy, uint16_t flags=0)
const;
143 virtual void getFaces(std::vector<Base::Vector3d> &Points,std::vector<Facet> &faces,
144 float Accuracy, uint16_t flags=0)
const;
154 static const std::string &elementMapPrefix();
183 return isMappedElement(findElementName(subname));
std::vector< Base::Vector3d > points
Definition: ComplexGeoData.h:61
BaseClass class and root of the type system.
Definition: Base.h:78
std::vector< Facet > facets
Definition: ComplexGeoData.h:62
void applyTransform(const Base::Matrix4D &rclTrf)
virtual bool getCenterOfGravity(Base::Vector3d ¢er) const
virtual void getFacesFromSubelement(const Segment *, std::vector< Base::Vector3d > &Points, std::vector< Base::Vector3d > &PointNormals, std::vector< Facet > &faces) const
static const char * findElementName(const char *subname)
Find the start of an element name in a subname.
_Precision y
Definition: Vector3D.h:86
static const std::string & indexPostfix()
Special postfix to mark the index of an array element.
Definition: Placement.h:56
_Precision z
Definition: Vector3D.h:87
Persistence class and root of the type system.
Definition: Persistence.h:22
Definition: ComplexGeoData.h:35
virtual void getLines(std::vector< Base::Vector3d > &Points, std::vector< Line > &lines, float Accuracy, uint16_t flags=0) const
Definition: ComplexGeoData.h:58
uint32_t I3
Definition: ComplexGeoData.h:59
virtual Base::Vector3d getPointFromLineIntersection(const Base::Vector3f &base, const Base::Vector3f &dir) const
virtual unsigned long countSubElements(const char *Type) const =0
Definition: ComplexGeoData.h:59
_Precision x
Definition: Vector3D.h:85
virtual Segment * getSubElement(const char *Type, unsigned long) const =0
get the subelement by type and number
void setPlacement(const Base::Placement &rclPlacement)
Definition: BoundBox.h:56
static const char * isMappedElement(const char *name)
long Tag
Definition: ComplexGeoData.h:203
static const std::string & tagPostfix()
Special postfix to mark the following tag.
Vector3< double > Vector3d
Definition: Vector3D.h:246
virtual void setTransform(const Base::Matrix4D &rclTrf)=0
static std::string oldElementName(const char *name)
Strip out the mapped element name if there is one.
virtual void getLinesFromSubelement(const Segment *, std::vector< Base::Vector3d > &Points, std::vector< Line > &lines) const
virtual void getPoints(std::vector< Base::Vector3d > &Points, std::vector< Base::Vector3d > &Normals, float Accuracy, uint16_t flags=0) const
static std::string newElementName(const char *name)
Strip out the trailing element name if there is mapped element name precedes it.
Definition: ComplexGeoData.h:54
Base::Placement getPlacement() const
void applyRotation(const Base::Rotation &)
Definition: Rotation.h:53
Base::Vector3f transformToInside(const Base::Vector3d &vec) const
from local to inside
Definition: ComplexGeoData.h:195
Definition: ComplexGeoData.h:60
static std::string noElementName(const char *name)
Strip out the old and new element name if there is one.
ComplexGeoData(void)
Constructor.
static const char * hasMappedElementName(const char *subname)
Definition: ComplexGeoData.h:182
void applyTranslation(const Base::Vector3d &)
virtual void getFaces(std::vector< Base::Vector3d > &Points, std::vector< Facet > &faces, float Accuracy, uint16_t flags=0) const
virtual ~Segment()
Definition: ComplexGeoData.h:46
Base::Vector3d transformToOutside(const Base::Vector3f &vec) const
from local to outside
Definition: ComplexGeoData.h:190
#define TYPESYSTEM_HEADER()
define for subclassing Base::BaseClass
Definition: Base.h:12
virtual Base::Matrix4D getTransform(void) const =0
Vector3< float > Vector3f
Definition: Vector3D.h:245
void inverse(void)
Matrix is expected to have a 3x3 rotation submatrix.
uint32_t I2
Definition: ComplexGeoData.h:58
Definition: ComplexGeoData.h:42
virtual std::string getName() const =0
static bool hasMissingElement(const char *subname)
Check if a subname contains missing element.
virtual Segment * getSubElementByName(const char *Name) const
get subelement by combined name
virtual std::vector< const char * > getElementTypes(void) const =0
static const std::string & missingPrefix()
Special prefix to mark a missing element.