Blender V2.61 - r43446
|
display list (or rather multi purpose list) stuff. More...
Go to the source code of this file.
Classes | |
struct | DispList |
Defines | |
#define | DL_POLY 0 |
#define | DL_SEGM 1 |
#define | DL_SURF 2 |
#define | DL_INDEX3 4 |
#define | DL_INDEX4 5 |
#define | DL_VERTCOL 6 |
#define | DL_VERTS 7 |
#define | DL_CYCL_U 1 |
#define | DL_CYCL_V 2 |
#define | DL_FRONT_CURVE 4 |
#define | DL_BACK_CURVE 8 |
Typedefs | |
typedef struct DispList | DispList |
Functions | |
void | copy_displist (struct ListBase *lbn, struct ListBase *lb) |
void | free_disp_elem (DispList *dl) |
DispList * | find_displist_create (struct ListBase *lb, int type) |
DispList * | find_displist (struct ListBase *lb, int type) |
void | addnormalsDispList (struct ListBase *lb) |
void | count_displist (struct ListBase *lb, int *totvert, int *totface) |
void | freedisplist (struct ListBase *lb) |
int | displist_has_faces (struct ListBase *lb) |
void | makeDispListSurf (struct Scene *scene, struct Object *ob, struct ListBase *dispbase, struct DerivedMesh **derivedFinal, int forRender, int forOrco) |
void | makeDispListCurveTypes (struct Scene *scene, struct Object *ob, int forOrco) |
void | makeDispListCurveTypes_forRender (struct Scene *scene, struct Object *ob, struct ListBase *dispbase, struct DerivedMesh **derivedFinal, int forOrco) |
void | makeDispListCurveTypes_forOrco (struct Scene *scene, struct Object *ob, struct ListBase *dispbase) |
void | makeDispListMBall (struct Scene *scene, struct Object *ob) |
void | makeDispListMBall_forRender (struct Scene *scene, struct Object *ob, struct ListBase *dispbase) |
int | surfindex_displist (DispList *dl, int a, int *b, int *p1, int *p2, int *p3, int *p4) |
void | filldisplist (struct ListBase *dispbase, struct ListBase *to, int flipnormal) |
float | calc_taper (struct Scene *scene, struct Object *taperobj, int cur, int tot) |
float * | makeOrcoDispList (struct Scene *scene, struct Object *ob, struct DerivedMesh *derivedFinal, int forRender) |
display list (or rather multi purpose list) stuff.
Definition in file BKE_displist.h.
#define DL_BACK_CURVE 8 |
Definition at line 53 of file BKE_displist.h.
Referenced by bevels_to_filledpoly(), do_makeDispListCurveTypes(), and makebevelcurve().
#define DL_CYCL_U 1 |
Definition at line 50 of file BKE_displist.h.
Referenced by bevels_to_filledpoly(), dl_surf_to_renderdata(), do_makeDispListCurveTypes(), drawDispListwire(), init_render_curve(), make_orco_curve(), makeDispListSurf(), nurbs_to_mdata_customdb(), and surfindex_displist().
#define DL_CYCL_V 2 |
Definition at line 51 of file BKE_displist.h.
Referenced by bevels_to_filledpoly(), dl_surf_to_renderdata(), do_makeDispListCurveTypes(), drawDispListwire(), init_render_curve(), make_orco_curve(), makeDispListSurf(), nurbs_to_mdata_customdb(), and surfindex_displist().
#define DL_FRONT_CURVE 4 |
Definition at line 52 of file BKE_displist.h.
Referenced by bevels_to_filledpoly(), do_makeDispListCurveTypes(), and makebevelcurve().
#define DL_INDEX3 4 |
Definition at line 44 of file BKE_displist.h.
Referenced by addnormalsDispList(), boundbox_displist(), count_displist(), displist_apply_allverts(), displist_get_allverts(), displist_has_faces(), draw_triangulated(), drawDispListsolid(), drawDispListwire(), filldisplist(), init_render_curve(), M_Geometry_tesselate_polygon(), make_orco_curve(), nurbs_to_mdata_customdb(), and tex_space_curve().
#define DL_INDEX4 5 |
Definition at line 45 of file BKE_displist.h.
Referenced by count_displist(), displist_has_faces(), drawDispListsolid(), drawDispListwire(), mball_to_mesh(), and metaball_polygonize().
#define DL_POLY 0 |
Definition at line 41 of file BKE_displist.h.
Referenced by bevels_to_filledpoly(), count_displist(), curve_to_displist(), do_makeDispListCurveTypes(), draw_triangulated(), drawDispListsolid(), drawDispListwire(), filldisplist(), M_Geometry_tesselate_polygon(), makebevelcurve(), makeDispListSurf(), and nurbs_to_mdata_customdb().
#define DL_SEGM 1 |
Definition at line 42 of file BKE_displist.h.
Referenced by count_displist(), curve_to_displist(), do_makeDispListCurveTypes(), drawDispListsolid(), drawDispListwire(), makebevelcurve(), makeDispListSurf(), and nurbs_to_mdata_customdb().
#define DL_SURF 2 |
Definition at line 43 of file BKE_displist.h.
Referenced by addnormalsDispList(), bevels_to_filledpoly(), count_displist(), curve_to_filledpoly(), displist_has_faces(), do_makeDispListCurveTypes(), drawDispListsolid(), drawDispListwire(), init_render_curve(), init_render_surf(), make_orco_curve(), makeDispListSurf(), and nurbs_to_mdata_customdb().
#define DL_VERTCOL 6 |
Definition at line 46 of file BKE_displist.h.
#define DL_VERTS 7 |
Definition at line 47 of file BKE_displist.h.
Referenced by contarget_get_lattice_mat(), drawlattice(), give_parvert(), init_latt_deform(), lattice_calc_modifiers(), and lattice_foreachScreenVert().
void addnormalsDispList | ( | struct ListBase * | lb | ) |
Definition at line 159 of file displist.c.
References add_v3_v3(), DL_INDEX3, DL_SURF, ListBase::first, MEM_callocN(), DispList::next, normal_quad_v3(), normalize_v3(), DispList::nors, DispList::nr, NULL, DispList::parts, surfindex_displist(), DispList::type, and DispList::verts.
Referenced by drawDispList().
Definition at line 619 of file displist.c.
References Object::disp, ListBase::first, makeDispListCurveTypes(), DispList::nr, NULL, OB_CURVE, Object::type, and DispList::verts.
Referenced by do_guides(), and do_makeDispListCurveTypes().
Definition at line 135 of file displist.c.
References DispList::bevelSplitFlag, BLI_addtail(), DispList::col1, DispList::col2, ListBase::first, freedisplist(), DispList::index, MEM_dupallocN(), DispList::next, DispList::nors, and DispList::verts.
Referenced by do_makeDispListCurveTypes(), and makeDispListSurf().
void count_displist | ( | struct ListBase * | lb, |
int * | totvert, | ||
int * | totface | ||
) |
Definition at line 226 of file displist.c.
References DL_INDEX3, DL_INDEX4, DL_POLY, DL_SEGM, DL_SURF, ListBase::first, DispList::next, DispList::nr, DispList::parts, and DispList::type.
Referenced by stats_object().
int displist_has_faces | ( | struct ListBase * | lb | ) |
Definition at line 125 of file displist.c.
References DL_INDEX3, DL_INDEX4, DL_SURF, ELEM3, ListBase::first, DispList::next, and DispList::type.
Referenced by drawDispList(), and drawObjectSelect().
Definition at line 418 of file displist.c.
References BLI_addfilledge(), BLI_addfillvert(), BLI_addhead(), BLI_edgefill(), BLI_end_edgefill(), EditVert::co, DispList::col, copy_v3_v3(), DL_INDEX3, DL_POLY, fillfacebase, fillvertbase, ListBase::first, DispList::index, EditVert::l, MEM_callocN(), MEM_mallocN(), EditFace::next, EditVert::next, DispList::nr, NULL, DispList::parts, SWAP, EditVert::tmp, DispList::type, EditFace::v1, EditFace::v2, EditFace::v3, and DispList::verts.
Referenced by bevels_to_filledpoly(), curve_to_filledpoly(), draw_triangulated(), and M_Geometry_tesselate_polygon().
Definition at line 112 of file displist.c.
References ListBase::first, DispList::next, NULL, and DispList::type.
Referenced by contarget_get_lattice_mat(), drawlattice(), give_parvert(), init_latt_deform(), and lattice_foreachScreenVert().
Definition at line 95 of file displist.c.
References BLI_addtail(), ListBase::first, MEM_callocN(), DispList::next, and DispList::type.
void free_disp_elem | ( | DispList * | dl | ) |
Definition at line 70 of file displist.c.
References DispList::bevelSplitFlag, DispList::col1, DispList::col2, DispList::index, MEM_freeN(), DispList::nors, and DispList::verts.
Referenced by freedisplist().
void freedisplist | ( | struct ListBase * | lb | ) |
Definition at line 83 of file displist.c.
References BLI_remlink(), ListBase::first, and free_disp_elem().
Referenced by bevels_to_filledpoly(), clear_mesh_caches(), convert_exec(), copy_displist(), create_orco_dm(), do_makeDispListCurveTypes(), draw_triangulated(), free_curve(), free_mball(), init_render_curve(), init_render_mball(), init_render_surf(), lattice_calc_modifiers(), M_Geometry_tesselate_polygon(), make_orco_curve(), makebevelcurve(), makeDispListCurveTypes(), makeDispListMBall(), object_free_display(), object_remove_material_slot(), and resizelattice().
Definition at line 1361 of file displist.c.
References Object::bb, boundbox_displist(), Object::data, Object::derivedFinal, Curve::disp, Object::disp, DM_set_object_boundbox(), do_makeDispListCurveTypes(), ELEM3, freedisplist(), MEM_freeN(), NULL, OB_CURVE, OB_FONT, OB_SURF, and Object::type.
Referenced by arrayModifier_doArray(), BKE_text_to_curve(), calc_curve_deform(), calc_taper(), clampto_get_tarmat(), convert_exec(), curvetomesh(), draw_object(), followpath_get_tarmat(), makebevelcurve(), meshdeform_bind_exec(), ob_parcurve(), object_handle_update(), parent_set_exec(), precalculate_effector(), pycon_get_tarmat(), splineik_get_tarmat(), and splineik_init_tree_from_pchan().
void makeDispListCurveTypes_forOrco | ( | struct Scene * | scene, |
struct Object * | ob, | ||
struct ListBase * | dispbase | ||
) |
Definition at line 1399 of file displist.c.
References do_makeDispListCurveTypes(), and NULL.
Referenced by create_orco_dm(), and make_orco_curve().
void makeDispListCurveTypes_forRender | ( | struct Scene * | scene, |
struct Object * | ob, | ||
struct ListBase * | dispbase, | ||
struct DerivedMesh ** | derivedFinal, | ||
int | forOrco | ||
) |
Definition at line 1393 of file displist.c.
References do_makeDispListCurveTypes().
Referenced by init_render_curve(), and makebevelcurve().
Definition at line 660 of file displist.c.
References boundbox_displist(), Object::disp, find_basis_mball(), freedisplist(), G, metaball_polygonize(), OB_MBALL, object_deform_mball(), tex_space_mball(), and Object::type.
Referenced by convert_exec(), draw_bounding_volume(), drawDispList(), meshdeform_bind_exec(), and object_handle_update().
void makeDispListMBall_forRender | ( | struct Scene * | scene, |
struct Object * | ob, | ||
struct ListBase * | dispbase | ||
) |
Definition at line 682 of file displist.c.
References metaball_polygonize(), object_deform_mball(), and tex_space_mball().
Referenced by init_render_mball().
void makeDispListSurf | ( | struct Scene * | scene, |
struct Object * | ob, | ||
struct ListBase * | dispbase, | ||
struct DerivedMesh ** | derivedFinal, | ||
int | forRender, | ||
int | forOrco | ||
) |
Definition at line 1085 of file displist.c.
References BLI_addtail(), DispList::charidx, Nurb::charidx, DispList::col, copy_displist(), CU_2D, CU_NURB_CYCLIC, curve_calc_modifiers_post(), curve_calc_modifiers_pre(), curve_editnurbs(), Object::data, data, Curve::disp, displist_surf_indices(), DL_CYCL_U, DL_CYCL_V, DL_POLY, DL_SEGM, DL_SURF, Curve::editnurb, ListBase::first, DispList::flag, Nurb::flag, Nurb::flagu, Nurb::flagv, Nurb::hide, len(), makeNurbcurve(), makeNurbfaces(), Nurb::mat_nr, MEM_callocN(), Nurb::next, DispList::nr, NULL, Curve::nurb, DispList::parts, Nurb::pntsu, Nurb::pntsv, Nurb::resolu, Curve::resolu_ren, Nurb::resolv, Curve::resolv_ren, DispList::rt, SEGMENTSU, tex_space_curve(), DispList::type, and DispList::verts.
Referenced by do_makeDispListCurveTypes(), and init_render_surf().
float* makeOrcoDispList | ( | struct Scene * | scene, |
struct Object * | ob, | ||
struct DerivedMesh * | derivedFinal, | ||
int | forRender | ||
) |
Definition at line 1405 of file displist.c.
References CD_ORCO, curve_calc_orcodm(), Object::derivedFinal, DerivedMesh::getVertDataArray, MEM_dupallocN(), and NULL.
Referenced by init_render_curve(), and init_render_surf().
int surfindex_displist | ( | DispList * | dl, |
int | a, | ||
int * | b, | ||
int * | p1, | ||
int * | p2, | ||
int * | p3, | ||
int * | p4 | ||
) |
Definition at line 252 of file displist.c.
References DL_CYCL_U, DL_CYCL_V, DispList::flag, DispList::nr, and DispList::parts.
Referenced by addnormalsDispList(), displist_surf_indices(), and init_render_curve().