22 : m_triangulator(new detail::GeometryTriangulator(
obj.get())), m_csgObj(
obj.get()) {}
25 : m_triangulator(new detail::GeometryTriangulator(
obj)), m_csgObj(
obj) {}
94 static std::vector<double> empty;
101 static std::vector<uint32_t> empty;
108 std::vector<uint32_t> &&faces) {
110 m_triangulator->setGeometryCache(nPts, nFaces, std::move(pts), std::move(faces));
double obj
the value of the quadratic function
Constructive Solid Geometry object.
void updateGeometryHandler()
Updates the geometry handler if needed.
Handles rendering of all object Geometry.
void setGeometryCache(size_t nPts, size_t nFaces, std::vector< double > &&pts, std::vector< uint32_t > &&faces)
Sets the geometry cache using the triangulation information provided.
IObjComponent * m_objComp
ObjComponent that uses this geometry handler.
GeometryHandler & operator=(const MeshObject &obj)
void setShapeInfo(detail::ShapeInfo &&shapeInfo)
CSGObject * m_csgObj
Object that uses this geometry handler.
GeometryHandler(IObjComponent *comp)
Constructor.
void render() const
Render Object or ObjComponent.
const std::vector< double > & getTriangleVertices() const
Extract the vertices of the triangles.
void GetObjectGeom(detail::ShapeInfo::GeometryShape &type, std::vector< Kernel::V3D > &vector, double &innerRadius, double &radius, double &height) const
return the actual type and points of one of the "standard" objects, cuboid/cone/cyl/sphere
size_t numberOfPoints() const
get the number of points or vertices
std::unique_ptr< detail::GeometryTriangulator > m_triangulator
const std::vector< uint32_t > & getTriangleFaces() const
Extract the Faces of the triangles.
size_t numberOfTriangles() const
get the number of triangles
bool canTriangulate() const
std::shared_ptr< GeometryHandler > clone() const
void initialize() const
Prepare/Initialize Object/ObjComponent to be rendered.
~GeometryHandler()
Destructor.
std::shared_ptr< detail::ShapeInfo > m_shapeInfo
const detail::ShapeInfo & shapeInfo() const
Object Component class, this class brings together the physical attributes of the component to the po...
GeometryTriangulator : Triangulates object surfaces.
MANTID_GEOMETRY_DLL void renderIObjComponent(const IObjComponent &objComp)
Render IObjComponent.
MANTID_GEOMETRY_DLL void renderTriangulated(detail::GeometryTriangulator &triangulator)
Render Traingulated Surface.
MANTID_GEOMETRY_DLL void renderShape(const detail::ShapeInfo &shapeInfo)
Renders a sphere, cuboid, hexahedron, cone or cylinder.
std::unique_ptr< Geometry::RenderingMesh > makeRenderingMesh(const Adaptee &adaptee)