~ubuntu-branches/ubuntu/gutsy/blender/gutsy-security

« back to all changes in this revision

Viewing changes to source/blender/blenlib/BLI_editVert.h

  • Committer: Bazaar Package Importer
  • Author(s): Florian Ernst
  • Date: 2005-11-06 12:40:03 UTC
  • mfrom: (1.1.2 upstream)
  • Revision ID: james.westby@ubuntu.com-20051106124003-3pgs7tcg5rox96xg
Tags: 2.37a-1.1
* Non-maintainer upload.
* Split out parts of 01_SConstruct_debian.dpatch again: root_build_dir
  really needs to get adjusted before the clean target runs - closes: #333958,
  see #288882 for reference

Show diffs side-by-side

added added

removed removed

Lines of Context:
4
4
 * Some editing types needed in the lib (unfortunately) for
5
5
 * scanfill.c
6
6
 *
7
 
 * $Id: BLI_editVert.h,v 1.9 2004/03/28 08:46:34 zuster Exp $
 
7
 * $Id: BLI_editVert.h,v 1.18 2005/04/04 04:50:41 zuster Exp $
8
8
 *
9
9
 * ***** BEGIN GPL/BL DUAL LICENSE BLOCK *****
10
10
 *
38
38
#ifndef BLI_EDITVERT_H
39
39
#define BLI_EDITVERT_H
40
40
 
 
41
struct DerivedMesh;
 
42
 
 
43
/* note; changing this also might affect the undo copy in editmesh.c */
41
44
typedef struct EditVert
42
45
{
43
46
        struct EditVert *next, *prev, *vn;
44
47
        float no[3];
45
48
        float co[3];
46
49
        short xs, ys;
47
 
        unsigned char f, h, f1, hash;
48
 
        int     totweight;                              /* __NLA */
 
50
        unsigned char f, h, f1, f2;
 
51
        short fast;     /* only 0 or 1, for editmesh_fastmalloc */
 
52
        short   totweight;                              /* __NLA */
 
53
        int hash;
49
54
        struct MDeformWeight *dw;       /* __NLA */
50
 
        int keyindex; /* lets hold on to this so that maybe we can have a hope
51
 
                                   * of restoring any key information if the number/order
52
 
                                   * of verts change.
53
 
                                   */
54
 
 
 
55
        int keyindex; /* original index #, for restoring  key information */
55
56
} EditVert;
56
57
 
 
58
struct EditEdge;
 
59
 
 
60
typedef struct HashEdge {
 
61
        struct EditEdge *eed;
 
62
        struct HashEdge *next;
 
63
} HashEdge;
 
64
 
 
65
/* note; changing this also might affect the undo copy in editmesh.c */
57
66
typedef struct EditEdge
58
67
{
59
68
        struct EditEdge *next, *prev;
60
69
        struct EditVert *v1, *v2, *vn;
61
 
        short f,h;
62
 
        short f1, dir;
 
70
        short f1, f2;   /* short, f1 is (ab)used in subdiv */
 
71
        unsigned char f, h, dir, seam;
 
72
        float crease;
 
73
        short fast;             /* only 0 or 1, for editmesh_fastmalloc */
 
74
        short fgoni;            /* index for fgon, for search */
 
75
        HashEdge hash;
63
76
} EditEdge;
64
77
 
65
 
typedef struct EditVlak
 
78
/* note; changing this also might affect the undo copy in editmesh.c */
 
79
typedef struct EditFace
66
80
{
67
 
        struct EditVlak *next, *prev;
 
81
        struct EditFace *next, *prev;
68
82
        struct EditVert *v1, *v2, *v3, *v4;
69
83
        struct EditEdge *e1, *e2, *e3, *e4;
70
 
        float n[3];
 
84
        float n[3], cent[3];
 
85
        short xs, ys;           /* selection */
71
86
        struct TFace tf;        /* a copy of original tface. */
72
87
        unsigned char mat_nr, flag;
73
 
        unsigned char f, f1;
74
 
} EditVlak;
 
88
        unsigned char f, f1, h, puno;
 
89
        unsigned char fast;                     /* only 0 or 1, for editmesh_fastmalloc */
 
90
        unsigned char fgonf;            /* flag for fgon options */
 
91
} EditFace;
75
92
 
76
93
typedef struct EditMesh
77
94
{
78
95
        ListBase verts, edges, faces;
 
96
        HashEdge *hashedgetab;
 
97
        
 
98
        /* this is for the editmesh_fastmalloc */
 
99
        EditVert *allverts, *curvert;
 
100
        EditEdge *alledges, *curedge;
 
101
        EditFace *allfaces, *curface;
 
102
        
 
103
        struct DerivedMesh *derived;
79
104
} EditMesh;
80
105
 
81
106
#endif