30 #include "../geometry/BBox.h"
31 #include "../geometry/Geom.h"
33 #include "../system/BaseObject.h"
34 #include "../system/Id.h"
35 #include "../system/Precision.h"
54 _Name = iBrother._Name;
55 _LibraryPath = iBrother._LibraryPath;
56 if (0 == iBrother._FrsMaterial) {
60 _FrsMaterial =
new FrsMaterial(*(iBrother._FrsMaterial));
63 _BBox = iBrother.
bbox();
71 std::swap(_LibraryPath, ioOther._LibraryPath);
72 std::swap(_FrsMaterial, ioOther._FrsMaterial);
77 if (&iBrother !=
this) {
79 _Name = iBrother._Name;
80 _LibraryPath = iBrother._LibraryPath;
81 if (0 == iBrother._FrsMaterial) {
85 if (_FrsMaterial == 0) {
86 _FrsMaterial =
new FrsMaterial(*iBrother._FrsMaterial);
89 (*_FrsMaterial) = (*(iBrother._FrsMaterial));
91 _BBox = iBrother.
bbox();
99 if (0 != _FrsMaterial) {
111 v.visitFrsMaterial(*_FrsMaterial);
Class used to handle materials.
Class to visit (without doing anything) a scene graph structure.
ATTR_WARN_UNUSED_RESULT const BMVert * v
void setLibraryPath(const string &path)
virtual const BBox< Vec3f > & bbox() const
virtual void accept(SceneVisitor &v)
void setFrsMaterial(const FrsMaterial &iMaterial)
virtual void setBBox(const BBox< Vec3f > &iBox)
const string & getLibraryPath() const
virtual void ComputeBBox()=0
const string & getName() const
const FrsMaterial * frs_material() const
void setName(const string &name)
Rep & operator=(const Rep &iBrother)