29 lines
1012 B

/*
* @File Created: 2022-11-25, 14:55:48
* @Last Modified: 2022-11-26, 18:50:49
* @Author: forty-twoo
* @Copyright (c) 2022, Caiyue Li(li_caiyue@zju.edu.cn), All rights reserved.
*/
#ifndef SHOW_LIBIGL_H_
#define SHOW_LIBIGL_H_
#include "bvh.hpp"
#include <igl/opengl/glfw/Viewer.h>
extern igl::opengl::glfw::Viewer viewer;
#define RED Eigen ::RowVector3d(1, 0, 0)
#define GREEN Eigen ::RowVector3d(0, 1, 0)
#define BLUE Eigen ::RowVector3d(0, 0, 1)
#define WHITE Eigen ::RowVector3d(1, 1, 1)
#define BLACK Eigen ::RowVector3d(0, 0, 0)
#define YELLOW Eigen ::RowVector3d(1, 1, 0)
#define PINK Eigen ::RowVector3d(0.8, 0.2, 0.6)
void ShowCurve_Igl(tinynurbs::RationalCurve<double>& curve, double sampleNum, Eigen::RowVector3d color);
void ShowSurface_Igl(tinynurbs::RationalSurface<double>& surface, double sampleNumU, double sampleNumV, Eigen::RowVector3d color);
void ShowBVHNode_Igl(BVH_AABB_NodePtr bvhNode, Eigen::RowVector3d color);
void ShowAABB_Igl(AABB bound, Eigen::RowVector3d color);
#endif