cee::vis::MarkupPartPoints

class MarkupPartPoints : public MarkupPart

A MarkupModel part for drawing points.

The part can contain any number of points, but all points will share the same settings for

  • color

  • point size (in pixels)

  • always visible. True if the points should always be visible and not use the z buffer.

  • eye lift factor. A factor to move the points towards the camera. This is used to control item drawn in the same plane.

See also

MarkupModel

Public Functions

MarkupPartPoints()

Constructs an empty part.

MarkupPartPoints(const Color3f &color, float pointSize, bool alwaysVisible, float eyeLiftFactor)

Constructs a part with the given settings.

  • color: The point color for all point in the part

  • pointSize: The point size in pixels for all points in the part

  • alwaysVisible: If true, the points will always be visible and not use the z buffer

  • eyeLiftFactor: A factor to move the points towards the camera. This is used to control item drawn in the same plane.

virtual PartType type() const

Returns the type of the part. Always MarkupPart::POINTS.

virtual BoundingBox boundingBox() const

Returns the current bounding box of the part.

virtual void setPriority(int priority)

Sets render priority of the part.

The render priority determines the order in which parts get rendered. Parts with lower priorities get rendered first. The default priority is 12.

virtual int priority() const

Returns the render priority of the part.

virtual const Mat4d &transformation() const

Returns the current transformation matrix for the part.

virtual void setTransformation(const Mat4d &matrix)

Sets the transformation matrix to use for the part.

const Color3f &color() const

Returns the current point color.

void setColor(const Color3f &color)

Sets the point color.

float pointSize() const

Returns the current point size.

void setPointSize(float pointSize)

Sets the current point size.

bool alwaysVisible() const

Returns true if the points are always visible and does not use the z buffer.

void setAlwaysVisible(bool showAlways)

Sets if the points should be always visible and not use the z buffer.

float eyeLiftFactor() const

Returns the eye lift factor of the lines.

See also

setEyeLiftFactor

void setEyeLiftFactor(float factor)

Sets the eye lift factor for the lines.

The eye lift factor specifies if the points should be moved towards the camera (or away from the camera if the factor is negative).

This is useful for controlling the ordering of items that are defined in the same plane.

void add(const Vec3d &vertex)

Adds a point to the part.

void add(const std::vector<Vec3d> &vertices)

Adds a number of points to the part.

size_t count() const

Returns the number of points in the part.

void removeAll()

Removes all points from the part.

const std::vector<Vec3d> &vertices() const

Returns the vector of the point vertices in the part.

Public Static Functions

static PtrRef<MarkupPartPoints> create(const std::vector<Vec3d> &vertices, const Color3f &color, float pointSize = 1.0f, bool alwaysVisible = false, float eyeLiftFactor = 0.0f)

Returns a newly created part with the given points and settings.

The returned part will have vertices.size() points.

  • color: The line color for all lines in the part

  • pointSize: The point size in pixels for all lines in the part

  • alwaysVisible: If true, the lines will always be visible and not use the z buffer.

  • eyeLiftFactor: A factor to move the lines towards the camera. This is used to control item drawn in the same plane.

static PtrRef<MarkupPartPoints> create(const Vec3d &vertex, const Color3f &color, float pointSize = 1.0f, bool alwaysVisible = false, float eyeLiftFactor = 0.0f)

Returns a newly created part with the given point and settings.

The returned part will have one point.

  • color: The line color for all lines in the part

  • pointSize: The point size in pixels for all lines in the part

  • alwaysVisible: If true, the lines will always be visible and not use the z buffer.

  • eyeLiftFactor: A factor to move the lines towards the camera. This is used to control item drawn in the same plane.