added Normal lines mode for perspective aligned lines
This commit is contained in:
@@ -71,7 +71,7 @@ public:
|
||||
glm::vec3 m_cam_pos;
|
||||
float m_cam_fov = 85;
|
||||
|
||||
enum class kCanvasMode { Draw, Erase, Line, Camera, COUNT };
|
||||
enum class kCanvasMode { Draw, Erase, Line, Camera, Normal, COUNT };
|
||||
kCanvasMode m_state{ kCanvasMode::Draw };
|
||||
static std::vector<CanvasMode*> modes[];
|
||||
std::vector<CanvasMode*>* m_mode;
|
||||
@@ -106,6 +106,15 @@ public:
|
||||
ui::Image thumbnail_generate(int w, int h);
|
||||
ui::Image thumbnail_read(std::string data_path);
|
||||
void preview_generate();
|
||||
void draw_objects(std::function<void(const glm::mat4& camera, const glm::mat4& proj)>);
|
||||
bool ray_intersect(glm::vec3 ray_origin, glm::vec3 ray_dir, glm::vec3 plane_origin,
|
||||
glm::vec3 plane_normal, glm::vec3 plane_tangent, glm::vec3 &out_hit);
|
||||
void point_unproject(glm::vec2 loc, glm::vec4 vp, glm::mat4 camera, glm::mat4 proj,
|
||||
glm::vec3 &out_origin, glm::vec3 &out_dir);
|
||||
bool point_trace(glm::vec2 loc, glm::vec3& ray_origin, glm::vec3& ray_dir,
|
||||
glm::vec3& hit_pos, glm::vec3& hit_normal, int& out_plane_id);
|
||||
bool point_trace_plane(glm::vec2 loc, glm::vec3& ray_origin, glm::vec3& ray_dir,
|
||||
glm::vec3& hit_pos, glm::vec3& hit_normal, int plane_id);
|
||||
};
|
||||
|
||||
class ActionStroke : public Action
|
||||
|
||||
Reference in New Issue
Block a user