Cleanup: Move `object_get_derived_final` from BKE_shrinkwrap to BKE_DerivedMesh

Note this func needs some love, but this will be for later (should never have been in shrinkwrap code!).
This commit is contained in:
Bastien Montagne 2014-08-01 15:42:17 +02:00
parent 59f4ba854b
commit c11777b211
4 changed files with 25 additions and 29 deletions

View File

@ -691,6 +691,9 @@ DerivedMesh *editbmesh_get_derived_cage(struct Scene *scene, struct Object *,
DerivedMesh *editbmesh_get_derived_cage_and_final(struct Scene *scene, struct Object *,
struct BMEditMesh *em, DerivedMesh **r_final,
CustomDataMask dataMask);
DerivedMesh *object_get_derived_final(struct Object *ob, const bool for_render);
float (*editbmesh_get_vertex_cos(struct BMEditMesh *em, int *r_numVerts))[3];
bool editbmesh_modifier_is_enabled(struct Scene *scene, struct ModifierData *md, DerivedMesh *dm);
void makeDerivedMesh(struct Scene *scene, struct Object *ob, struct BMEditMesh *em,

View File

@ -31,15 +31,6 @@
* \ingroup bke
*/
/* mesh util */
//TODO: move this somewhere else
#include "BKE_customdata.h"
struct DerivedMesh;
struct Object;
struct DerivedMesh *object_get_derived_final(struct Object *ob, bool for_render);
/* SpaceTransform stuff */
/*
* TODO: move this somewhere else

View File

@ -2500,6 +2500,28 @@ DerivedMesh *editbmesh_get_derived_base(Object *obedit, BMEditMesh *em)
return getEditDerivedBMesh(em, obedit, NULL);
}
/***/
/* get derived mesh from an object, using editbmesh if available. */
DerivedMesh *object_get_derived_final(Object *ob, const bool for_render)
{
Mesh *me = ob->data;
BMEditMesh *em = me->edit_btmesh;
if (for_render) {
/* TODO(sergey): use proper derived render here in the future. */
return ob->derivedFinal;
}
if (em) {
DerivedMesh *dm = em->derivedFinal;
return dm;
}
return ob->derivedFinal;
}
/* UNUSED */
#if 0

View File

@ -66,26 +66,6 @@
/* Util macros */
#define OUT_OF_MEMORY() ((void)printf("Shrinkwrap: Out of memory\n"))
/* get derived mesh */
/* TODO is anyfunction that does this? returning the derivedFinal without we caring if its in edit mode or not? */
DerivedMesh *object_get_derived_final(Object *ob, bool for_render)
{
Mesh *me = ob->data;
BMEditMesh *em = me->edit_btmesh;
if (for_render) {
/* TODO(sergey): use proper derived render here in the future. */
return ob->derivedFinal;
}
if (em) {
DerivedMesh *dm = em->derivedFinal;
return dm;
}
return ob->derivedFinal;
}
/* Space transform */
void space_transform_from_matrixs(SpaceTransform *data, float local[4][4], float target[4][4])
{