[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [42246] branches/bmesh/blender: svn merge ^/trunk/blender -r42221:42245
Campbell Barton
ideasman42 at gmail.com
Tue Nov 29 07:58:27 CET 2011
Revision: 42246
http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=42246
Author: campbellbarton
Date: 2011-11-29 06:58:16 +0000 (Tue, 29 Nov 2011)
Log Message:
-----------
svn merge ^/trunk/blender -r42221:42245
Revision Links:
--------------
http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=42221
Modified Paths:
--------------
branches/bmesh/blender/doc/python_api/rst/info_best_practice.rst
branches/bmesh/blender/extern/libmv/libmv/tracking/sad.cc
branches/bmesh/blender/extern/libmv/libmv-capi.cpp
branches/bmesh/blender/extern/libmv/libmv-capi.h
branches/bmesh/blender/release/scripts/startup/bl_ui/space_clip.py
branches/bmesh/blender/release/scripts/startup/bl_ui/space_info.py
branches/bmesh/blender/source/blender/blenkernel/intern/anim.c
branches/bmesh/blender/source/blender/blenkernel/intern/tracking.c
branches/bmesh/blender/source/blender/blenloader/intern/readfile.c
branches/bmesh/blender/source/blender/editors/object/object_add.c
branches/bmesh/blender/source/blender/editors/sculpt_paint/paint_vertex.c
Property Changed:
----------------
branches/bmesh/blender/
branches/bmesh/blender/extern/libmv/libmv/simple_pipeline/callbacks.h
branches/bmesh/blender/release/
branches/bmesh/blender/release/scripts/presets/tracking_settings/blurry_movie.py
branches/bmesh/blender/release/scripts/presets/tracking_settings/default.py
branches/bmesh/blender/release/scripts/presets/tracking_settings/fast_motion.py
branches/bmesh/blender/source/blender/editors/space_outliner/
Property changes on: branches/bmesh/blender
___________________________________________________________________
Modified: svn:mergeinfo
- /branches/soc-2011-cucumber:37517
/trunk/blender:39992-42221
+ /branches/soc-2011-cucumber:37517
/trunk/blender:39992-42245
Modified: branches/bmesh/blender/doc/python_api/rst/info_best_practice.rst
===================================================================
--- branches/bmesh/blender/doc/python_api/rst/info_best_practice.rst 2011-11-29 06:50:18 UTC (rev 42245)
+++ branches/bmesh/blender/doc/python_api/rst/info_best_practice.rst 2011-11-29 06:58:16 UTC (rev 42246)
@@ -39,7 +39,7 @@
.. code-block:: python
- bpy.context.scene.render.file_format = 'PNG'
+ bpy.context.scene.render.image_settings.file_format = 'PNG'
bpy.context.scene.render.filepath = "//render_out"
* pep8 also defines that lines should not exceed 79 characters, we felt this is too restrictive so this is optional per script.
@@ -181,7 +181,7 @@
Avoid Copying Lists
^^^^^^^^^^^^^^^^^^^
-When passing a list/dictionary to a function, it is faster to have the function modify the list rather then returning a new list so python dosn't have tp duplicate the list in memory.
+When passing a list/dictionary to a function, it is faster to have the function modify the list rather then returning a new list so python doesn't have to duplicate the list in memory.
Functions that modify a list in-place are more efficient then functions that create new lists.
Property changes on: branches/bmesh/blender/extern/libmv/libmv/simple_pipeline/callbacks.h
___________________________________________________________________
Added: svn:eol-style
+ native
Modified: branches/bmesh/blender/extern/libmv/libmv/tracking/sad.cc
===================================================================
--- branches/bmesh/blender/extern/libmv/libmv/tracking/sad.cc 2011-11-29 06:50:18 UTC (rev 42245)
+++ branches/bmesh/blender/extern/libmv/libmv/tracking/sad.cc 2011-11-29 06:58:16 UTC (rev 42246)
@@ -25,6 +25,7 @@
#include "libmv/tracking/sad.h"
#include <stdlib.h>
#include <math.h>
+#include <stdio.h>
namespace libmv {
@@ -78,15 +79,31 @@
#ifdef __SSE2__
#include <emmintrin.h>
-static uint SAD(const ubyte* pattern, const ubyte* image, int stride, int size) {
+ static uint SAD(/*const*/ ubyte* pattern, /*const*/ ubyte* image, int stride, int size) {
+ uint sad = 0;
__m128i a = _mm_setzero_si128();
+
for(int i = 0; i < size; i++) {
- for(int j = 0; j < size/16; j++) {
+ int j = 0;
+
+ for(j = 0; j < size/16; j++) {
+ if((i*size/16+j) % 32 == 0) {
+ sad += _mm_extract_epi16(a,0) + _mm_extract_epi16(a,4);
+ a = _mm_setzero_si128();
+ }
+
a = _mm_adds_epu16(a, _mm_sad_epu8( _mm_loadu_si128((__m128i*)(pattern+i*size+j*16)),
_mm_loadu_si128((__m128i*)(image+i*stride+j*16))));
}
+
+ for(j = j*16; j < size; j++) {
+ sad += abs((int)pattern[i*size+j] - image[i*stride+j]);
+ }
}
- return _mm_extract_epi16(a,0) + _mm_extract_epi16(a,4);
+
+ sad += _mm_extract_epi16(a,0) + _mm_extract_epi16(a,4);
+
+ return sad;
}
#else
static uint SAD(const ubyte* pattern, const ubyte* image, int stride, int size) {
Modified: branches/bmesh/blender/extern/libmv/libmv-capi.cpp
===================================================================
--- branches/bmesh/blender/extern/libmv/libmv-capi.cpp 2011-11-29 06:50:18 UTC (rev 42245)
+++ branches/bmesh/blender/extern/libmv/libmv-capi.cpp 2011-11-29 06:58:16 UTC (rev 42246)
@@ -297,16 +297,16 @@
/* ************ Tracks ************ */
void libmv_SADSamplePattern(unsigned char *image, int stride,
- float warp[3][2], unsigned char *pattern)
+ float warp[3][2], unsigned char *pattern, int pattern_size)
{
libmv::mat32 mat32;
memcpy(mat32.data, warp, sizeof(float)*3*2);
- libmv::SamplePattern(image, stride, mat32, pattern, 16);
+ libmv::SamplePattern(image, stride, mat32, pattern, pattern_size);
}
-float libmv_SADTrackerTrack(unsigned char *pattern, unsigned char *warped, unsigned char *image, int stride,
+float libmv_SADTrackerTrack(unsigned char *pattern, unsigned char *warped, int pattern_size, unsigned char *image, int stride,
int width, int height, float warp[3][2])
{
float result;
@@ -314,7 +314,7 @@
memcpy(mat32.data, warp, sizeof(float)*3*2);
- result = libmv::Track(pattern, warped, 16, image, stride, width, height, &mat32, 16, 16);
+ result = libmv::Track(pattern, warped, pattern_size, image, stride, width, height, &mat32, 16, 16);
memcpy(warp, mat32.data, sizeof(float)*3*2);
Modified: branches/bmesh/blender/extern/libmv/libmv-capi.h
===================================================================
--- branches/bmesh/blender/extern/libmv/libmv-capi.h 2011-11-29 06:50:18 UTC (rev 42245)
+++ branches/bmesh/blender/extern/libmv/libmv-capi.h 2011-11-29 06:58:16 UTC (rev 42246)
@@ -50,8 +50,8 @@
/* SAD Tracker */
void libmv_SADSamplePattern(unsigned char *image, int stride,
- float warp[3][2], unsigned char *pattern);
-float libmv_SADTrackerTrack(unsigned char *pattern, unsigned char *warped, unsigned char *image,
+ float warp[3][2], unsigned char *pattern, int pattern_size);
+float libmv_SADTrackerTrack(unsigned char *pattern, unsigned char *warped, int pattern_size, unsigned char *image,
int stride, int width, int height, float warp[3][2]);
/* Tracks */
Property changes on: branches/bmesh/blender/release
___________________________________________________________________
Modified: svn:mergeinfo
- /trunk/blender/release:31524-42221
+ /trunk/blender/release:31524-42245
Property changes on: branches/bmesh/blender/release/scripts/presets/tracking_settings/blurry_movie.py
___________________________________________________________________
Added: svn:eol-style
+ native
Property changes on: branches/bmesh/blender/release/scripts/presets/tracking_settings/default.py
___________________________________________________________________
Added: svn:eol-style
+ native
Property changes on: branches/bmesh/blender/release/scripts/presets/tracking_settings/fast_motion.py
___________________________________________________________________
Added: svn:eol-style
+ native
Modified: branches/bmesh/blender/release/scripts/startup/bl_ui/space_clip.py
===================================================================
--- branches/bmesh/blender/release/scripts/startup/bl_ui/space_clip.py 2011-11-29 06:50:18 UTC (rev 42245)
+++ branches/bmesh/blender/release/scripts/startup/bl_ui/space_clip.py 2011-11-29 06:58:16 UTC (rev 42246)
@@ -120,9 +120,9 @@
col.separator()
- col2 = col.column(align=True)
- col2.prop(settings, "default_pattern_size")
- col2.prop(settings, "default_search_size")
+ sub = col.column(align=True)
+ sub.prop(settings, "default_pattern_size")
+ sub.prop(settings, "default_search_size")
col.label(text="Tracker:")
col.prop(settings, "default_tracker", text="")
@@ -134,9 +134,9 @@
col.separator()
- col2 = col.column(align=True)
- col2.prop(settings, "default_frames_limit")
- col2.prop(settings, "default_margin")
+ sub = col.column(align=True)
+ sub.prop(settings, "default_frames_limit")
+ sub.prop(settings, "default_margin")
col.label(text="Match:")
col.prop(settings, "default_pattern_match", text="")
Modified: branches/bmesh/blender/release/scripts/startup/bl_ui/space_info.py
===================================================================
--- branches/bmesh/blender/release/scripts/startup/bl_ui/space_info.py 2011-11-29 06:50:18 UTC (rev 42245)
+++ branches/bmesh/blender/release/scripts/startup/bl_ui/space_info.py 2011-11-29 06:58:16 UTC (rev 42246)
@@ -361,7 +361,7 @@
layout = self.layout
- layout.operator("wm.url_open", text="Manual", icon='HELP').url = 'http://wiki.blender.org/index.php/Doc:Manual'
+ layout.operator("wm.url_open", text="Manual", icon='HELP').url = 'http://wiki.blender.org/index.php/Doc:2.6/Manual'
layout.operator("wm.url_open", text="Release Log", icon='URL').url = 'http://www.blender.org/development/release-logs/blender-260/'
layout.separator()
Modified: branches/bmesh/blender/source/blender/blenkernel/intern/anim.c
===================================================================
--- branches/bmesh/blender/source/blender/blenkernel/intern/anim.c 2011-11-29 06:50:18 UTC (rev 42245)
+++ branches/bmesh/blender/source/blender/blenkernel/intern/anim.c 2011-11-29 06:58:16 UTC (rev 42246)
@@ -1017,7 +1017,7 @@
MLoop *mloop;
MVert *mvert;
float pmat[4][4], imat[3][3], (*orco)[3] = NULL, w;
- int lay, oblay, totface, totloop, a;
+ int lay, oblay, totface, a;
Scene *sce = NULL;
Group *group = NULL;
GroupObject *go = NULL;
@@ -1031,30 +1031,17 @@
em = me->edit_btmesh;
if(em) {
- int totvert;
dm= editbmesh_get_derived_cage(scene, par, em, CD_MASK_BAREMESH);
-
- totface= dm->getNumFaces(dm);
- mpoly= MEM_mallocN(sizeof(MPoly)*totface, "mface temp");
- dm->copyPolyArray(dm, mpoly);
-
- totloop= dm->numLoopData; /* BMESH_TODO, we should have an api function for this! */
- mloop= MEM_mallocN(sizeof(MLoop)*totloop, "mloop temp");
- dm->copyLoopArray(dm, mloop);
-
- totvert= dm->getNumVerts(dm);
- mvert= MEM_mallocN(sizeof(MVert)*totvert, "mvert temp");
- dm->copyVertArray(dm, mvert);
}
else {
dm = mesh_get_derived_deform(scene, par, CD_MASK_BAREMESH);
-
- totface= dm->getNumFaces(dm);
- mpoly= dm->getPolyArray(dm);
- mloop= dm->getLoopArray(dm);
- mvert= dm->getVertArray(dm);
}
+ totface= dm->getNumFaces(dm);
+ mpoly= dm->getPolyArray(dm);
+ mloop= dm->getLoopArray(dm);
+ mvert= dm->getVertArray(dm);
+
if(G.rendering) {
orco= (float(*)[3])get_mesh_orco_verts(par);
@@ -1199,12 +1186,6 @@
if (sce) base= base->next; /* scene loop */
else go= go->next; /* group loop */
}
-
- if(em) {
- MEM_freeN(mpoly);
- MEM_freeN(mloop);
- MEM_freeN(mvert);
- }
if(orco)
MEM_freeN(orco);
Modified: branches/bmesh/blender/source/blender/blenkernel/intern/tracking.c
===================================================================
--- branches/bmesh/blender/source/blender/blenkernel/intern/tracking.c 2011-11-29 06:50:18 UTC (rev 42245)
@@ Diff output truncated at 10240 characters. @@
More information about the Bf-blender-cvs
mailing list