Commit Graph

58 Commits

Author SHA1 Message Date
3e4bf6d4ad =bmesh= knife tool applies to modifier cage now, also fixed some bugs in it 2011-08-30 01:59:33 +00:00
1d8fa52883 rename BMINDEX_GET/SET to BM_GetIndex/BM_SetIndex 2011-05-13 10:49:26 +00:00
cc2352cdd0 =bmesh=fixed shapekey mem leak 2011-05-12 18:33:10 +00:00
1e90add66c more syncing with trunk. 2011-05-11 09:31:00 +00:00
cd55aeaf6d set many vars & functions as static,
also commented invalid pin theme alpha assignment so bmesh branch builds with -Werror
2011-05-11 02:14:43 +00:00
5a2a3d7d82 more syncing with trunk, also cleared many warnings with gcc4.6 2011-05-09 04:06:48 +00:00
3462ddf17f =bmesh=
Cut out some unwanted differences with trunk
in preparation for merge.  Also fixed some
warnings, though many remain.
2011-05-07 02:48:14 +00:00
2a24370bab =bmesh= fixed a shapekey issue with undo 2011-04-17 05:08:03 +00:00
0e9ce1b40d =bmesh= odd bug, sometimes edge slide would result in invalid derivedmesh. I had to put a recalcData() call into edge slide's free function. not sure why edge slide but not other transform tools are acting up. 2011-04-17 04:12:53 +00:00
4d7de0796b =bmesh=
Knife tool now works on multires data, it's also
a tad bit faster now.
2011-04-13 00:35:48 +00:00
7d43a48993 =bmesh=
Multires interpolation is considerably better
now, though it still has a problem with occasionally
producing little random tangent spikes.  Still, it's
far better then it was.

Also fixed a bug in dissolve faces.
2011-03-29 05:48:18 +00:00
f01261d040 merge with/from trunk at r35190 2011-02-27 06:19:40 +00:00
c128a8c12a =bmesh= fix bug with uvlayers 2011-02-23 08:12:27 +00:00
8b4eab10f1 pre-merge commit 2011-02-15 01:16:32 +00:00
d6158a4019 brought back x-mirror editing, though it's currently buggy. also made tesselation face normals writable to disk. 2010-03-11 05:30:01 +00:00
71003b9bcc merge with trunk at r27259 and commit of a patch by anthony jones to fix msvc (though further work may be needed because changes made by the merge 2010-03-09 04:32:40 +00:00
20fac2eca7 The Death Of Editmesh - Part 1
I've removed editmesh altogether (other then scanfill, which is
seperate code that happens to reuse the editmesh structures).
The compatibility layer I had written for old editmesh tools
was more trouble then it was worth, though it did help in the 
early stages of this project.

There's a fair amount of breakage, and there's bunches of tools
(mostly minor ones) I need to port over still.  Biggest ones are
join triangles and loop to region, and spin/screw.

This probably isn't really testable, I'll hopefully have more
work done on this soon, but might not be before next week.
2010-01-28 00:45:30 +00:00
473f235a6e pre-merge commit; decided might as well get it over with. 2009-12-26 08:47:38 +00:00
0e165c55bb did math lib conversion, equivilent to merge with trunk/2.5 at r24464 2009-11-23 14:41:22 +00:00
cfa4f3222a ctrl-alt-leftclick for adding new geometry works, but blocks zoom. we have got to fix this in 2.5. also made dissolving a 2-valence vert leave an edge behind. and fixed a bug or two. 2009-11-06 12:59:58 +00:00
55c1d9d4bc shapekey bugfixes 2009-11-02 16:01:24 +00:00
7225c078b7 bmesh compile fixes 2009-11-02 14:45:12 +00:00
e3a410d224 shapekeys are now stored as customdata in editmode, so edit operations like subdivide work (mostly) correctly. tesselated faces now store correct normals in more situations. and added more missing files from the last merge, there may be more though. 2009-11-02 06:33:16 +00:00
2d0d4e7de4 commit before doing some hefty shapekey change, will break compilation 2009-11-01 00:06:53 +00:00
0c65f27c79 part 1 of cleaning up my little array macro library to be a formal API. also removed some extraneous selection calls from loopcut.c. 2009-09-17 23:05:33 +00:00
b2c16fb401 forgot this file 2009-09-16 22:27:22 +00:00
deebf4f8f0 merge with 2.5/trunk at r23271 2009-09-16 17:43:09 +00:00
4652d66c0a editmode undo stores data as mesh dna now, instead of bmesh copies. also fixed a bug related to vpaint and hide flags. 2009-09-10 06:08:52 +00:00
e0a014a45f finished removedoubles, and inlined a bunch of functions. 2009-09-09 06:28:58 +00:00
971155b373 part one of profiling/optimizing. made cddm not update tesselations itself in cddm_from_mesh. also made BMO_Test/Set/ClearFlag into macros, and tweaked the way normals are calculated. 2009-09-05 06:10:30 +00:00
dae0b7a4a2 fix merge bug, this should fix this issue for now, but might need further work later. 2009-09-04 01:28:06 +00:00
8408a72d16 cddm's recalc tesselation function works, and some memory leak fixes 2009-08-29 23:55:35 +00:00
771a4dee0b commit of framework for uv/vcol rotate/mirror 2009-08-28 10:17:31 +00:00
eb34e3ad7c Brought Extrude all the way back. The contextual menu works,
as does only edges and individual faces extrude (individual vert 
extrude already did).

Note that I need to port this, after we all figure out how to handle
operators with variable transform follow-ons.

I also implemented the merge->collapse function, which is currently
accessable under ctrl->v, Bmesh Test Operator.  I still need to
implement the other merge modes, and properly hook everything into
the merge menu tool, which I plan on doing soon (tomorrow hopefully).

The cool thing about the collapse tool, is not only does it handle (all)
UV layers, it handles vcols as well.  To do this, I had to add a few math
functions to the customdata API, which seem to be working well.
2009-08-11 07:49:35 +00:00
88b43b52b1 select more/less properly uses bmops now, and also made a little start on documenting the bmops. 2009-08-06 05:06:55 +00:00
886b613363 bmeshafied the hide/reveal code. created a set of API functions for hiding/revealing elements in bmesh_marking.c. main function is BM_Hide, which can hide or reveal an element (vert/edge/face, NOT loops, obviously), and will handle any flushing necassary. also renamed BM_Is_Selected to BM_Selected, though I may get rid of that function altogether. 2009-08-05 06:06:58 +00:00
012b419549 select linked has been bmeshafied, yay 2009-08-05 02:34:54 +00:00
c691b2b037 edge and loop select work in uv editor again. 2009-07-24 07:39:41 +00:00
0b79b8f933 finished first pass at bmeshafying uvedit_ops.c. not everything works yet, loop select for example crashes. 2009-07-21 11:48:58 +00:00
19a2da9303 first pass at the uv code. uv editor now mostly uses new bmesh structures for uvs. 2009-07-21 08:39:58 +00:00
f2138686d9 moved the selection history stuff within bmesh itself, to avoid memory access problems. also committing some playing around I did with the edge subdivide code, which isn't doesn't really completely work. 2009-07-17 10:54:00 +00:00
0b1649b2b8 merge with 2.5 at r21568 2009-07-16 06:27:37 +00:00
6360db1554 missing free 2009-06-18 07:15:17 +00:00
5abbb20c89 extrude handles active face, and operators now properly restore unmodified mesh on failure 2009-06-18 07:11:55 +00:00
80effa20b1 moved the active face pointer to BMesh, where I think it belongs. also made some fixes to the ccgsubsurf derivedmesh, and some general modifier bugfixes. note that modifiers are still rather buggy and crashy at the moment, heh :) also made some functions for converting Mesh flags to BMesh flags, and back. 2009-06-12 14:02:37 +00:00
b5aa425dee Did some code cleanups. Added BM_ITER and
BMO_ITER macros to make defining iterator
loops easier.  Moved some files around.
And also made the editmesh conversion functions
tesselate ngons to triangle fans, since it's
more stable for conversion, and editmeshes are
never displayed to the user anyway.  And ported
akey to bmesh.

Next up I plan on adding face iterators to DerivedMesh,
since that's the last major chunk of major refactoring
left, I think, except perhaps the uv editor (at the
moment it's probably close to working, but it's still
converting to editmeshes for everything, which is very
bad).
2009-05-28 04:41:02 +00:00
5bb09886fb mesh DNA modficiations; two new structures added for storing ngons, MPoly and MLoop. 2009-05-26 04:17:47 +00:00
f026266e18 merge with 2.5 at r20307. note there were some python hacking necassary for this to work, so um hopefully there's not too much cruft from that.
[[Split portion of a mixed commit.]]
2009-05-23 03:24:15 +00:00
b7fe3258b6 some stability stuff related to undo, and more extrude stuff works 2009-05-19 00:33:54 +00:00
a8c0b748c9 fixed a few of the memory leaks 2009-05-18 15:53:30 +00:00