Avogadro::Rendering::CurveGeometry#

class CurveGeometry : public Drawable#

Subclassed by BSplineGeometry, BezierGeometry

Public Functions

CurveGeometry()#
CurveGeometry(bool flat)#
~CurveGeometry() override#
virtual void accept(Visitor &visitor) override#

Accept a visit from our friendly visitor.

virtual void render(const Camera &camera) override#

Render the cylinder geometry.

Parameters:

camera – The current camera to be used for rendering.

void addPoint(const Vector3f &pos, const Vector3ub &color, float radius, size_t group, size_t id)#
inline const std::vector<Line*> &lines() const#

Public Static Attributes

static const size_t SKIPPED#

Protected Functions

virtual void update(int index)#
virtual Vector3f computeCurvePoint(float t, const std::list<Point*> &points) const = 0#
virtual std::vector<ColorNormalVertex> computeCirclePoints(const Eigen::Affine3f &a, const Eigen::Affine3f &b, bool flat) const#
virtual float computeScale(size_t index, float t, float scale) const#
void processShaderError(bool error)#
virtual Core::Array<Identifier> areaHits(const Frustrum &f) const override#

Return the primitives within the supplied area.

Parameters:

f – The frustrum defining the area highlighted.

Returns:

Collection of primitives in the area.

Protected Attributes

std::vector<Line*> m_lines#
std::map<size_t, size_t> m_indexMap#
ShaderInfo m_shaderInfo#
bool m_dirty#
bool m_canBeFlat#