Changeset View
Changeset View
Standalone View
Standalone View
source/blender/blenkernel/intern/lattice.c
| Context not available. | |||||
| lt = ob->data; | lt = ob->data; | ||||
| INIT_MINMAX(min, max); | INIT_MINMAX(min, max); | ||||
| BKE_lattice_minmax(lt, min, max); | BKE_lattice_minmax_dl(ob, lt, min, max); | ||||
| BKE_boundbox_init_from_minmax(bb, min, max); | BKE_boundbox_init_from_minmax(bb, min, max); | ||||
| } | } | ||||
| Context not available. | |||||
| return ob->bb; | return ob->bb; | ||||
| } | } | ||||
| void BKE_lattice_minmax_dl(Object *ob, Lattice *lt, float min[3], float max[3]) | |||||
| { | |||||
| DispList *dl = ob->curve_cache ? BKE_displist_find(&ob->curve_cache->disp, DL_VERTS) : NULL; | |||||
| if (!dl) { | |||||
| BKE_lattice_minmax(lt, min, max); | |||||
| } | |||||
| else { | |||||
| int i, numVerts; | |||||
| if (lt->editlatt) lt = lt->editlatt->latt; | |||||
| numVerts = lt->pntsu * lt->pntsv * lt->pntsw; | |||||
| for (i = 0; i < numVerts; i++) | |||||
| minmax_v3v3_v3(min, max, &dl->verts[i * 3]); | |||||
| } | |||||
| } | |||||
| void BKE_lattice_minmax(Lattice *lt, float min[3], float max[3]) | void BKE_lattice_minmax(Lattice *lt, float min[3], float max[3]) | ||||
| { | { | ||||
| int i, numVerts; | int i, numVerts; | ||||
| Context not available. | |||||