27#ifndef EASY3D_RENDERER_DRAWABLE_LINES_H
28#define EASY3D_RENDERER_DRAWABLE_LINES_H
30#include <easy3d/renderer/drawable.h>
89 void draw(
const Camera* camera)
const override;
93 void _draw_plain_lines(
const Camera* camera)
const;
94 void _draw_cylinders(
const Camera* camera)
const;
95 void _draw_cones(
const Camera* camera)
const;
98 void _draw_plain_lines_with_texture(
const Camera* camera)
const;
99 void _draw_cylinders_with_texture(
const Camera* camera)
const;
100 void _draw_cones_with_texture(
const Camera* camera)
const;
A perspective or orthographic camera.
Definition camera.h:113
Type
The type of the drawable.
Definition drawable.h:63
@ DT_LINES
Lines drawable (GL_LINES).
Definition drawable.h:65
const std::string & name() const
Returns the name of the drawable.
Definition drawable.h:92
Model * model()
Returns the model to which the drawable is attached.
Definition drawable.h:103
Drawable(const std::string &name="unknown", Model *model=nullptr)
Constructor that initializes the drawable with a name and an optional model.
Definition drawable.cpp:46
float line_width() const
Returns the width of the lines.
Definition drawable_lines.h:78
LinesDrawable(const std::string &name="", Model *model=nullptr)
Constructor that initializes the drawable with a name and an optional model.
Definition drawable_lines.cpp:39
ImposterType
The type of the line imposter.
Definition drawable_lines.h:58
@ PLAIN
Plain mode.
Definition drawable_lines.h:59
@ CYLINDER
The lines will be drawn as cylinders.
Definition drawable_lines.h:60
@ CONE
The lines will be drawn as cons.
Definition drawable_lines.h:61
ImposterType impostor_type() const
Returns the type of the line imposter.
Definition drawable_lines.h:67
void draw(const Camera *camera) const override
Draws the drawable.
Definition drawable_lines.cpp:48
Type type() const override
Returns the type of the drawable.
Definition drawable_lines.h:53
void set_impostor_type(ImposterType t)
Sets the type of the line imposter.
Definition drawable_lines.h:72
void set_line_width(float w)
Sets the width of the lines.
Definition drawable_lines.h:83
The base class of renderable 3D models.
Definition model.h:50
Definition collider.cpp:182