[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [15079] branches/blender-2.47/source/ blender: branches/blender-2.47
Diego Borghetti
bdiego at gmail.com
Sun Jun 1 17:38:47 CEST 2008
Revision: 15079
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=15079
Author: bdiego
Date: 2008-06-01 17:38:46 +0200 (Sun, 01 Jun 2008)
Log Message:
-----------
branches/blender-2.47
Merge from trunk:
Revision: 15064
Revision: 15069
Revision: 15070
Revision: 15072
Revision: 15073
Revision: 15075
Revision: 15077
Revision: 15078
Modified Paths:
--------------
branches/blender-2.47/source/blender/blenkernel/intern/BME_tools.c
branches/blender-2.47/source/blender/blenkernel/intern/writeffmpeg.c
branches/blender-2.47/source/blender/include/BIF_editseq.h
branches/blender-2.47/source/blender/python/api2_2x/Draw.c
branches/blender-2.47/source/blender/python/api2_2x/Material.c
branches/blender-2.47/source/blender/python/api2_2x/Node.c
branches/blender-2.47/source/blender/src/drawseq.c
branches/blender-2.47/source/blender/src/editseq.c
branches/blender-2.47/source/blender/src/filesel.c
branches/blender-2.47/source/blender/src/fluidsim.c
Modified: branches/blender-2.47/source/blender/blenkernel/intern/BME_tools.c
===================================================================
--- branches/blender-2.47/source/blender/blenkernel/intern/BME_tools.c 2008-06-01 14:37:09 UTC (rev 15078)
+++ branches/blender-2.47/source/blender/blenkernel/intern/BME_tools.c 2008-06-01 15:38:46 UTC (rev 15079)
@@ -811,7 +811,18 @@
return Inpf(vec3,vec4);
}
-
+static int BME_face_sharededges(BME_Poly *f1, BME_Poly *f2){
+ BME_Loop *l;
+ int count = 0;
+
+ l = f1->loopbase;
+ do{
+ if(BME_radial_find_face(l->e,f2)) count++;
+ l = l->next;
+ }while(l != f1->loopbase);
+
+ return count;
+}
/**
* BME_bevel_initialize
*
@@ -990,6 +1001,17 @@
/* face pass */
for (f=bm->polys.first; f; f=f->next) f->tflag1 = BME_BEVEL_ORIG;
+ /*clean up edges with 2 faces that share more than one edge*/
+ for (e=bm->edges.first; e; e=e->next){
+ if(e->tflag1 & BME_BEVEL_BEVEL){
+ int count = 0;
+ count = BME_face_sharededges(e->loop->f, ((BME_Loop*)e->loop->radial.next->data)->f);
+ if(count > 1){
+ e->tflag1 &= ~BME_BEVEL_BEVEL;
+ }
+ }
+ }
+
return bm;
}
@@ -1075,7 +1097,7 @@
v = BME_bevel_wire(bm, v, value, res, options, td);
}
else if (res && ((v->tflag1 & BME_BEVEL_BEVEL) && (v->tflag1 & BME_BEVEL_ORIG))) {
-
+ int count = 0;
/* first, make sure we're not sitting on an edge to be removed */
oe = v->edge;
e = BME_disk_nextedge(oe,v);
@@ -1089,6 +1111,7 @@
/* look for original edges, and remove them */
oe = e;
while ( (e = BME_disk_next_edgeflag(oe, v, 0, BME_BEVEL_ORIG | BME_BEVEL_BEVEL)) ) {
+ count++;
/* join the faces (we'll split them later) */
f = BME_JFKE_safe(bm,e->loop->f,((BME_Loop*)e->loop->radial.next->data)->f,e);
if (!f){
@@ -1096,6 +1119,9 @@
}
}
+ /*need to do double check *before* you bevel to make sure that manifold edges are for two faces that share only *one* edge to make sure it doesnt hang here!*/
+
+
/* all original edges marked to be beveled have been removed;
* now we need to link up the edges for this "corner" */
len = BME_cycle_length(BME_disk_getpointer(v->edge, v));
Modified: branches/blender-2.47/source/blender/blenkernel/intern/writeffmpeg.c
===================================================================
--- branches/blender-2.47/source/blender/blenkernel/intern/writeffmpeg.c 2008-06-01 14:37:09 UTC (rev 15078)
+++ branches/blender-2.47/source/blender/blenkernel/intern/writeffmpeg.c 2008-06-01 15:38:46 UTC (rev 15079)
@@ -867,7 +867,7 @@
fprintf(stderr, "Closing ffmpeg...\n");
- if (audio_stream) {
+ if (audio_stream && video_stream) {
write_audio_frames();
}
Modified: branches/blender-2.47/source/blender/include/BIF_editseq.h
===================================================================
--- branches/blender-2.47/source/blender/include/BIF_editseq.h 2008-06-01 14:37:09 UTC (rev 15078)
+++ branches/blender-2.47/source/blender/include/BIF_editseq.h 2008-06-01 15:38:46 UTC (rev 15079)
@@ -92,8 +92,8 @@
int seq_tx_get_start(struct Sequence *seq);
int seq_tx_get_end(struct Sequence *seq);
-int seq_tx_get_final_left(struct Sequence *seq);
-int seq_tx_get_final_right(struct Sequence *seq);
+int seq_tx_get_final_left(struct Sequence *seq, int metaclip);
+int seq_tx_get_final_right(struct Sequence *seq, int metaclip);
void seq_tx_set_final_left(struct Sequence *seq, int i);
void seq_tx_set_final_right(struct Sequence *seq, int i);
Modified: branches/blender-2.47/source/blender/python/api2_2x/Draw.c
===================================================================
--- branches/blender-2.47/source/blender/python/api2_2x/Draw.c 2008-06-01 14:37:09 UTC (rev 15078)
+++ branches/blender-2.47/source/blender/python/api2_2x/Draw.c 2008-06-01 15:38:46 UTC (rev 15079)
@@ -613,6 +613,8 @@
PyErr_Print( );
script->flags = 0; /* mark script struct for deletion */
SCRIPT_SET_NULL(script);
+ script->scriptname[0] = '\0';
+ script->scriptarg[0] = '\0';
error_pyscript();
scrarea_queue_redraw( sc->area );
}
Modified: branches/blender-2.47/source/blender/python/api2_2x/Material.c
===================================================================
--- branches/blender-2.47/source/blender/python/api2_2x/Material.c 2008-06-01 14:37:09 UTC (rev 15078)
+++ branches/blender-2.47/source/blender/python/api2_2x/Material.c 2008-06-01 15:38:46 UTC (rev 15079)
@@ -1179,7 +1179,7 @@
{"sssRadiusBlue",
(getter)Material_getSssRadius, (setter)Material_setSssRadius,
"Mean red scattering path length",
- (void *) 0},
+ (void *) 2},
{"sssIOR",
(getter)Material_getSssIOR, (setter)Material_setSssIOR,
"index of refraction",
@@ -1196,7 +1196,7 @@
(getter)Material_getSssTexScatter, (setter)Material_setSssTexScatter,
"Texture scattering factor",
NULL},
- {"sssFont",
+ {"sssFront",
(getter)Material_getSssFront, (setter)Material_setSssFront,
"Front scattering weight",
NULL},
Modified: branches/blender-2.47/source/blender/python/api2_2x/Node.c
===================================================================
--- branches/blender-2.47/source/blender/python/api2_2x/Node.c 2008-06-01 14:37:09 UTC (rev 15078)
+++ branches/blender-2.47/source/blender/python/api2_2x/Node.c 2008-06-01 15:38:46 UTC (rev 15079)
@@ -848,7 +848,7 @@
if (PyInt_Check(pyidx)) {
idx = (int)PyInt_AsLong(pyidx);
- if (idx < 0 || idx >= Sockinmap_len(self))
+ if (idx < 0 || idx >= Sockoutmap_len(self))
return EXPP_ReturnIntError(PyExc_IndexError, "index out of range");
}
else if (PyString_Check(pyidx)) {
Modified: branches/blender-2.47/source/blender/src/drawseq.c
===================================================================
--- branches/blender-2.47/source/blender/src/drawseq.c 2008-06-01 14:37:09 UTC (rev 15078)
+++ branches/blender-2.47/source/blender/src/drawseq.c 2008-06-01 15:38:46 UTC (rev 15079)
@@ -691,7 +691,7 @@
/* draw the main strip body */
if (is_single_image) /* single image */
- draw_shadedstrip(seq, col, seq_tx_get_final_left(seq), y1, seq_tx_get_final_right(seq), y2);
+ draw_shadedstrip(seq, col, seq_tx_get_final_left(seq, 0), y1, seq_tx_get_final_right(seq, 0), y2);
else /* normal operation */
draw_shadedstrip(seq, col, x1, y1, x2, y2);
Modified: branches/blender-2.47/source/blender/src/editseq.c
===================================================================
--- branches/blender-2.47/source/blender/src/editseq.c 2008-06-01 14:37:09 UTC (rev 15078)
+++ branches/blender-2.47/source/blender/src/editseq.c 2008-06-01 15:38:46 UTC (rev 15079)
@@ -184,13 +184,24 @@
return seq->start+seq->len;
}
-int seq_tx_get_final_left(Sequence *seq)
+int seq_tx_get_final_left(Sequence *seq, int metaclip)
{
- return (seq->start - seq->startstill) + seq->startofs;
+ if (metaclip && seq->tmp) {
+ /* return the range clipped by the parents range */
+ return MAX2( seq_tx_get_final_left(seq, 0), seq_tx_get_final_left((Sequence *)seq->tmp, 1) );
+ } else {
+ return (seq->start - seq->startstill) + seq->startofs;
+ }
+
}
-int seq_tx_get_final_right(Sequence *seq)
+int seq_tx_get_final_right(Sequence *seq, int metaclip)
{
- return ((seq->start+seq->len) + seq->endstill) - seq->endofs;
+ if (metaclip && seq->tmp) {
+ /* return the range clipped by the parents range */
+ return MIN2( seq_tx_get_final_right(seq, 0), seq_tx_get_final_right((Sequence *)seq->tmp, 1) );
+ } else {
+ return ((seq->start+seq->len) + seq->endstill) - seq->endofs;
+ }
}
void seq_tx_set_final_left(Sequence *seq, int val)
@@ -260,12 +271,12 @@
/* make sure the image is always at the start since there is only one,
adjusting its start should be ok */
- left = seq_tx_get_final_left(seq);
+ left = seq_tx_get_final_left(seq, 0);
start = seq->start;
if (start != left) {
offset = left - start;
- seq_tx_set_final_left( seq, seq_tx_get_final_left(seq) - offset );
- seq_tx_set_final_right( seq, seq_tx_get_final_right(seq) - offset );
+ seq_tx_set_final_left( seq, seq_tx_get_final_left(seq, 0) - offset );
+ seq_tx_set_final_right( seq, seq_tx_get_final_right(seq, 0) - offset );
seq->start += offset;
}
}
@@ -2927,34 +2938,34 @@
static void transform_grab_xlimits(Sequence *seq, int leftflag, int rightflag)
{
if(leftflag) {
- if (seq_tx_get_final_left(seq) >= seq_tx_get_final_right(seq)) {
- seq_tx_set_final_left(seq, seq_tx_get_final_right(seq)-1);
+ if (seq_tx_get_final_left(seq, 0) >= seq_tx_get_final_right(seq, 0)) {
+ seq_tx_set_final_left(seq, seq_tx_get_final_right(seq, 0)-1);
}
if (check_single_seq(seq)==0) {
- if (seq_tx_get_final_left(seq) >= seq_tx_get_end(seq)) {
+ if (seq_tx_get_final_left(seq, 0) >= seq_tx_get_end(seq)) {
seq_tx_set_final_left(seq, seq_tx_get_end(seq)-1);
}
/* dosnt work now - TODO */
/*
- if (seq_tx_get_start(seq) >= seq_tx_get_final_right(seq)) {
+ if (seq_tx_get_start(seq) >= seq_tx_get_final_right(seq, 0)) {
int ofs;
- ofs = seq_tx_get_start(seq) - seq_tx_get_final_right(seq);
+ ofs = seq_tx_get_start(seq) - seq_tx_get_final_right(seq, 0);
seq->start -= ofs;
- seq_tx_set_final_left(seq, seq_tx_get_final_left(seq) + ofs );
+ seq_tx_set_final_left(seq, seq_tx_get_final_left(seq, 0) + ofs );
}*/
}
}
if(rightflag) {
- if (seq_tx_get_final_right(seq) <= seq_tx_get_final_left(seq)) {
- seq_tx_set_final_right(seq, seq_tx_get_final_left(seq)+1);
+ if (seq_tx_get_final_right(seq, 0) <= seq_tx_get_final_left(seq, 0)) {
+ seq_tx_set_final_right(seq, seq_tx_get_final_left(seq, 0)+1);
}
if (check_single_seq(seq)==0) {
- if (seq_tx_get_final_right(seq) <= seq_tx_get_start(seq)) {
+ if (seq_tx_get_final_right(seq, 0) <= seq_tx_get_start(seq)) {
seq_tx_set_final_right(seq, seq_tx_get_start(seq)+1);
}
}
@@ -3033,9 +3044,24 @@
for(seq_index=0, seq=seqar[0]; seq_index < totseq_index; seq=seqar[++seq_index]) {
if((seq->flag & SELECT) && !(seq->depth==0 && seq->flag & SEQ_LOCK))
totstrip++;
+ /* only needed for extend but can set here anyway since were alredy looping */
+ seq->tmp= NULL;
}
}
+ /* for extending we need the metastrip clipped left/right values, set the metastrips as parents in seq->tmp */
+ if (mode=='e') {
+ Sequence *meta_seq;
+ for(seq_index=0, seq=seqar[0]; seq_index < totseq_index; seq=seqar[++seq_index]) {
+ if (seq->type == SEQ_META) {
@@ Diff output truncated at 10240 characters. @@
More information about the Bf-blender-cvs
mailing list