Пример #1
0
void HeeksObj::OnRemove()
{
#ifdef MULTIPLE_OWNERS
	if(m_owners.size() == 0)KillGLLists();
#else
	if(m_owner == NULL)KillGLLists();
#endif
}
Пример #2
0
void CShape::ModifyByMatrix(const double* m){
	gp_Trsf mat = make_matrix(m);

	if(IsMatrixDifferentialScale(mat))
	{
        gp_GTrsf gm(mat);
		BRepBuilderAPI_GTransform t(m_shape, gm);
        m_shape = t.Shape();
	}
	else
	{
		MakeTransformedShape(mat);
	}
	delete_faces_and_edges();
	KillGLLists();
	create_faces_and_edges();
}
Пример #3
0
const CShape& CShape::operator=(const CShape& s)
{
    HeeksObj::operator = (s);

	// don't copy id
	delete_faces_and_edges();
	m_box = s.m_box;
	m_shape = s.m_shape;
	m_title = s.m_title;
	m_color = s.m_color;
	m_creation_time = s.m_creation_time;
	m_opacity = s.m_opacity;
	m_volume_found = s.m_volume_found;
	if(m_volume_found)m_volume = s.m_volume;

	KillGLLists();

	return *this;
}
Пример #4
0
CShape::~CShape()
{
	KillGLLists();
	delete_faces_and_edges();
}
Пример #5
0
CMeshChild::~CMeshChild()
{
	KillGLLists();
}