Exemple #1
0
void AABB::Draw(const VBO& vbos)
{
	//Draw axis.
	/*glColor3d(0.8, 0.8, 0.2);
	glBegin(GL_LINES);

	glVertex3d(x_min_, y_max_, z_min_);	glVertex3d(x_max_, y_max_, z_min_);
	glVertex3d(x_max_, y_max_, z_min_); glVertex3d(x_max_, y_max_, z_max_);
	glVertex3d(x_max_, y_max_, z_max_); glVertex3d(x_min_, y_max_, z_max_);
	glVertex3d(x_min_, y_max_, z_max_); glVertex3d(x_min_, y_max_, z_min_);

	glVertex3d(x_min_, y_min_, z_min_);	glVertex3d(x_max_, y_min_, z_min_);
	glVertex3d(x_max_, y_min_, z_min_); glVertex3d(x_max_, y_min_, z_max_);
	glVertex3d(x_max_, y_min_, z_max_); glVertex3d(x_min_, y_min_, z_max_);
	glVertex3d(x_min_, y_min_, z_max_); glVertex3d(x_min_, y_min_, z_min_);
	
	glVertex3d(x_min_, y_max_, z_min_); glVertex3d(x_min_, y_min_, z_min_);
	glVertex3d(x_max_, y_max_, z_min_); glVertex3d(x_max_, y_min_, z_min_);
	glVertex3d(x_max_, y_max_, z_max_); glVertex3d(x_max_, y_min_, z_max_);
	glVertex3d(x_min_, y_max_, z_max_); glVertex3d(x_min_, y_min_, z_max_);
	
	glEnd();*/

	assert(isnt_empty_);

	EigenVector3 vec_center((x_max_-x_min_)/2.0, (y_max_ - y_min_) / 2.0, (z_max_ - z_min_) / 2.0);
	aabb_body_.move_to(Eigen2GLM(vec_center));
	aabb_body_.change_color(glm::vec3(0.5, 0.2, 0.3));
	aabb_body_.Draw(vbos);
}
void AttachmentConstraint::Draw(const VBO& vbos)
{
    m_attachment_constraint_body.move_to(Eigen2GLM(m_fixd_point));
    if (m_selected)
        m_attachment_constraint_body.change_color(glm::vec3(0.8, 0.8, 0.2));
    else
        m_attachment_constraint_body.change_color(glm::vec3(0.8, 0.2, 0.2));
        
    m_attachment_constraint_body.Draw(vbos);
}