Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTon Roosendaal <ton@blender.org>2003-04-29 19:30:59 +0400
committerTon Roosendaal <ton@blender.org>2003-04-29 19:30:59 +0400
commitceb3e8cc2a60dabf95597cdeab14c3460121bbec (patch)
tree1cb9188730cd8893cede9105f9e3d4f1100b001e /source/blender
parenta4f2249497009c31f1c1823869e3130a51a15f7b (diff)
phew... a whole bunch of old and nasty files translated, including the
central mesh editing one.
Diffstat (limited to 'source/blender')
-rw-r--r--source/blender/src/editface.c4
-rw-r--r--source/blender/src/editika.c6
-rw-r--r--source/blender/src/editimasel.c2
-rw-r--r--source/blender/src/editipo.c202
-rw-r--r--source/blender/src/editkey.c21
-rw-r--r--source/blender/src/editlattice.c10
-rw-r--r--source/blender/src/editmball.c8
-rw-r--r--source/blender/src/editmesh.c670
-rw-r--r--source/blender/src/editobject.c288
-rw-r--r--source/blender/src/editoops.c18
-rw-r--r--source/blender/src/editscreen.c194
11 files changed, 622 insertions, 801 deletions
diff --git a/source/blender/src/editface.c b/source/blender/src/editface.c
index 2749f96036c..191cf031994 100644
--- a/source/blender/src/editface.c
+++ b/source/blender/src/editface.c
@@ -269,7 +269,7 @@ void select_linked_tfaces()
while(doit) {
doit= 0;
- /* select connected: array vullen */
+ /* select connected: fill array */
tface= me->tface;
mface= me->mface;
a= me->totface;
@@ -286,7 +286,7 @@ void select_linked_tfaces()
tface++; mface++;
}
- /* omgekeerd: vanuit array vlakken selecteren */
+ /* reverse: using array select the faces */
tface= me->tface;
mface= me->mface;
diff --git a/source/blender/src/editika.c b/source/blender/src/editika.c
index f167489dc5c..bf94f3db3c9 100644
--- a/source/blender/src/editika.c
+++ b/source/blender/src/editika.c
@@ -1,4 +1,10 @@
/**
+ * ------------------------------------------------------------
+ * This is the old 'Ika' system of Blender (until 2.14)
+ * it should be removed entirely from the tree, so I'll also leave comments
+ * not translated... (ton)
+ * ------------------------------------------------------------
+ *
* $Id$
*
* ***** BEGIN GPL/BL DUAL LICENSE BLOCK *****
diff --git a/source/blender/src/editimasel.c b/source/blender/src/editimasel.c
index d2c43a9efbf..76594c62ad8 100644
--- a/source/blender/src/editimasel.c
+++ b/source/blender/src/editimasel.c
@@ -262,7 +262,7 @@ void winqreadimaselspace(ScrArea *sa, void *spacedata, BWinEvent *evt)
case MOUSEX:
case MOUSEY:
- getmouseco_areawin(mval); /* lokaal screen */
+ getmouseco_areawin(mval); /* local screen coordinates */
calc_hilite(simasel);
if (simasel->mouse_move_redraw ){
simasel->mouse_move_redraw = 0;
diff --git a/source/blender/src/editipo.c b/source/blender/src/editipo.c
index 9e14858b875..6d6b03828c8 100644
--- a/source/blender/src/editipo.c
+++ b/source/blender/src/editipo.c
@@ -30,6 +30,15 @@
* ***** END GPL/BL DUAL LICENSE BLOCK *****
*/
+
+/* this code feels over-complex, mostly because I choose in the past to devise a system
+ that converts the Ipo blocks (linked to Object, Material, etc), into a copy of that
+ data which is being worked on; the 'editipo'.
+ The editipo then can have 'ipokey' data, which is optimized for editing curves as if
+ it were key positions. This is still a great feature to work with, which makes ipo editing
+ in Blender still valuable. However, getting this beast under control was hard, even
+ for me... (ton) */
+
#include <stdlib.h>
#include <string.h>
#include <math.h>
@@ -554,7 +563,7 @@ void editipo_changed(SpaceIpo *si, int doredraw)
if(ei->icu) {
- /* 2 keer i.v.m. ittereren nieuwe autohandle */
+ /* twice because of ittererating new autohandle */
calchandles_ipocurve(ei->icu);
calchandles_ipocurve(ei->icu);
@@ -572,9 +581,8 @@ void editipo_changed(SpaceIpo *si, int doredraw)
}
v2d= &(si->v2d);
-// v2d = &G.v2d;
- /* keylijnen? */
+ /* keylines? */
if(si->blocktype==ID_KE) {
key= (Key *)si->from;
if(key && key->block.first) {
@@ -586,7 +594,7 @@ void editipo_changed(SpaceIpo *si, int doredraw)
}
- /* is er geen curve? */
+ /* is there no curve? */
if(first) {
v2d->tot.xmin= 0.0;
v2d->tot.xmax= EFRA;
@@ -604,13 +612,12 @@ void editipo_changed(SpaceIpo *si, int doredraw)
si->tot= v2d->tot;
if(doredraw) {
- /* als do_ipo altijd wordt aangeroepen: problemen met insertkey, bijvoorbeeld
- * als alleen een 'loc' wordt ge-insert wordt de 'ob->rot' veranderd.
+ /* if you always call do_ipo: you get problems with insertkey, for example
+ * when inserting only a 'loc' the 'ob->rot' value then is changed.
*/
-
if(si->blocktype==ID_OB) {
- /* clear delta loc,rot,size (bij ipo vrijgeven/deleten) */
+ /* clear delta loc,rot,size (when free/delete ipo) */
clear_delta_obipo(si->ipo);
}
@@ -658,7 +665,7 @@ void editipo_changed(SpaceIpo *si, int doredraw)
void scale_editipo()
{
- /* komt uit buttons, scale met G.sipo->tot rect */
+ /* comes from buttons, scale with G.sipo->tot rect */
EditIpo *ei;
BezTriple *bezt;
@@ -801,7 +808,7 @@ unsigned int ipo_rainbow(int cur, int tot)
dfac= (float)(1.0/( (float)tot+1.0));
- /* deze berekening zorgt voor twee verschillende cycles regenboogkleuren */
+ /* this calculation makes 2 different cycles of rainbow colors */
if(cur< tot/2) fac= (float)(cur*2.0*dfac);
else fac= (float)((cur-tot/2)*2.0*dfac +dfac);
@@ -973,7 +980,6 @@ void make_mat_editipo(SpaceIpo *si)
ei->adrcode |= texchannel_to_adrcode(si->channel);
}
else {
- /* dit was weggecommentaard. Waarom? */
if(ei->adrcode==MA_MODE) ei->disptype= IPO_DISPBITS;
}
@@ -1246,7 +1252,7 @@ void make_editipo()
if(G.sipo->editipo==0) return;
- /* rowbut voor VISIBLE select */
+ /* rowbut for VISIBLE select */
G.sipo->rowbut= 0;
ei= G.sipo->editipo;
for(a=0; a<G.sipo->totipo; a++, ei++) {
@@ -1357,7 +1363,7 @@ void get_status_editipo()
if(ei->flag & IPO_SELECT) totipo_sel++;
if(G.sipo->showkey || (ei->flag & IPO_EDIT)) {
- /* als showkey: wel de vertices tellen (voor grab) */
+ /* if showkey: do count the vertices (for grab) */
if(G.sipo->showkey==0) totipo_edit++;
if(ei->icu) {
@@ -1439,7 +1445,7 @@ void set_editflag_editipo()
EditIpo *ei;
int a; /* , tot= 0, ok= 0; */
- /* van showkey direkt door naar editen geselecteerde punten */
+ /* after showkey immediately go to editing of selected points */
if(G.sipo->showkey) {
G.sipo->showkey= 0;
if(G.sipo->ipo) G.sipo->ipo->showkey= 0;
@@ -1646,8 +1652,8 @@ void deselectall_editipo()
short findnearest_ipovert(IpoCurve **icu, BezTriple **bezt)
{
- /* selected krijgen een nadeel */
- /* in icu en (bezt of bp) wordt nearest weggeschreven */
+ /* selected verts get a disadvantage */
+ /* in icu and (bezt or bp) the nearest is written */
/* return 0 1 2: handlepunt */
EditIpo *ei;
BezTriple *bezt1;
@@ -1686,7 +1692,7 @@ short findnearest_ipovert(IpoCurve **icu, BezTriple **bezt)
}
if(ei->disptype!=IPO_DISPBITS && ei->icu->ipo==IPO_BEZ) {
- /* middelste punten een klein voordeel */
+ /* middle points get an advantage */
temp= -3+abs(mval[0]- bezt1->s[0][0])+ abs(mval[1]- bezt1->s[0][1]);
if( bezt1->f1 & 1) temp+=5;
if(temp<dist) {
@@ -1788,13 +1794,13 @@ void do_ipo_selectbuttons()
if(G.sipo->showkey) return;
- /* geen editipo toestaan: editipo's naar selected omzetten */
+ /* do not allow editipo here: convert editipos to selected */
get_status_editipo();
if(totipo_edit) {
set_editflag_editipo();
}
- /* welke */
+ /* which */
getmouseco_areawin(mval);
nr= -(mval[1]-curarea->winy+30-G.sipo->butofs-IPOBUTY)/IPOBUTY;
@@ -1970,8 +1976,8 @@ IpoCurve *get_ipocurve(ID *from, short type, int adrcode, Ipo *useipo)
Ipo *ipo= 0;
IpoCurve *icu=0;
- /* return 0 als lib */
- /* ook testen of ipo en ipocurve bestaan */
+ /* return 0 if lib */
+ /* also test if ipo and ipocurve exist */
if (useipo==NULL) {
@@ -2036,7 +2042,7 @@ void insert_vert_ipo(IpoCurve *icu, float x, float y)
icu->totvert= 1;
}
else {
- /* alle vertices deselect */
+ /* all vertices deselect */
for(a=0; a<icu->totvert; a++, bezt++) {
bezt->f1= bezt->f2= bezt->f3= 0;
}
@@ -2044,7 +2050,7 @@ void insert_vert_ipo(IpoCurve *icu, float x, float y)
bezt= icu->bezt;
for(a=0; a<=icu->totvert; a++, bezt++) {
- /* geen dubbele punten */
+ /* no double points */
if(a<icu->totvert && (bezt->vec[1][0]>x-IPOTHRESH && bezt->vec[1][0]<x+IPOTHRESH)) {
*(bezt)= beztr;
break;
@@ -2071,7 +2077,7 @@ void insert_vert_ipo(IpoCurve *icu, float x, float y)
calchandles_ipocurve(icu);
- /* handletype goedzetten */
+ /* set handletype */
if(icu->totvert>2) {
h1= h2= HD_AUTO;
if(a>0) h1= (bezt-1)->h2;
@@ -2120,7 +2126,7 @@ void add_vert_ipo()
insert_vert_ipo(ei->icu, x, y);
- /* voor zekerheid: als icu 0 was, of maar 1 curve visible */
+ /* to be sure: if icu was 0, or only 1 curve visible */
ei->flag |= IPO_SELECT;
ei->icu->flag= ei->flag;
@@ -2144,7 +2150,7 @@ void add_duplicate_editipo()
if(G.sipo->showkey || (ei->flag & IPO_EDIT)) {
icu= ei->icu;
- /* hoeveel punten */
+ /* how many points */
tot= 0;
b= icu->totvert;
bezt= icu->bezt;
@@ -2199,7 +2205,7 @@ void remove_doubles_ipo()
for(a=0; a<G.sipo->totipo; a++, ei++) {
if ISPOIN3(ei, flag & IPO_VISIBLE, icu, icu->bezt) {
- /* OF de curve is selected OF in editmode OF in keymode */
+ /* OR the curve is selected OR in editmode OR in keymode */
mode= 0;
if(G.sipo->showkey || (ei->flag & IPO_EDIT)) mode= 1;
else if(ei->flag & IPO_SELECT) mode= 2;
@@ -2212,16 +2218,16 @@ void remove_doubles_ipo()
bezt++;
while(b--) {
- /* mag er verwijderd worden? */
+ /* can we remove? */
if(mode==2 || (bezt->f2 & 1)) {
- /* verschillen de punten? */
+ /* are the points different? */
if( fabs( bezt->vec[1][0]-newb->vec[1][0] ) > 0.9 ) {
newb++;
*newb= *bezt;
}
else {
- /* gemiddelde */
+ /* median */
VecMidf(newb->vec[0], newb->vec[0], bezt->vec[0]);
VecMidf(newb->vec[1], newb->vec[1], bezt->vec[1]);
VecMidf(newb->vec[2], newb->vec[2], bezt->vec[2]);
@@ -2247,9 +2253,9 @@ void remove_doubles_ipo()
}
}
- editipo_changed(G.sipo, 1); /* maakt ook ipokeys opnieuw! */
+ editipo_changed(G.sipo, 1); /* makes ipokeys again! */
- /* dubbele keys weg */
+ /* remove double keys */
if(G.sipo->showkey) {
ik= G.sipo->ipokey.first;
ikn= ik->next;
@@ -2270,7 +2276,7 @@ void remove_doubles_ipo()
}
- editipo_changed(G.sipo, 1); /* maakt ook ipokeys opnieuw! */
+ editipo_changed(G.sipo, 1); /* makes ipokeys agian! */
}
deselectall_editipo();
@@ -2294,14 +2300,14 @@ void join_ipo()
}
else if(mode!=1) return;
- /* eerst: meerdere geselecteerde verts in 1 curve */
+ /* first: multiple selected verts in 1 curve */
ei= G.sipo->editipo;
for(a=0; a<G.sipo->totipo; a++, ei++) {
if ISPOIN3(ei, flag & IPO_VISIBLE, icu, icu->bezt) {
if(G.sipo->showkey || (ei->flag & IPO_EDIT)) {
icu= ei->icu;
- /* hoeveel punten */
+ /* how many points */
tot= 0;
b= icu->totvert;
bezt= icu->bezt;
@@ -2315,7 +2321,7 @@ void join_ipo()
icu->totvert-= tot;
newb= MEM_mallocN(icu->totvert*sizeof(BezTriple), "bezt");
- /* het eerste punt wordt het nieuwe punt */
+ /* the first point is the new one */
beztn= newb+1;
tot= 0;
@@ -2353,9 +2359,9 @@ void join_ipo()
}
}
- /* dan: in keymode: meerdere geselecteerde keys samenvoegen */
+ /* next: in keymode: join multiple selected keys */
- editipo_changed(G.sipo, 1); /* maakt ook ipokeys opnieuw! */
+ editipo_changed(G.sipo, 1); /* makes ipokeys again! */
if(G.sipo->showkey) {
ik= G.sipo->ipokey.first;
@@ -2572,7 +2578,7 @@ void mouse_select_ipo()
getmouseco_areawin(mval);
areamouseco_to_ipoco(G.v2d, mval, &x, &y);
- /* hoeveel is 20 pixels? */
+ /* how much is 20 pixels? */
mindist= (float)(20.0*(G.v2d->cur.ymax-G.v2d->cur.ymin)/(float)curarea->winy);
kb= key->block.first;
@@ -2591,25 +2597,12 @@ void mouse_select_ipo()
ok= okee("Copy Key after leaving EditMode");
}
if(ok) {
- /* doet ook alle keypos */
+ /* also does all keypos */
deselectall_editipo();
- /* oldflag= actkb->flag; */
-
- /* if(G.qual & LR_SHIFTKEY); */
- /* else { */
- /* deselectall_key(); */
- /* } */
-
- /* if(G.qual & LR_SHIFTKEY) { */
- /* if(oldflag & 1) actkb->flag &= ~1; */
- /* else actkb->flag |= 1; */
- /* } */
- /* else { */
- actkb->flag |= 1;
- /* } */
+ actkb->flag |= 1;
- /* bereken keypos */
+ /* calc keypos */
showkeypos((Key *)G.sipo->from, actkb);
}
}
@@ -2795,6 +2788,7 @@ int selected_bezier_loop(int (*looptest)(EditIpo *),
ipocurve_function(ei->icu);
}
/* nufte flourdje zim ploopydu <-- random dutch looking comment ;) */
+ /* looks more like russian to me! (ton) */
}
return 0;
@@ -3330,7 +3324,7 @@ void paste_editipo()
error("Incompatible paste");
}
else {
- /* problemen voorkomen: andere splines visible dan select */
+ /* prevent problems: splines visible that are not selected */
if(totipo_vis==totipo_sel) totipo_vis= 0;
icu= ipocopybuf.first;
@@ -3376,7 +3370,7 @@ void set_exprap_ipo(int mode)
int a;
if(G.sipo->ipo && G.sipo->ipo->id.lib) return;
- /* in geval van keys: altijd ok */
+ /* in case of keys: always ok */
ei= G.sipo->editipo;
for(a=0; a<G.sipo->totipo; a++, ei++) {
@@ -3425,7 +3419,7 @@ void set_speed_editipo(float speed)
if(G.sipo->ipo && G.sipo->ipo->id.lib) return;
- /* uitgaande van 1 visible curve, selected punt, bijhorende punten: lencorr! */
+ /* starting with 1 visible curve, selected point, associated points: do lencorr! */
ei= G.sipo->editipo;
for(a=0; a<G.sipo->totipo; a++, ei++) {
@@ -3514,7 +3508,7 @@ void insertkey(ID *id, int adrcode)
if( GS(id->name)==ID_OB ) {
ob= (Object *)id;
if(ob->sf!=0.0 && (ob->ipoflag & OB_OFFS_OB) ) {
- /* eigenlijk frametofloat overniew berekenen! daarvoor CFRA als float door kunnen geven */
+ /* actually frametofloat calc again! */
cfra-= ob->sf*G.scene->r.framelen;
}
}
@@ -3550,7 +3544,7 @@ void insertkey_editipo()
else if(ei->flag & IPO_SELECT) ok= 1;
if(ok) {
- /* aantal tellen */
+ /* count amount */
if(event==1) tot= 1;
else {
ik= G.sipo->ipokey.first;
@@ -3562,7 +3556,7 @@ void insertkey_editipo()
}
if(tot) {
- /* correctie voor ob timeoffs */
+ /* correction for ob timeoffs */
cfra= frame_to_float(CFRA);
id= G.sipo->from;
if(id && GS(id->name)==ID_OB ) {
@@ -3580,7 +3574,7 @@ void insertkey_editipo()
}
insertvals= MEM_mallocN(sizeof(float)*2*tot, "insertkey_editipo");
- /* zeker zijn dat icu->curval klopt */
+ /* make sure icu->curval is correct */
calc_ipo(G.sipo->ipo, cfra);
if(event==1) {
@@ -3939,7 +3933,7 @@ void common_insertkey()
if TESTBASELIB(base) {
id= (ID *)(base->object);
- /* alle curves in ipo deselect */
+ /* all curves in ipo deselect */
if(base->object->ipo) {
icu= base->object->ipo->curve.first;
while(icu) {
@@ -3965,14 +3959,14 @@ void common_insertkey()
insertkey(id, OB_SIZE_Z);
}
if(event==5) {
- /* localview weghalen */
+ /* remove localview */
tlay= base->object->lay;
base->object->lay &= 0xFFFFFF;
insertkey(id, OB_LAY);
base->object->lay= tlay;
}
if(event==8) {
- /* deze patch moet omdat duplicators de positie van effg veranderen */
+ /* a patch, can be removed (old ika) */
Ika *ika= ob->data;
VecMat4MulVecfl(ika->effg, ob->obmat, ika->effn);
@@ -3998,10 +3992,10 @@ void common_insertkey()
/* IPOKEY:
*
- * er zijn drie manieren om hiermee om te gaan:
- * 1. hieronder: voor tekenen en editen in Ipo window
- * 2. voor tekenen keys in View3D (zie ipo.c en drawobject.c)
- * 3. voor editen keys in View3D (hieronder en editobject.c)
+ * there are three ways to use this system:
+ * 1. below: for drawing and editing in Ipo window
+ * 2. for drawing key positions in View3D (see ipo.c and drawobject.c)
+ * 3. editing keys in View3D (below and in editobject.c)
*
*/
@@ -4027,7 +4021,7 @@ void add_to_ipokey(ListBase *lb, BezTriple *bezt, int nr, int len)
while(ik) {
if( ik->val==bezt->vec[1][0] ) {
- if(ik->data[nr]==0) { /* dubbele punten! */
+ if(ik->data[nr]==0) { /* double points! */
ik->data[nr]= bezt;
if(bezt->f2 & 1) ik->flag= 1;
return;
@@ -4077,7 +4071,7 @@ void make_ipokey(void)
}
}
- /* selectflags testen */
+ /* test selectflags */
ik= lb->first;
while(ik) {
sel= desel= 0;
@@ -4121,7 +4115,7 @@ void make_ipokey_transform(Object *ob, ListBase *lb, int sel)
if(ob->ipo==0) return;
if(ob->ipo->showkey==0) return;
- /* testen: zijn er delta curves? */
+ /* test: are there delta curves? */
icu= ob->ipo->curve.first;
while(icu) {
if(icu->flag & IPO_VISIBLE) {
@@ -4202,7 +4196,7 @@ void make_ipokey_transform(Object *ob, ListBase *lb, int sel)
}
}
-void update_ipokey_val() /* na verplaatsen vertices */
+void update_ipokey_val() /* after moving vertices */
{
IpoKey *ik;
int a;
@@ -4276,17 +4270,17 @@ void set_ipo_pointers_transob(IpoKey *ik, TransOb *tob)
}
}
- /* oldvals voor o.a. undo */
+ /* oldvals for e.g. undo */
if(tob->locx) set_tob_old(tob->oldloc, tob->locx);
if(tob->locy) set_tob_old(tob->oldloc+1, tob->locy);
if(tob->locz) set_tob_old(tob->oldloc+2, tob->locz);
- /* bewaar de eerste oldrot, ivm mapping curves ('1'=10 graden) en correcte berekening */
+ /* store first oldrot, for mapping curves ('1'=10 degrees) and correct calculation */
if(tob->rotx) set_tob_old(tob->oldrot+3, tob->rotx);
if(tob->roty) set_tob_old(tob->oldrot+4, tob->roty);
if(tob->rotz) set_tob_old(tob->oldrot+5, tob->rotz);
- /* bewaar de eerste oldsize, dit mag niet de dsize zijn! */
+ /* store the first oldsize, this is not allowed to be dsize! */
if(tob->sizex) set_tob_old(tob->oldsize+3, tob->sizex);
if(tob->sizey) set_tob_old(tob->oldsize+4, tob->sizey);
if(tob->sizez) set_tob_old(tob->oldsize+5, tob->sizez);
@@ -4326,7 +4320,7 @@ void nextkey(ListBase *elems, int dir)
else if(ik==0) previk->flag= 0;
}
- /* als geen een key select: */
+ /* when no key select: */
if(totsel==0) {
if(dir==1) ik= elems->first;
else ik= elems->last;
@@ -4344,7 +4338,7 @@ static int float_to_frame (float frame)
return to;
}
-void movekey_ipo(int dir) /* alleen extern aanroepen vanuit view3d queue */
+void movekey_ipo(int dir) /* only call external from view3d queue */
{
IpoKey *ik;
float toframe = 0.0;
@@ -4381,7 +4375,7 @@ void movekey_ipo(int dir) /* alleen extern aanroepen vanuit view3d queue */
}
-void movekey_obipo(int dir) /* alleen extern aanroepen vanuit view3d queue */
+void movekey_obipo(int dir) /* only call external from view3d queue */
{
Base *base;
Object *ob;
@@ -4436,7 +4430,7 @@ void movekey_obipo(int dir) /* alleen extern aanroepen vanuit view3d queue */
}
-void nextkey_ipo(int dir) /* aanroepen vanuit ipo queue */
+void nextkey_ipo(int dir) /* call from ipo queue */
{
IpoKey *ik;
int a;
@@ -4445,7 +4439,7 @@ void nextkey_ipo(int dir) /* aanroepen vanuit ipo queue */
nextkey(&G.sipo->ipokey, dir);
- /* kopieeren naar beziers */
+ /* copy to beziers */
ik= G.sipo->ipokey.first;
while(ik) {
for(a=0; a<G.sipo->totipo; a++) {
@@ -4460,7 +4454,7 @@ void nextkey_ipo(int dir) /* aanroepen vanuit ipo queue */
if(G.sipo->blocktype == ID_OB) allqueue(REDRAWVIEW3D, 0);
}
-void nextkey_obipo(int dir) /* alleen extern aanroepen vanuit view3d queue */
+void nextkey_obipo(int dir) /* only call external from view3d queue */
{
Base *base;
Object *ob;
@@ -4482,7 +4476,7 @@ void nextkey_obipo(int dir) /* alleen extern aanroepen vanuit view3d queue */
nextkey(&elems, dir);
- /* kopieeren naar beziers */
+ /* copy to beziers */
ik= elems.first;
while(ik) {
for(a=0; a<OB_TOTIPO; a++) {
@@ -4584,11 +4578,11 @@ void transform_ipo(int mode)
if(G.sipo->ipo && G.sipo->ipo->id.lib) return;
if(G.sipo->editipo==0) return;
- if(mode=='r') return; /* vanuit gesture */
+ if(mode=='r') return; /* from gesture */
INIT_MINMAX(min, max);
- /* welke vertices doen mee */
+ /* which vertices are involved */
get_status_editipo();
if(totipo_vertsel) {
tot= totipo_vertsel;
@@ -4611,7 +4605,7 @@ void transform_ipo(int mode)
VECCOPY(tv->oldloc, tv->loc);
if(ei->disptype==IPO_DISPBITS) tv->flag= 1;
- /* let op: we nemen middelste vertex */
+ /* we take the middle vertex */
DO_MINMAX2(bezt->vec[1], min, max);
tv++;
@@ -4621,7 +4615,7 @@ void transform_ipo(int mode)
VECCOPY(tv->oldloc, tv->loc);
if(ei->disptype==IPO_DISPBITS) tv->flag= 1;
- /* let op: we nemen middelste vertex */
+ /* we take the middle vertex */
DO_MINMAX2(bezt->vec[1], min, max);
tv++;
@@ -4732,7 +4726,7 @@ void transform_ipo(int mode)
if(midtog) dvec[proj]= 0.0;
- /* vec wordt verderop nog gebruikt: remake_ipo_transverts */
+ /* vec is reused below: remake_ipo_transverts */
vec[0]= dvec[0];
vec[1]= dvec[1];
@@ -4780,7 +4774,7 @@ void transform_ipo(int mode)
for(a=0; a<G.sipo->totipo; a++, ei++) {
if ISPOIN(ei, flag & IPO_VISIBLE, icu) {
- /* let op: als de tijd verkeerd is: niet de handles corrigeren */
+ /* watch it: if the time is wrong: do not correct handles */
if (test_time_ipocurve(ei->icu) ) dosort++;
else testhandles_ipocurve(ei->icu);
}
@@ -4924,7 +4918,7 @@ void clever_numbuts_ipo()
if(G.sipo->ipo && G.sipo->ipo->id.lib) return;
if(G.sipo->editipo==0) return;
- /* welke vertices doen mee */
+ /* which vertices are involved */
get_status_editipo();
if(G.qual & LR_SHIFTKEY) totbut= 1;
@@ -5074,7 +5068,7 @@ void sampledata_to_ipocurve(float *data, int sfra, int efra, IpoCurve *icu)
if(icu->bezt) MEM_freeN(icu->bezt);
icu->bezt= 0;
- tot= 1; /* eerste punt */
+ tot= 1; /* first point */
da= data+1;
for(a=sfra+1; a<efra; a++, da++) {
if( IS_EQ(da[0], da[1])==0 && IS_EQ(da[1], da[2])==0 ) tot++;
@@ -5097,12 +5091,12 @@ void sampledata_to_ipocurve(float *data, int sfra, int efra, IpoCurve *icu)
void ipo_record()
{
- /* 1 of 2 aktieve curves
- * kopie maken (ESC)
+ /* only 1 or 2 active curves
+ * make a copy (ESC)
*
- * nulpunt is de huidige stand (of 0)
- * dx (dy identiek) is de hoogteverhouding
- * CTRL start record
+ * reference point is the current situation (or 0)
+ * dx (dy) is the height correction factor
+ * CTRL: start record
*/
extern double tottime;
EditIpo *ei, *ei1=0, *ei2=0;
@@ -5147,7 +5141,7 @@ void ipo_record()
return;
}
- /* curves gereedmaken, startwaardes */
+ /* make curves ready, start values */
if(ei1->icu==0) ei1->icu= get_ipocurve(G.sipo->from, G.sipo->blocktype, ei1->adrcode, 0);
if(ei1->icu==0) return;
poin= get_ipo_poin(G.sipo->from, ei1->icu, &type);
@@ -5167,7 +5161,7 @@ void ipo_record()
fac= G.v2d->cur.ymax - G.v2d->cur.ymin;
fac/= (float)curarea->winy;
- /* welke area */
+ /* which area */
oldarea= curarea;
sa= G.curscreen->areabase.first;
while(sa) {
@@ -5183,7 +5177,7 @@ void ipo_record()
}
if(sa) areawinset(sa->win);
- /* kandie? */
+ /* can we? */
while(get_mbut()&L_MOUSE) BIF_wait_for_statechange();
data1= MEM_callocN(sizeof(float)*(EFRA-SFRA+1), "data1");
data2= MEM_callocN(sizeof(float)*(EFRA-SFRA+1), "data2");
@@ -5208,7 +5202,7 @@ void ipo_record()
set_timecursor(cfra);
- /* ipo doen: eerst alles daarna de specifieke */
+ /* do ipo: first all, then the specific ones */
if(anim==2) {
do_all_ipos();
do_all_keys();
@@ -5236,7 +5230,7 @@ void ipo_record()
if(sa) scrarea_do_windraw(sa);
- /* minimaal swaptime laten voorbijgaan */
+ /* minimal wait swaptime */
tottime -= swaptime;
while (update_time()) PIL_sleep_ms(1);
@@ -5270,14 +5264,14 @@ void ipo_record()
sampledata_to_ipocurve(data1+sfra-SFRA, sfra, efra, ei1->icu);
if(ei2) sampledata_to_ipocurve(data2+sfra-SFRA, sfra, efra, ei2->icu);
- /* vervelend als dat aanstaat */
+ /* not nice when this is on */
if(G.sipo->showkey) {
G.sipo->showkey= 0;
free_ipokey(&G.sipo->ipokey);
}
}
else {
- /* undo: startwaardes */
+ /* undo: start values */
poin= get_ipo_poin(G.sipo->from, ei1->icu, &type);
if(poin) write_ipo_poin(poin, type, or1);
if(ei1->icu->bezt==0) {
@@ -5307,7 +5301,7 @@ void ipo_record()
scrarea_queue_redraw(oldarea);
CFRA= cfrao;
- /* vooropig? */
+ /* for the time being? */
update_for_newframe();
MEM_freeN(data1);
diff --git a/source/blender/src/editkey.c b/source/blender/src/editkey.c
index b1a2ec1a2ba..0d8b04339c1 100644
--- a/source/blender/src/editkey.c
+++ b/source/blender/src/editkey.c
@@ -192,7 +192,7 @@ void insert_meshkey(Mesh *me)
sort_keys(me->key);
- /* curent actief: */
+ /* curent active: */
kkb= key->block.first;
while(kkb) {
kkb->flag &= ~SELECT;
@@ -272,7 +272,7 @@ void insert_lattkey(Lattice *lt)
sort_keys(lt->key);
- /* curent actief: */
+ /* curent active: */
kkb= key->block.first;
while(kkb) {
kkb->flag &= ~SELECT;
@@ -292,7 +292,7 @@ void curve_to_key(Curve *cu, KeyBlock *kb, ListBase *nurb)
float *fp;
int a, tot;
- /* tellen */
+ /* count */
tot= count_curveverts(nurb);
if(tot==0) return;
@@ -315,7 +315,7 @@ void curve_to_key(Curve *cu, KeyBlock *kb, ListBase *nurb)
fp+= 3;
VECCOPY(fp, bezt->vec[2]);
fp+= 3;
- fp+= 3; /* alfa's */
+ fp+= 3; /* alphas */
bezt++;
}
}
@@ -361,7 +361,7 @@ void key_to_curve(KeyBlock *kb, Curve *cu, ListBase *nurb)
fp+= 3;
VECCOPY(bezt->vec[2], fp);
fp+= 3;
- fp+= 3; /* alfa's */
+ fp+= 3; /* alphas */
tot-= 3;
bezt++;
@@ -415,7 +415,7 @@ void insert_curvekey(Curve *cu)
sort_keys(cu->key);
- /* curent actief: */
+ /* curent active: */
kkb= key->block.first;
while(kkb) {
kkb->flag &= ~SELECT;
@@ -457,7 +457,7 @@ void showkeypos(Key *key, KeyBlock *kb)
Curve *cu;
int tot;
- /* vanuit ipo */
+ /* from ipo */
ob= OBACT;
if(ob==0) return;
@@ -483,7 +483,6 @@ void showkeypos(Key *key, KeyBlock *kb)
tot= count_curveverts(&cu->nurb);
cp_cu_key(cu, kb, 0, tot);
-/* make_displists_by_obdata(me); */
make_displists_by_obdata(cu);
}
@@ -541,7 +540,7 @@ void delete_key(void)
else if(GS(key->from->name)==ID_LT) ((Lattice *)key->from)->key= 0;
free_libblock_us(&(G.main->key), key);
- scrarea_queue_headredraw(curarea); /* ipo ook weg */
+ scrarea_queue_headredraw(curarea); /* ipo remove too */
}
else do_spec_key(key);
@@ -568,7 +567,7 @@ void move_keys(void)
key= (Key *)G.sipo->from;
if(key==0) return;
- /* welke keys doen mee */
+ /* which keys are involved */
kb= key->block.first;
while(kb) {
if(kb->flag & SELECT) tot++;
@@ -650,7 +649,7 @@ void move_keys(void)
sort_keys(key);
do_spec_key(key);
- /* voor boundbox */
+ /* for boundbox */
editipo_changed(G.sipo, 0);
MEM_freeN(transmain);
diff --git a/source/blender/src/editlattice.c b/source/blender/src/editlattice.c
index 599af1e4947..2c958d92110 100644
--- a/source/blender/src/editlattice.c
+++ b/source/blender/src/editlattice.c
@@ -178,7 +178,7 @@ void load_editLatt(void)
lt= G.obedit->data;
- /* zijn er keys? */
+ /* are there keys? */
if(lt->key) {
actkey= lt->key->block.first;
while(actkey) {
@@ -188,7 +188,7 @@ void load_editLatt(void)
}
if(actkey) {
- /* aktieve key: vertices */
+ /* active key: vertices */
tot= editLatt->pntsu*editLatt->pntsv*editLatt->pntsw;
if(actkey->data) MEM_freeN(actkey->data);
@@ -259,14 +259,14 @@ void deselectall_Latt(void)
static BPoint *findnearestLattvert(int sel)
{
- /* sel==1: selected krijgen een nadeel */
- /* in bp wordt nearest weggeschreven */
+ /* sel==1: selected get a disadvantage */
+ /* in bp nearest is written */
BPoint *bp1, *bp;
short dist= 100, temp, mval[2], a;
bp= 0;
- /* projektie doen */
+ /* do projection */
calc_lattverts_ext(); /* drawobject.c */
getmouseco_areawin(mval);
diff --git a/source/blender/src/editmball.c b/source/blender/src/editmball.c
index c187a70aa08..3ab0dff5b69 100644
--- a/source/blender/src/editmball.c
+++ b/source/blender/src/editmball.c
@@ -131,7 +131,7 @@ void add_primitiveMball(int dummy_argument)
check_editmode(OB_MBALL);
- /* als geen obedit: nieuw object en in editmode gaan */
+ /* if no obedit: new object and enter editmode */
if(G.obedit==0) {
add_object(OB_MBALL);
base_init_from_view3d(BASACT, G.vd);
@@ -143,14 +143,14 @@ void add_primitiveMball(int dummy_argument)
setcursor_space(SPACE_VIEW3D, CURSOR_EDIT);
}
- /* deselecteren */
+ /* deselect */
ml= editelems.first;
while(ml) {
ml->flag &= ~SELECT;
ml= ml->next;
}
- /* imat en centrum en afmeting */
+ /* imat and centre and size */
Mat3CpyMat4(mat, G.obedit->obmat);
curs= give_cursor();
@@ -218,7 +218,7 @@ void mouse_mball()
hits= selectprojektie(buffer, 0, 0, 0, 0);
- /* bestaat startelem? */
+ /* does startelem exist? */
ml= editelems.first;
while(ml) {
if(ml==startelem) break;
diff --git a/source/blender/src/editmesh.c b/source/blender/src/editmesh.c
index 19c0a28de13..b169ebf3fa3 100644
--- a/source/blender/src/editmesh.c
+++ b/source/blender/src/editmesh.c
@@ -30,6 +30,9 @@
* ***** END GPL/BL DUAL LICENSE BLOCK *****
*/
+/* main mesh editing routines. please note that 'vlak' is used here to denote a 'face'. */
+/* at that time for me a face was something at the frontside of a human head! (ton) */
+
#include <stdlib.h>
#include <string.h>
#include <math.h>
@@ -106,7 +109,7 @@ static float convex(float *v1, float *v2, float *v3, float *v4);
/* extern ListBase fillvertbase, filledgebase; */ /* scanfill.c, in
the lib... already in BLI_blenlib.h */
-/* voor debug:
+/* for debug:
#define free(a) freeN(a)
#define malloc(a) mallocN(a, "malloc")
#define calloc(a, b) callocN((a)*(b), "calloc")
@@ -162,7 +165,7 @@ static short icovlak[20][3] = {
/* ***************** HASH ********************* */
-/* HASH struct voor snel opzoeken edges */
+/* HASH struct quickly finding of edges */
struct HashEdge {
struct EditEdge *eed;
struct HashEdge *next;
@@ -268,12 +271,6 @@ EditEdge *findedgelist(EditVert *v1, EditVert *v2)
v1= v3;
}
- /* eerst even op de flip-plek kijken */
-
-/* he= hashedgetab + EDHASH(v2->hash, v1->hash); */
-/* if(he->eed && he->eed->v1==v1 && he->eed->v2==v2) return he->eed; */
-
-
he= hashedgetab + EDHASH(v1->hash, v2->hash);
while(he) {
@@ -287,18 +284,10 @@ EditEdge *findedgelist(EditVert *v1, EditVert *v2)
static void insert_hashedge(EditEdge *eed)
{
- /* er van uitgaande dat eed nog niet in lijst zit, en eerst een find is gedaan */
+ /* assuming that eed is not in the list yet, and that a find has been done before */
struct HashEdge *first, *he;
- /* eerst even op de flip-plek kijken */
-/* he= hashedgetab + EDHASH(eed->v2->hash, eed->v1->hash); */
-
-/* if(he->eed==0) { */
-/* he->eed= eed; */
-/* return; */
-/* } */
-
first= hashedgetab + EDHASH(eed->v1->hash, eed->v2->hash);
if( first->eed==0 ) {
@@ -314,34 +303,16 @@ static void insert_hashedge(EditEdge *eed)
static void remove_hashedge(EditEdge *eed)
{
- /* er van uitgaande dat eed in lijst zit */
+ /* assuming eed is in the list */
struct HashEdge *first, *he, *prev=NULL;
- /* eerst even op de flip-plek kijken */
-/* first= hashedgetab + EDHASH(eed->v2->hash, eed->v1->hash); */
-
-/* if(first->eed==eed) { */
- /* uit lijst verwijderen */
-
-/* if(first->next) { */
-/* he= first->next; */
-/* first->eed= he->eed; */
-/* first->next= he->next; */
-/* free(he); */
-/* } */
-/* else first->eed= 0; */
-
-/* return; */
-/* } */
-
-
he=first= hashedgetab + EDHASH(eed->v1->hash, eed->v2->hash);
while(he) {
if(he->eed == eed) {
- /* uit lijst verwijderen */
+ /* remove from list */
if(he==first) {
if(first->next) {
he= first->next;
@@ -366,35 +337,20 @@ void free_hashedgetab(void)
{
struct HashEdge *he, *first, *hen;
int a;
-/* int test[30], nr, toted=0; */
-
- /* for(a=0; a<30; a++) test[a]=0; */
if(hashedgetab) {
first= hashedgetab;
for(a=0; a<EDHASHSIZE; a++, first++) {
he= first->next;
- /* nr= 0; */
- /* if(first->eed) toted++; */
- /* if(first->eed) nr++; */
while(he) {
hen= he->next;
free(he);
he= hen;
- /* nr++; */
}
- /* if(nr>29) nr= 29; */
- /* test[nr]++; */
}
MEM_freeN(hashedgetab);
hashedgetab= 0;
-
- /* printf("toted %d\n", toted); */
- /* toted= 0; */
- /* for(a=0; a<30; a++) { */
- /* printf("tab %d %d\n", a, test[a]); */
- /* } */
}
}
@@ -415,7 +371,7 @@ EditEdge *addedgelist(EditVert *v1, EditVert *v2)
if(v1==v2) return 0;
if(v1==0 || v2==0) return 0;
- /* opzoeken in hashlijst */
+ /* find in hashlist */
eed= findedgelist(v1, v2);
if(eed==0) {
@@ -463,7 +419,7 @@ EditVlak *addvlaklist(EditVert *v1, EditVert *v2, EditVert *v3, EditVert *v4, Ed
EditEdge *e1, *e2=0, *e3=0, *e4=0;
- /* voeg vlak toe aan lijst en doe meteen de edges */
+ /* add face to list and do the edges */
e1= addedgelist(v1, v2);
if(v3) e2= addedgelist(v2, v3);
if(v4) e3= addedgelist(v3, v4); else e3= addedgelist(v3, v1);
@@ -689,9 +645,13 @@ static void edge_drawflags(void)
EditEdge *eed, *e1, *e2, *e3, *e4;
EditVlak *evl;
- /* - tel aantal keren in vlakken gebruikt: 0 en 1 is tekenen
- * - edges meer dan 1 keer: in *vn zit pointer naar (eerste) vlak
- * - loop alle vlakken af, is normaal te afwijkend: tekenen (flag wordt 1)
+ /* - count number of times edges are used in faces: 0 en 1 time means draw edge
+ * - edges more than 1 time used: in *vn is pointer to first face
+ * - check all faces, when normal differs to much: draw (flag becomes 1)
+ */
+
+ /* later on: added flags for 'cylinder' and 'sphere' intersection tests in old
+ game engine (2.04)
*/
recalc_editnormals();
@@ -699,7 +659,7 @@ static void edge_drawflags(void)
/* init */
eve= G.edve.first;
while(eve) {
- eve->f1= 1; /* wordt bij test op nul gezet */
+ eve->f1= 1; /* during test it's set at zero */
eve= eve->next;
}
eed= G.eded.first;
@@ -741,7 +701,7 @@ static void edge_drawflags(void)
}
else {
- /* single-edges afvangen voor cylinder flag */
+ /* handle single-edges for 'test cylinder flag' (old engine) */
eed= G.eded.first;
while(eed) {
@@ -749,7 +709,7 @@ static void edge_drawflags(void)
eed= eed->next;
}
- /* alle vlakken, alle edges met flag==2: vergelijk normaal */
+ /* all faces, all edges with flag==2: compare normal */
evl= G.edvl.first;
while(evl) {
if(evl->e1->f==2) edge_normal_compare(evl->e1, evl);
@@ -773,7 +733,7 @@ static void edge_drawflags(void)
}
}
-static int contrpuntnorm(float *n, float *puno)
+static int contrpuntnorm(float *n, float *puno) /* dutch: check vertex normal */
{
float inp;
@@ -792,7 +752,7 @@ void vertexnormals(int testflip)
EditVlak *evl;
float n1[3], n2[3], n3[3], n4[3], co[4], fac1, fac2, fac3, fac4, *temp;
float *f1, *f2, *f3, *f4, xn, yn, zn;
- float opp, len;
+ float len;
if(G.obedit && G.obedit->type==OB_MESH) {
me= G.obedit->data;
@@ -802,7 +762,7 @@ void vertexnormals(int testflip)
if(G.totvert==0) return;
if(G.totface==0) {
- /* namaak puno's voor halopuno! */
+ /* fake vertex normals for 'halo puno'! */
eve= G.edve.first;
while(eve) {
VECCOPY(eve->no, eve->co);
@@ -819,7 +779,7 @@ void vertexnormals(int testflip)
eve= eve->next;
}
- /* berekenen cos hoeken en oppervlakte en optellen bij puno */
+ /* calculate cosine angles and add to vertex normal */
evl= G.edvl.first;
while(evl) {
VecSubf(n1, evl->v2->co, evl->v1->co);
@@ -831,14 +791,9 @@ void vertexnormals(int testflip)
VecSubf(n3, evl->v1->co, evl->v3->co);
Normalise(n3);
- /* opp= AreaT3Dfl(evl->v1->co, evl->v2->co, evl->v3->co); */
- /* if(opp!=0.0) opp=1.0/opp; */
- /* opp= sqrt(opp); */
- /* for smooth subdivide...*/
- opp= 1.0;
- co[0]= opp*saacos(-n3[0]*n1[0]-n3[1]*n1[1]-n3[2]*n1[2]);
- co[1]= opp*saacos(-n1[0]*n2[0]-n1[1]*n2[1]-n1[2]*n2[2]);
- co[2]= opp*saacos(-n2[0]*n3[0]-n2[1]*n3[1]-n2[2]*n3[2]);
+ co[0]= saacos(-n3[0]*n1[0]-n3[1]*n1[1]-n3[2]*n1[2]);
+ co[1]= saacos(-n1[0]*n2[0]-n1[1]*n2[1]-n1[2]*n2[2]);
+ co[2]= saacos(-n2[0]*n3[0]-n2[1]*n3[1]-n2[2]*n3[2]);
}
else {
@@ -847,15 +802,10 @@ void vertexnormals(int testflip)
Normalise(n3);
Normalise(n4);
- /* opp= AreaQ3Dfl(evl->v1->co, evl->v2->co, evl->v3->co, evl->v4->co); */
- /* if(opp!=0.0) opp=1.0/opp; */
- /* opp= sqrt(opp); */
- /* for smooth subdivide...*/
- opp= 1.0;
- co[0]= opp*saacos(-n4[0]*n1[0]-n4[1]*n1[1]-n4[2]*n1[2]);
- co[1]= opp*saacos(-n1[0]*n2[0]-n1[1]*n2[1]-n1[2]*n2[2]);
- co[2]= opp*saacos(-n2[0]*n3[0]-n2[1]*n3[1]-n2[2]*n3[2]);
- co[3]= opp*saacos(-n3[0]*n4[0]-n3[1]*n4[1]-n3[2]*n4[2]);
+ co[0]= saacos(-n4[0]*n1[0]-n4[1]*n1[1]-n4[2]*n1[2]);
+ co[1]= saacos(-n1[0]*n2[0]-n1[1]*n2[1]-n1[2]*n2[2]);
+ co[2]= saacos(-n2[0]*n3[0]-n2[1]*n3[1]-n2[2]*n3[2]);
+ co[3]= saacos(-n3[0]*n4[0]-n3[1]*n4[1]-n3[2]*n4[2]);
}
temp= evl->v1->no;
@@ -887,7 +837,7 @@ void vertexnormals(int testflip)
evl= evl->next;
}
- /* normaliseren puntnormalen */
+ /* normalise vertex normals */
eve= G.edve.first;
while(eve) {
len= Normalise(eve->no);
@@ -898,7 +848,7 @@ void vertexnormals(int testflip)
eve= eve->next;
}
- /* puntnormaal omklap-vlaggen voor bij shade */
+ /* vertex normal flip-flags for shade (render) */
evl= G.edvl.first;
while(evl) {
evl->f=0;
@@ -928,7 +878,7 @@ void vertexnormals(int testflip)
}
}
}
- /* proj voor cubemap! */
+ /* projection for cubemap! */
xn= fabs(evl->n[0]);
yn= fabs(evl->n[1]);
zn= fabs(evl->n[2]);
@@ -996,7 +946,7 @@ void make_editMesh(void)
if(G.obedit==0) return;
- /* ivm reload */
+ /* because of reload */
free_editMesh();
me= get_mesh(G.obedit);
@@ -1023,7 +973,7 @@ void make_editMesh(void)
tot= actkey->totelem;
}
- /* editverts aanmaken */
+ /* make editverts */
mvert= me->mvert;
evlist= (EditVert **)MEM_mallocN(tot*sizeof(void *),"evlist");
@@ -1060,7 +1010,7 @@ void make_editMesh(void)
else {
unsigned int *mcol;
- /* edges en vlakken maken */
+ /* make edges and faces */
mface= me->mface;
tface= me->tface;
mcol= (unsigned int *)me->mcol;
@@ -1126,12 +1076,6 @@ static void fix_faceindices(MFace *mface, EditVlak *evl, int nr)
float tmpuv[2];
unsigned int tmpcol;
-/*
-mface = ((MFace *) me->mface) + index;
- tface = ((TFace *) me->tface) + index;
-
-*/
-
/* first test if the face is legal */
if(mface->v3 && mface->v3==mface->v4) {
@@ -1150,7 +1094,7 @@ mface = ((MFace *) me->mface) + index;
nr--;
}
- /* voorkom dat een nul op de verkeerde plek staat */
+ /* prevent a zero index value at the wrong location */
if(nr==2) {
if(mface->v2==0) SWAP(int, mface->v1, mface->v2);
}
@@ -1248,7 +1192,7 @@ void load_editMesh(void)
ototvert= me->totvert;
- /* zijn er keys? */
+ /* are there keys? */
if(me->key) {
actkey= me->key->block.first;
while(actkey) {
@@ -1259,7 +1203,7 @@ void load_editMesh(void)
if(actkey && me->key->refkey!=actkey) {
- /* aktieve key && niet de refkey: alleen vertices */
+ /* active key && not the refkey: only vertices */
if(G.totvert) {
if(actkey->data) MEM_freeN(actkey->data);
@@ -1276,8 +1220,8 @@ void load_editMesh(void)
}
}
else if(me->key && actkey==0) {
- /* er zijn keys, alleen veranderingen in mverts schrijven */
- /* als aantal vertices verschillen, beetje onvoorspelbaar */
+ /* there are keys, only write changes in mverts */
+ /* a bit unpredictable when the amount of vertices differ */
eve= G.edve.first;
mvert= me->mvert;
@@ -1288,15 +1232,15 @@ void load_editMesh(void)
}
}
else {
- /* als er keys zijn: de refkey, anders gewoon de me */
+ /* when there are keys: the refkey, otherise the mesh */
- /* deze telt ook of edges niet in vlakken zitten: */
- /* eed->f==0 niet in vlak, f==1 is tekenen */
- /* eed->f1 : flag voor dynaface (cylindertest) */
- /* eve->f1 : flag voor dynaface (sphere test) */
+ /* this one also tests of edges are not in faces: */
+ /* eed->f==0: not in face, f==1: draw it */
+ /* eed->f1 : flag for dynaface (cylindertest, old engine) */
+ /* eve->f1 : flag for dynaface (sphere test, old engine) */
edge_drawflags();
- /* LET OP: op evl->f de punoflag */
+ /* WATCH IT: in evl->f is punoflag (for vertex normal) */
vertexnormals( (me->flag & ME_NOPUNOFLIP)==0 );
eed= G.eded.first;
@@ -1305,10 +1249,10 @@ void load_editMesh(void)
eed= eed->next;
}
- /* nieuw Face blok */
+ /* new Face block */
if(G.totface==0) mface= 0;
else mface= MEM_callocN(G.totface*sizeof(MFace), "loadeditMesh1");
- /* nieuw Vertex blok */
+ /* nieuw Vertex block */
if(G.totvert==0) mvert= 0;
else mvert= MEM_callocN(G.totvert*sizeof(MVert), "loadeditMesh2");
@@ -1327,29 +1271,19 @@ void load_editMesh(void)
me->totvert= G.totvert;
me->totface= G.totface;
- /* de vertices, gebruik ->vn als teller */
+ /* the vertices, abuse ->vn as counter */
eve= G.edve.first;
a=0;
-
-
while(eve) {
VECCOPY(mvert->co, eve->co);
- mvert->mat_nr= 255; /* waarvoor ook al weer, haloos? */
+ mvert->mat_nr= 255; /* what was this for, halos? */
- /* puno */
+ /* vertex normal */
VECCOPY(nor, eve->no);
VecMulf(nor, 32767.0);
VECCOPY(mvert->no, nor);
#ifdef __NLA
-/* OLD VERSION */
-/* mvert->totweight = eve->totweight;
- if (eve->dw){
- int cv;
- mvert->dw = BLI_callocN (sizeof(MDeformWeight)*eve->totweight, "deformWeight");
- memcpy (mvert->dw, eve->dw, sizeof(MDeformWeight)*eve->totweight);
- }
-*/
/* NEW VERSION */
if (dvert){
dvert->totweight=eve->totweight;
@@ -1361,7 +1295,7 @@ void load_editMesh(void)
}
#endif
- eve->vn= (EditVert *)(long)(a++); /* teller */
+ eve->vn= (EditVert *)(long)(a++); /* counter */
mvert->flag= 0;
if(eve->f1==1) mvert->flag |= ME_SPHERETEST;
@@ -1381,7 +1315,7 @@ void load_editMesh(void)
}
#endif
- /* de vlakken */
+ /* the faces */
evl= G.edvl.first;
i = 0;
while(evl) {
@@ -1410,12 +1344,7 @@ void load_editMesh(void)
}
}
- /* dyna cilinder flag minder kritisch testen: 'dubbel' in vlakken laten zitten.
- * gaat anders fout bij scherpe hoeken (inpspeed voor een wel, ander niet!)
- * Mogelijk oplossen door volgorde aan te passen: sphere-cyl-face. Kost te veel?
- */
-
- /* letop: evl->e1->f==0 is losse edge */
+ /* watch: evl->e1->f==0 means loose edge */
if(evl->e1->f==1) {
mface->edcode |= ME_V1V2;
@@ -1439,7 +1368,7 @@ void load_editMesh(void)
evl->e4->f= 2;
}
- /* geen index '0' op plek 3 of 4 */
+ /* no index '0' at location 3 or 4 */
if(evl->v4) fix_faceindices(mface, evl, 4);
else fix_faceindices(mface, evl, 3);
@@ -1447,7 +1376,7 @@ void load_editMesh(void)
evl= evl->next;
}
- /* losse edges als vlak toevoegen */
+ /* add loose edges as a face */
eed= G.eded.first;
while(eed) {
if( eed->f==0 ) {
@@ -1464,7 +1393,7 @@ void load_editMesh(void)
tex_space_mesh(me);
if(actkey) mesh_to_key(me, actkey);
- /* texmesh: ahv ->tface alles opnieuw maken */
+ /* texmesh: using ->tface remake all */
if(me->tface && me->totface) {
TFace *tfn, *tf;
@@ -1498,7 +1427,7 @@ void load_editMesh(void)
/* me->tface= 0; */
}
- /* mcol: ahv indexnrs opnieuw maken */
+ /* mcol: using index numbers make again */
if(me->mcol && me->totface) {
unsigned int *mcn, *mc;
@@ -1523,14 +1452,14 @@ void load_editMesh(void)
if(actkey) do_spec_key(me->key);
- /* voor zekerheid: ->vn pointers wissen */
+ /* te be sure: clear ->vn pointers */
eve= G.edve.first;
while(eve) {
eve->vn= 0;
eve= eve->next;
}
- /* displisten van alle users, ook deze */
+ /* displists of all users, including this one */
freedisplist(&me->disp);
freedisplist(&G.obedit->disp);
@@ -1589,7 +1518,7 @@ void make_sticky(void)
if(me->msticky) MEM_freeN(me->msticky);
me->msticky= MEM_mallocN(me->totvert*sizeof(MSticky), "sticky");
- /* stukje roteerscene */
+ /* like convert to render data */
R.r= G.scene->r;
R.r.xsch= (R.r.size*R.r.xsch)/100;
R.r.ysch= (R.r.size*R.r.ysch)/100;
@@ -1640,7 +1569,7 @@ void fasterdraw(void)
if(G.obedit) return;
- /* vlaggen resetten */
+ /* reset flags */
me= G.main->mesh.first;
while(me) {
me->flag &= ~ME_ISDONE;
@@ -1678,7 +1607,7 @@ void fasterdraw(void)
base= base->next;
}
- /* belangrijk?: vlaggen weer resetten */
+ /* important?: reset flags again */
me= G.main->mesh.first;
while(me) {
me->flag &= ~ME_ISDONE;
@@ -1781,25 +1710,25 @@ void deselectall_mesh(void) /* toggle */
}
-void righthandfaces(int select) /* maakt vlakken rechtsdraaiend */
+void righthandfaces(int select) /* makes faces righthand turning */
{
EditEdge *eed, *ed1, *ed2, *ed3, *ed4;
EditVlak *evl, *startvl;
float maxx, nor[3], cent[3];
int totsel, found, foundone, direct, turn;
- /* op basis selectconnected om losse objecten te onderscheiden */
-
- /* tel per edge hoeveel vlakken het heeft */
+ /* based at a select-connected to witness loose objects */
- /* vind het meest linkse, voorste, bovenste vlak */
+ /* count per edge the amount of faces */
- /* zet normaal naar buiten en de eerste richtings vlaggen in de edges */
+ /* find the ultimate left, front, upper face */
- /* loop object af en zet richtingen / richtingsvlaggen: alleen bij edges van 1 of 2 vlakken */
- /* dit is in feit de select connected */
+ /* put normal to the outside, and set the first direction flags in edges */
- /* indien nog (selected) vlakken niet gedaan: opnieuw vind de meest linkse ... */
+ /* then check the object, and set directions / direction-flags: but only for edges with 1 or 2 faces */
+ /* this is in fact the 'select connected' */
+
+ /* in case (selected) faces were not done: start over with 'find the ultimate ...' */
waitcursor(1);
@@ -1810,7 +1739,7 @@ void righthandfaces(int select) /* maakt vlakken rechtsdraaiend */
eed= eed->next;
}
- /* vlakken en edges tellen */
+ /* count faces and edges */
totsel= 0;
evl= G.edvl.first;
while(evl) {
@@ -1828,7 +1757,7 @@ void righthandfaces(int select) /* maakt vlakken rechtsdraaiend */
}
while(totsel>0) {
- /* van buiten naar binnen */
+ /* from the outside to the inside */
evl= G.edvl.first;
startvl= 0;
@@ -1847,11 +1776,11 @@ void righthandfaces(int select) /* maakt vlakken rechtsdraaiend */
evl= evl->next;
}
- /* eerste vlak goedzetten: normaal berekenen */
+ /* set first face correct: calc normal */
CalcNormFloat(startvl->v1->co, startvl->v2->co, startvl->v3->co, nor);
CalcCent3f(cent, startvl->v1->co, startvl->v2->co, startvl->v3->co);
- /* eerste normaal staat zus of zo */
+ /* first normal is oriented this way or the other */
if(select) {
if(select==2) {
if(cent[0]*nor[0]+cent[1]*nor[1]+cent[2]*nor[2] > 0.0) flipvlak(startvl);
@@ -1884,7 +1813,7 @@ void righthandfaces(int select) /* maakt vlakken rechtsdraaiend */
startvl->f= 0;
totsel--;
- /* de normalen testen */
+ /* test normals */
found= 1;
direct= 1;
while(found) {
@@ -1972,18 +1901,18 @@ void righthandfaces(int select) /* maakt vlakken rechtsdraaiend */
static EditVert *findnearestvert(short sel)
{
- /* als sel==1 krijgen vertices met flag==1 een nadeel */
+ /* if sel==1 the vertices with flag==1 get a disadvantage */
EditVert *eve,*act=0;
static EditVert *acto=0;
short dist=100,temp,mval[2];
if(G.edve.first==0) return 0;
- /* projektie doen */
+ /* do projection */
calc_meshverts_ext(); /* drawobject.c */
- /* er wordt geteld van acto->next tot last en van first tot acto */
- /* bestaat acto ? */
+ /* we count from acto->next to last, and from first to acto */
+ /* does acto exist? */
eve= G.edve.first;
while(eve) {
if(eve==acto) break;
@@ -1993,7 +1922,7 @@ static EditVert *findnearestvert(short sel)
if(acto==0) return 0;
- /* is er een aangegeven vertex? deel 1 */
+ /* is there an indicated vertex? part 1 */
getmouseco_areawin(mval);
eve= acto->next;
while(eve) {
@@ -2008,7 +1937,7 @@ static EditVert *findnearestvert(short sel)
}
eve= eve->next;
}
- /* is er een aangegeven vertex? deel 2 */
+ /* is there an indicated vertex? part 2 */
if(dist>3) {
eve= G.edve.first;
while(eve) {
@@ -2030,11 +1959,11 @@ static EditVert *findnearestvert(short sel)
return act;
}
-static void tekenvertices_special(int mode, EditVert *act)
+static void tekenvertices_special(int mode, EditVert *act) /* teken = draw */
{
- /* voor speciale gevallen:
- * mode 0: deselect geselecteerde, teken ze, behalve act
- * mode 1: teken alleen act
+ /* for special cases:
+ * mode 0: deselect the selected ones, draw then, except act
+ * mode 1: only draw act
*/
ScrArea *tempsa, *sa;
View3D *vd;
@@ -2042,7 +1971,7 @@ static void tekenvertices_special(int mode, EditVert *act)
float mat[4][4];
int doit=0;
- /* eerst testen of er wel special vertices zijn */
+ /* first test if there are special vertices */
eve= (EditVert *)G.edve.first;
while(eve) {
@@ -2073,7 +2002,7 @@ static void tekenvertices_special(int mode, EditVert *act)
glDrawBuffer(GL_FRONT);
- /* alle views aflopen */
+ /* check all views */
tempsa= curarea;
sa= G.curscreen->areabase.first;
while(sa) {
@@ -2187,7 +2116,7 @@ void selectconnected_mesh(void)
return;
}
- /* testflaggen wissen */
+ /* clear test flags */
eve= G.edve.first;
while(eve) {
eve->f&= ~2;
@@ -2229,9 +2158,9 @@ void selectconnected_mesh(void)
short extrudeflag(short flag,short type)
{
- /* als type=1 worden oude extrudevlakken verwijderd (ivm spin etc) */
- /* alle verts met (flag & 'flag') extrude */
- /* van oude wordt flag 'flag' gewist, van nieuwe gezet */
+ /* when type=1 old extrusion faces are removed (for spin etc) */
+ /* all verts with (flag & 'flag'): extrude */
+ /* from old verts, 'flag' is cleared, in new ones it is set */
EditVert *eve, *v1, *v2, *v3, *v4, *nextve;
EditEdge *eed, *e1, *e2, *e3, *e4, *nexted;
@@ -2240,14 +2169,14 @@ short extrudeflag(short flag,short type)
if(G.obedit==0 || get_mesh(G.obedit)==0) return 0;
- /* de vert flag f1 wissen, hiermee test op losse geselecteerde vert */
+ /* clear vert flag f1, we use this to detext a loose selected vertice */
eve= G.edve.first;
while(eve) {
if(eve->f & flag) eve->f1= 1;
else eve->f1= 0;
eve= eve->next;
}
- /* de edges tellerflag wissen, als selected op 1 zetten */
+ /* clear edges counter flag, if selected we set it at 1 */
eed= G.eded.first;
while(eed) {
if( (eed->v1->f & flag) && (eed->v2->f & flag) ) {
@@ -2257,13 +2186,12 @@ short extrudeflag(short flag,short type)
}
else eed->f= 0;
- eed->f1= 1; /* aangeven is 'oude' edge (er worden in deze routine nieuwe gemaakt */
+ eed->f1= 1; /* this indicates it is an 'old' edge (in this routine we make new ones) */
eed= eed->next;
}
-
- /* in alle vlak sel een dupl.flag zetten en bijhorende edgeflags ophogen */
+ /* we set a flag in all selected faces, and increase the associated edge counters */
evl= G.edvl.first;
while(evl) {
@@ -2321,27 +2249,26 @@ short extrudeflag(short flag,short type)
}
- /* de stand van zaken nu:
- eve->f1==1: losse selected vertex
+ /* the current state now is:
+ eve->f1==1: loose selected vertex
- eed->f==0 : edge niet selected, geen extrude
- eed->f==1 : edge selected, komt niet in vlak voor, extrude
- eed->f==2 : edge selected, komt 1 keer in vlak voor, extrude
- eed->f==3 : edge selected, komt in meer vlakken voor, geen extrude
+ eed->f==0 : edge is not selected, no extrude
+ eed->f==1 : edge selected, is not part of a face, extrude
+ eed->f==2 : edge selected, is part of 1 face, extrude
+ eed->f==3 : edge selected, is part of more faces, no extrude
- eed->f1==0: nieuwe edge
- eed->f1==1: edge selected, komt in selected vlak voor, als f==3: remove
- eed->f1==2: edge selected, komt in NIET selected vlak voor
+ eed->f1==0: new edge
+ eed->f1==1: edge selected, is part of selected face, when eed->f==3: remove
+ eed->f1==2: edge selected, is not part of a selected face
-
- evl->f==1 : vlak dupliceren
+ evl->f==1 : duplicate this face
*/
- /* alle geselecteerde vertices kopieeren, */
- /* de pointer naar nieuwe vert in oude struct schrijven op eve->vn */
+ /* copy all selected vertices, */
+ /* write pointer to new vert in old struct at eve->vn */
eve= G.edve.last;
while(eve) {
- eve->f&= ~128; /* wissen voor test later op losse verts */
+ eve->f&= ~128; /* clear, for later test for loose verts */
if(eve->f & flag) {
sel= 1;
v1= addvertlist(0);
@@ -2357,13 +2284,13 @@ short extrudeflag(short flag,short type)
if(sel==0) return 0;
- /* alle edges met eed->f==1 of eed->f==2 worden vlakken */
- /* als deloud==1 worden edges eed->f>2 verwijderd */
+ /* all edges with eed->f==1 or eed->f==2 become faces */
+ /* if deloud==1 then edges with eed->f>2 are removed */
eed= G.eded.last;
while(eed) {
nexted= eed->prev;
if( eed->f<3) {
- eed->v1->f|=128; /* =geen losse vert! */
+ eed->v1->f|=128; /* = no loose vert! */
eed->v2->f|=128;
}
if( (eed->f==1 || eed->f==2) ) {
@@ -2388,7 +2315,7 @@ short extrudeflag(short flag,short type)
eed= nexted;
}
}
- /* de vlakken dupliceren, eventueel oude verwijderen */
+ /* duplicate faces, if necessart remove old ones */
evl= G.edvl.first;
while(evl) {
nextvl= evl->next;
@@ -2409,9 +2336,9 @@ short extrudeflag(short flag,short type)
}
evl= nextvl;
}
- /* alle verts met eve->vn!=0
- als eve->f1==1: edge maken
- als flag!=128 :als deloud==1: verwijderen
+ /* for all vertices with eve->vn!=0
+ if eve->f1==1: make edge
+ if flag!=128 : if deloud==1: remove
*/
eve= G.edve.last;
while(eve) {
@@ -2432,26 +2359,12 @@ short extrudeflag(short flag,short type)
eve= nextve;
}
- /* debug temp: testen op consistente:
- evl= G.edvl.first;
- while(evl) {
- e1= findedgelist(evl->v1, evl->v2);
- e2= findedgelist(evl->v2, evl->v3);
- e3= findedgelist(evl->v3, evl->v1);
- if(e1==0 || e2==0 || e3==0) {
- error("edge not in edgelist");
- break;
- }
- evl= evl->next;
- }
- */
-
return 1;
}
void rotateflag(short flag, float *cent, float rotmat[][3])
{
- /* alle verts met (flag & 'flag') rotate */
+ /* all verts with (flag & 'flag') rotate */
EditVert *eve;
@@ -2472,7 +2385,7 @@ void rotateflag(short flag, float *cent, float rotmat[][3])
void translateflag(short flag, float *vec)
{
- /* alle verts met (flag & 'flag') translate */
+ /* all verts with (flag & 'flag') translate */
EditVert *eve;
@@ -2487,9 +2400,9 @@ void translateflag(short flag, float *vec)
}
}
-short removedoublesflag(short flag, float limit) /* return aantal */
+short removedoublesflag(short flag, float limit) /* return amount */
{
- /* alle verts met (flag & 'flag') worden getest */
+ /* all verts with (flag & 'flag') are being evaluated */
EditVert *eve, *v1, *nextve;
EditEdge *eed, *e1, *nexted;
EditVlak *evl, *nextvl;
@@ -2498,7 +2411,7 @@ short removedoublesflag(short flag, float limit) /* return aantal */
float dist;
int a, b, test, aantal;
- /* flag 128 wordt gewist, aantal tellen */
+ /* flag 128 is cleared, count */
eve= G.edve.first;
aantal= 0;
while(eve) {
@@ -2508,7 +2421,7 @@ short removedoublesflag(short flag, float limit) /* return aantal */
}
if(aantal==0) return 0;
- /* geheugen reserveren en qsorten */
+ /* allocate memory and qsort */
sb= sortblock= (struct xvertsort *)MEM_mallocN(sizeof(struct xvertsort)*aantal,"sortremovedoub");
eve= G.edve.first;
while(eve) {
@@ -2521,18 +2434,18 @@ short removedoublesflag(short flag, float limit) /* return aantal */
}
qsort(sortblock, aantal, sizeof(struct xvertsort), vergxco);
- /* testen op doubles */
+ /* test for doubles */
sb= sortblock;
for(a=0; a<aantal; a++) {
eve= sb->v1;
if( (eve->f & 128)==0 ) {
sb1= sb+1;
for(b=a+1; b<aantal; b++) {
- /* eerste test: simpel dist */
+ /* first test: simpel dist */
dist= sb1->x - sb->x;
if(dist > limit) break;
- /* tweede test: is vertex toegestaan */
+ /* second test: is vertex allowed */
v1= sb1->v1;
if( (v1->f & 128)==0 ) {
@@ -2555,7 +2468,7 @@ short removedoublesflag(short flag, float limit) /* return aantal */
}
MEM_freeN(sortblock);
- /* edges testen en opnieuw invoegen */
+ /* test edges and insert again */
eed= G.eded.first;
while(eed) {
eed->f= 0;
@@ -2581,7 +2494,7 @@ short removedoublesflag(short flag, float limit) /* return aantal */
eed= nexted;
}
- /* eerst aantal testvlakken tellen */
+ /* first count amount of test faces */
evl= (struct EditVlak *)G.edvl.first;
aantal= 0;
while(evl) {
@@ -2595,7 +2508,7 @@ short removedoublesflag(short flag, float limit) /* return aantal */
evl= evl->next;
}
- /* vlakken testen op dubbele punten en eventueel verwijderen */
+ /* test faces for double vertices, and if needed remove them */
evl= (struct EditVlak *)G.edvl.first;
while(evl) {
nextvl= evl->next;
@@ -2640,7 +2553,7 @@ short removedoublesflag(short flag, float limit) /* return aantal */
}
if(test==0) {
- /* edgepointers goedzetten */
+ /* set edge pointers */
evl->e1= findedgelist(evl->v1, evl->v2);
evl->e2= findedgelist(evl->v2, evl->v3);
if(evl->v4==0) {
@@ -2656,8 +2569,8 @@ short removedoublesflag(short flag, float limit) /* return aantal */
evl= nextvl;
}
- /* dubbele vlakken: sortblock */
- /* opnieuw tellen, nu alle selected vlakken */
+ /* double faces: sort block */
+ /* count again, now all selected faces */
aantal= 0;
evl= G.edvl.first;
while(evl) {
@@ -2670,7 +2583,7 @@ short removedoublesflag(short flag, float limit) /* return aantal */
}
if(aantal) {
- /* dubbele vlakken: sortblock */
+ /* double faces: sort block */
vsb= vlsortblock= MEM_mallocN(sizeof(struct vlaksort)*aantal, "sortremovedoub");
evl= G.edvl.first;
while(evl) {
@@ -2694,10 +2607,10 @@ short removedoublesflag(short flag, float limit) /* return aantal */
for(b=a+1; b<aantal; b++) {
- /* eerste test: zelfde poin? */
+ /* first test: same pointer? */
if(vsb->x != vsb1->x) break;
- /* tweede test: is test toegestaan */
+ /* second test: is test permitted? */
evl= vsb1->evl;
if( (evl->f & 128)==0 ) {
if( comparevlak(evl, vsb->evl)) evl->f |= 128;
@@ -2711,7 +2624,7 @@ short removedoublesflag(short flag, float limit) /* return aantal */
MEM_freeN(vlsortblock);
- /* dubbele vlakken eruit */
+ /* remove double faces */
evl= (struct EditVlak *)G.edvl.first;
while(evl) {
nextvl= evl->next;
@@ -2723,7 +2636,7 @@ short removedoublesflag(short flag, float limit) /* return aantal */
}
}
- /* dubbele vertices eruit */
+ /* remove double vertices */
a= 0;
eve= (struct EditVert *)G.edve.first;
while(eve) {
@@ -2739,19 +2652,18 @@ short removedoublesflag(short flag, float limit) /* return aantal */
}
eve= nextve;
}
- return a; /* aantal */
+ return a; /* amount */
}
void xsortvert_flag(int flag)
-//short flag;
{
- /* alle verts met (flag & 'flag') worden gesorteerd */
+ /* all verts with (flag & 'flag') are sorted */
EditVert *eve;
struct xvertsort *sortblock, *sb;
ListBase tbase;
int aantal;
- /* aantal tellen */
+ /* count */
eve= G.edve.first;
aantal= 0;
while(eve) {
@@ -2760,7 +2672,7 @@ void xsortvert_flag(int flag)
}
if(aantal==0) return;
- /* geheugen reserveren en qsorten */
+ /* allocate memory and sort */
sb= sortblock= (struct xvertsort *)MEM_mallocN(sizeof(struct xvertsort)*aantal,"sortremovedoub");
eve= G.edve.first;
while(eve) {
@@ -2773,7 +2685,7 @@ void xsortvert_flag(int flag)
}
qsort(sortblock, aantal, sizeof(struct xvertsort), vergxco);
- /* tijdelijke listbase maken */
+ /* make temporal listbase */
tbase.first= tbase.last= 0;
sb= sortblock;
while(aantal--) {
@@ -2791,12 +2703,13 @@ void xsortvert_flag(int flag)
void hashvert_flag(int flag)
{
+ /* switch vertex order using hash table */
EditVert *eve;
struct xvertsort *sortblock, *sb, onth, *newsort;
ListBase tbase;
int aantal, a, b;
- /* aantal tellen */
+ /* count */
eve= G.edve.first;
aantal= 0;
while(eve) {
@@ -2805,7 +2718,7 @@ void hashvert_flag(int flag)
}
if(aantal==0) return;
- /* geheugen reserveren */
+ /* allocate memory */
sb= sortblock= (struct xvertsort *)MEM_mallocN(sizeof(struct xvertsort)*aantal,"sortremovedoub");
eve= G.edve.first;
while(eve) {
@@ -2829,7 +2742,7 @@ void hashvert_flag(int flag)
}
}
- /* tijdelijke listbase maken */
+ /* make temporal listbase */
tbase.first= tbase.last= 0;
sb= sortblock;
while(aantal--) {
@@ -2877,7 +2790,7 @@ static void uv_quart(float *uv, float *uv1)
static void set_wuv(int tot, EditVlak *evl, int v1, int v2, int v3, int v4)
{
- /* deze vreemde fie alleen bij de subdiv te gebruiken, de 'w' in de naam slaat nergens op! */
+ /* this weird function only to be used for subdivide, the 'w' in the name has no meaning! */
float *uv, uvo[4][2];
unsigned int *col, colo[4], col1, col2;
int a, v;
@@ -3054,8 +2967,9 @@ static void smooth_subdiv_quad(EditVlak *evl, float *vec)
void subdivideflag(int flag, float rad, int beauty)
{
- /* divide alle vlakken met (vertflag & flag) */
- /* als rad>0.0 zet dan nieuw vert op afstand rad van 0,0,0 */
+ /* subdivide all with (vertflag & flag) */
+ /* if rad>0.0 it's a 'sphere' subdivide */
+ /* if rad<0.0 it's a fractal subdivide */
extern float doublimit;
EditVert *eve;
EditEdge *eed, *e1, *e2, *e3, *e4, *nexted;
@@ -3081,14 +2995,14 @@ void subdivideflag(int flag, float rad, int beauty)
eed= eed->next;
}
- /* als beauty: opp testen en edgeflags wissen van 'lelijke' edges */
+ /* if beauty: test for area and clear edge flags of 'ugly' edges */
if(beauty & B_BEAUTY) {
evl= G.edvl.first;
while(evl) {
if( vlakselectedAND(evl, flag) ) {
if(evl->v4) {
- /* opp */
+ /* area */
len1= AreaQ3Dfl(evl->v1->co, evl->v2->co, evl->v3->co, evl->v4->co);
if(len1 <= doublimit) {
evl->e1->f = 0;
@@ -3112,7 +3026,7 @@ void subdivideflag(int flag, float rad, int beauty)
}
else {
- /* opp */
+ /* area */
len1= AreaT3Dfl(evl->v1->co, evl->v2->co, evl->v3->co);
if(len1 <= doublimit) {
evl->e1->f = 0;
@@ -3147,7 +3061,7 @@ void subdivideflag(int flag, float rad, int beauty)
}
- /* nieuw punt maken en in edge wegschrijven, flag wissen! is voor vlakkenmaak stuk nodig */
+ /* make new normal and put in edge, clear flag! needed for face creation part below */
eed= G.eded.first;
while(eed) {
if(eed->f & flag) {
@@ -3156,13 +3070,13 @@ void subdivideflag(int flag, float rad, int beauty)
vec[1]= (eed->v1->co[1]+eed->v2->co[1])/2.0;
vec[2]= (eed->v1->co[2]+eed->v2->co[2])/2.0;
- if(rad > 0.0) { /* perf sph */
+ if(rad > 0.0) { /* subdivide sphere */
Normalise(vec);
vec[0]*= rad;
vec[1]*= rad;
vec[2]*= rad;
}
- else if(rad< 0.0) { /* fract */
+ else if(rad< 0.0) { /* fractal subdivide */
fac= rad* VecLenf(eed->v1->co, eed->v2->co);
vec1[0]= fac*BLI_drand();
vec1[1]= fac*BLI_drand();
@@ -3181,12 +3095,12 @@ void subdivideflag(int flag, float rad, int beauty)
}
else eed->vn= 0;
- eed->f= 0; /* moet! */
+ eed->f= 0; /* needed! */
eed= eed->next;
}
- /* alle vlakken testen op subdiv edges, 8 of 16 gevallen! */
+ /* test all faces for subdivide edges, there are 8 or 16 cases (ugh)! */
evl= G.edvl.last;
while(evl) {
@@ -3220,7 +3134,7 @@ void subdivideflag(int flag, float rad, int beauty)
if((test & 6)==6) addvlak_subdiv(evl, 3, 3+4, 2+4, 0, 0);
if((test & 5)==5) addvlak_subdiv(evl, 1, 1+4, 3+4, 0, 0);
- if(test==7) { /* vier nieuwe vlakken, oude vernieuwt */
+ if(test==7) { /* four new faces, old face renews */
evl->v1= e1->vn;
evl->v2= e2->vn;
evl->v3= e3->vn;
@@ -3263,7 +3177,7 @@ void subdivideflag(int flag, float rad, int beauty)
}
else {
if(test==15) {
- /* nog een nieuw punt toevoegen */
+ /* add a new point */
CalcCent4f(vec, evl->v1->co, evl->v2->co, evl->v3->co, evl->v4->co);
if(beauty & B_SMOOTH) {
@@ -3283,7 +3197,6 @@ void subdivideflag(int flag, float rad, int beauty)
set_wuv(4, evl, 1, 1+4, 9, 4+4);
}
else {
- /* kleine hoekpunten */
if((test & 3)==3) addvlak_subdiv(evl, 1+4, 2, 2+4, 0, 0);
if((test & 6)==6) addvlak_subdiv(evl, 2+4, 3, 3+4, 0, 0);
if((test & 12)==12) addvlak_subdiv(evl, 3+4, 4, 4+4, 0, 0);
@@ -3405,12 +3318,12 @@ void subdivideflag(int flag, float rad, int beauty)
evl= evl->prev;
}
- /* alle oude edges verwijderen, eventueel nog nieuwe maken */
+ /* remove all old edges, if needed make new ones */
eed= G.eded.first;
while(eed) {
nexted= eed->next;
if( eed->vn ) {
- if(eed->f==0) { /* niet gebruikt in vlak */
+ if(eed->f==0) { /* not used in face */
addedgelist(eed->v1,eed->vn);
addedgelist(eed->vn,eed->v2);
}
@@ -3426,13 +3339,13 @@ void subdivideflag(int flag, float rad, int beauty)
void adduplicateflag(int flag)
{
- /* oude verts hebben flag 128 gezet en flag 'flag' gewist
- nieuwe verts hebben flag 'flag' gezet */
+ /* old verts have flag 128 set, and flag 'flag' cleared
+ new verts have flag 'flag' set */
EditVert *eve, *v1, *v2, *v3, *v4;
EditEdge *eed;
EditVlak *evl;
- /* eerst vertices */
+ /* vertices first */
eve= G.edve.last;
while(eve) {
eve->f&= ~128;
@@ -3465,7 +3378,7 @@ void adduplicateflag(int flag)
eed= eed->next;
}
- /* tenslotte de vlakken dupliceren */
+ /* then dupicate faces */
evl= G.edvl.first;
while(evl) {
if( (evl->v1->f & 128) && (evl->v2->f & 128) && (evl->v3->f & 128) ) {
@@ -3491,8 +3404,8 @@ void adduplicateflag(int flag)
static void delvlakflag(int flag)
{
- /* alle vlak 3/4 verts flag + edges + losse vertices deleten */
- /* van alle verts wordt 'flag' gewist */
+ /* delete all faces with 'flag', including edges and loose vertices */
+ /* in vertices the 'flag' is cleared */
EditVert *eve,*nextve;
EditEdge *eed, *nexted;
EditVlak *evl,*nextvl;
@@ -3520,7 +3433,7 @@ static void delvlakflag(int flag)
}
evl= nextvl;
}
- /* alle vlakken 1, 2 (3) verts select edges behouden */
+ /* all faces with 1, 2 (3) vertices selected: make sure we keep the edges */
evl= G.edvl.first;
while(evl) {
evl->e1->f= 0;
@@ -3533,7 +3446,7 @@ static void delvlakflag(int flag)
evl= evl->next;
}
- /* alle edges testen op vertices met flag en wissen */
+ /* test all edges for vertices with 'flag', and clear */
eed= G.eded.first;
while(eed) {
nexted= eed->next;
@@ -3547,7 +3460,7 @@ static void delvlakflag(int flag)
}
eed= nexted;
}
- /* vertices met flag nog gezet zijn losse en worden verwijderd */
+ /* vertices with 'flag' now are the loose ones, and will be removed */
eve= G.edve.first;
while(eve) {
nextve= eve->next;
@@ -3577,7 +3490,7 @@ void extrude_mesh(void)
error("Can't extrude");
}
else {
- countall(); /* voor G.totvert in calc_meshverts() */
+ countall(); /* for G.totvert in calc_meshverts() */
calc_meshverts();
transform('d');
}
@@ -3593,7 +3506,7 @@ void adduplicate_mesh(void)
adduplicateflag(1);
waitcursor(0);
- countall(); /* voor G.totvert in calc_meshverts() */
+ countall(); /* for G.totvert in calc_meshverts() */
transform('d');
}
@@ -3606,9 +3519,9 @@ void split_mesh(void)
waitcursor(1);
- /* eerst duplicate maken */
+ /* make duplicate first */
adduplicateflag(1);
- /* oude vlakken hebben 3x flag 128 gezet, deze deleten */
+ /* old faces have 3x flag 128 set, delete them */
delvlakflag(128);
waitcursor(0);
@@ -3642,15 +3555,15 @@ void separate_mesh(void)
return;
}
- /* we gaan de zaak als volgt neppen:
- * 1. duplicate object: dit wordt de nieuwe, oude pointer onthouden
- * 2: split doen als modig.
- * 3. alle NIET geselecteerde verts, edges, vlakken apart zetten
- * 4. loadobeditdata(): dit is de nieuwe ob
+ /* we are going to abuse the system as follows:
+ * 1. add a duplicate object: this will be the new one, we remember old pointer
+ * 2: then do a split if needed.
+ * 3. put apart: all NOT selected verts, edges, faces
+ * 4. call loadobeditdata(): this will be the new object
* 5. freelist en oude verts, eds, vlakken weer terughalen
*/
- /* alleen obedit geselecteerd */
+ /* make only obedit selected */
base= FIRSTBASE;
while(base) {
if(base->lay & G.vd->lay) {
@@ -3660,7 +3573,7 @@ void separate_mesh(void)
base= base->next;
}
- /* testen of split */
+ /* testen for split */
ok= 0;
eed= G.eded.first;
while(eed) {
@@ -3672,13 +3585,13 @@ void separate_mesh(void)
eed= eed->next;
}
if(ok) {
- /* SPLIT: eerst duplicate maken */
+ /* SPLIT: first make duplicate */
adduplicateflag(1);
- /* SPLIT: oude vlakken hebben 3x flag 128 gezet, deze deleten */
+ /* SPLIT: old faces have 3x flag 128 set, delete these ones */
delvlakflag(128);
}
- /* apart zetten: alles wat maar enigszins NIET select is */
+ /* set apart: everything that is not selected */
edve.first= edve.last= eded.first= eded.last= edvl.first= edvl.last= 0;
eve= G.edve.first;
while(eve) {
@@ -3713,15 +3626,15 @@ void separate_mesh(void)
trans[0]=trans[1]=trans[2]=trans[3]=trans[4]=trans[5]= 0.0;
trans[6]=trans[7]=trans[8]= 1.0;
- G.qual |= LR_ALTKEY; /* patch om zeker te zijn van gelinkte dupli */
+ G.qual |= LR_ALTKEY; /* patch to make sure we get a linked duplicate */
adduplicate(trans);
G.qual &= ~LR_ALTKEY;
- G.obedit= BASACT->object; /* basact wordt in adduplicate() gezet */
+ G.obedit= BASACT->object; /* basact was set in adduplicate() */
men= copy_mesh(me);
set_mesh(G.obedit, men);
- /* omdat nieuwe mesh een kopie is: aantal users verlagen */
+ /* because new mesh is a copy: reduce user count */
men->id.us--;
load_editMesh();
@@ -3758,7 +3671,6 @@ void separate_mesh(void)
void extrude_repeat_mesh(int steps, float offs)
{
float dvec[3], tmat[3][3], bmat[3][3];
-/* float phi; */
short a,ok;
TEST_EDITMESH
@@ -3773,10 +3685,8 @@ void extrude_repeat_mesh(int steps, float offs)
dvec[1]*= offs;
dvec[2]*= offs;
- /* base correctie */
+ /* base correction */
Mat3CpyMat4(bmat, G.obedit->obmat);
- /* phi= ((struct ObData *)G.obedit->d)->vv->ws; */
- /* Mat3MulFloat(bmat, phi); */
Mat3Inv(tmat, bmat);
Mat3MulVecfl(tmat, dvec);
@@ -3807,7 +3717,7 @@ void spin_mesh(int steps,int degr,float *dvec, int mode)
waitcursor(1);
- /* imat en centrum en afmeting */
+ /* imat and centre and size */
Mat3CpyMat4(bmat, G.obedit->obmat);
Mat3Inv(imat,bmat);
@@ -3861,7 +3771,7 @@ void spin_mesh(int steps,int degr,float *dvec, int mode)
waitcursor(0);
if(ok==0) {
- /* geen of alleen losse verts select, dups verwijderen */
+ /* no vertices or only loose ones selected, remove duplicates */
eve= G.edve.first;
while(eve) {
nextve= eve->next;
@@ -3887,31 +3797,31 @@ void screw_mesh(int steps,int turns)
TEST_EDITMESH
- /* eerste voorwaarde: frontview! */
+ /* first condition: we need frontview! */
if(G.vd->view!=1) {
error("Only in frontview!");
return;
}
- /* flags wissen */
+ /* clear flags */
eve= G.edve.first;
while(eve) {
eve->f1= 0;
eve= eve->next;
}
- /* edges zetten flags in verts */
+ /* edges set flags in verts */
eed= G.eded.first;
while(eed) {
if(eed->v1->f & 1) {
if(eed->v2->f & 1) {
- /* oppassen f1 is een byte */
+ /* watch: f1 is a byte */
if(eed->v1->f1<2) eed->v1->f1++;
if(eed->v2->f1<2) eed->v2->f1++;
}
}
eed= eed->next;
}
- /* vind twee vertices met eve->f1==1, meer of minder is fout */
+ /* find two vertices with eve->f1==1, more or less is wrong */
eve= G.edve.first;
while(eve) {
if(eve->f1==1) {
@@ -3929,7 +3839,7 @@ void screw_mesh(int steps,int turns)
return;
}
- /* bereken dvec */
+ /* calculate dvec */
dvec[0]= ( (v1->co[0]- v2->co[0]) )/(steps);
dvec[1]= ( (v1->co[1]- v2->co[1]) )/(steps);
dvec[2]= ( (v1->co[2]- v2->co[2]) )/(steps);
@@ -3980,7 +3890,7 @@ void addvert_mesh(void)
if(v1->f & 1) break;
v1= v1->next;
}
- eve= v1; /* voorkomen dat er nog meer select zijn */
+ eve= v1; /* prevent there are more selected */
while(eve) {
eve->f&= ~1;
eve= eve->next;
@@ -4018,7 +3928,7 @@ void addedgevlak_mesh(void)
if( (G.vd->lay & G.obedit->lay)==0 ) return;
- /* hoeveel geselecteerd ? */
+ /* how many selected ? */
eve= G.edve.first;
while(eve) {
if(eve->f & 1) {
@@ -4213,7 +4123,7 @@ void delete_mesh(void)
}
evl= nextvl;
}
- /* om losse vertices te wissen: */
+ /* to remove loose vertices: */
eed= G.eded.first;
while(eed) {
if( eed->v1->f & 1) eed->v1->f-=1;
@@ -4278,7 +4188,7 @@ void add_primitiveMesh(int type)
G.f &= ~(G_VERTEXPAINT+G_FACESELECT+G_TEXTUREPAINT);
setcursor_space(SPACE_VIEW3D, CURSOR_STD);
- /* als geen obedit: nieuw object en in editmode gaan */
+ /* if no obedit: new object and enter editmode */
if(G.obedit==0) {
/* add_object actually returns an object ! :-)
But it also stores the added object struct in
@@ -4303,9 +4213,9 @@ void add_primitiveMesh(int type)
eve= eve->next;
}
- totoud= tot; /* onthouden en terugzetten als cube/plane */
+ totoud= tot; /* store, and restore when cube/plane */
- /* imat en centrum en afmeting */
+ /* imat and centre and size */
Mat3CpyMat4(mat, G.obedit->obmat);
curs= give_cursor();
@@ -4323,7 +4233,7 @@ void add_primitiveMesh(int type)
Mat3Inv(imat, mat);
}
- /* ext==extrudeflag, tot==aantal verts in basis */
+ /* ext==extrudeflag, tot==amount of vertices in basis */
switch(type) {
case 0: /* plane */
@@ -4397,10 +4307,10 @@ void add_primitiveMesh(int type)
phi= .25*M_PI;
- if(type<10) { /* alles behalve grid of sphere */
+ if(type<10) { /* all types except grid, sphere... */
if(ext==0 && type!=7) d= 0;
- /* de vertices */
+ /* vertices */
vtop= vdown= v1= v2= 0;
for(b=0; b<=ext; b++) {
for(a=0; a<tot; a++) {
@@ -4420,7 +4330,7 @@ void add_primitiveMesh(int type)
}
d= -d;
}
- /* centrum vertices */
+ /* centre vertices */
if(fill && type>1) {
VECCOPY(vec,cent);
vec[2]-= -d;
@@ -4439,7 +4349,7 @@ void add_primitiveMesh(int type)
if(vtop) vtop->f= 1;
if(vdown) vdown->f= 1;
- /* boven en ondervlak */
+ /* top and bottom face */
if(fill) {
if(tot==4 && (type==0 || type==1)) {
v3= v1->next->next;
@@ -4466,7 +4376,7 @@ void add_primitiveMesh(int type)
}
}
}
- else if(type==4) { /* wel edges bij circle */
+ else if(type==4) { /* we need edges for a circle */
v3= v1;
for(a=1;a<tot;a++) {
addedgelist(v3,v3->next);
@@ -4474,7 +4384,7 @@ void add_primitiveMesh(int type)
}
addedgelist(v3,v1);
}
- /* zijvlakken */
+ /* side faces */
if(ext) {
v3= v1;
v4= v2;
@@ -4498,14 +4408,14 @@ void add_primitiveMesh(int type)
}
else if(type==10) { /* grid */
- /* alle flags wissen */
+ /* clear flags */
eve= G.edve.first;
while(eve) {
eve->f= 0;
eve= eve->next;
}
dia= G.vd->grid;
- /* eerst een segment: de X as */
+ /* one segment first: de X as */
phi= -1.0;
phid= 2.0/((float)tot-1);
for(a=0;a<tot;a++) {
@@ -4518,7 +4428,7 @@ void add_primitiveMesh(int type)
if (a) addedgelist(eve->prev,eve);
phi+=phid;
}
- /* extruden en transleren */
+ /* extrude and translate */
vec[0]= vec[2]= 0.0;
vec[1]= dia*phid;
Mat3MulVecfl(imat, vec);
@@ -4530,14 +4440,14 @@ void add_primitiveMesh(int type)
else if(type==11) { /* UVsphere */
float tmat[3][3];
- /* alle flags wissen */
+ /* clear all flags */
eve= G.edve.first;
while(eve) {
eve->f= 0;
eve= eve->next;
}
- /* eerst een segment */
+ /* one segment first */
phi= 0;
phid/=2;
for(a=0; a<=tot; a++) {
@@ -4552,7 +4462,7 @@ void add_primitiveMesh(int type)
phi+= phid;
}
- /* extruden en roteren */
+ /* extrude and rotate */
phi= M_PI/seg;
q[0]= cos(phi);
q[3]= sin(phi);
@@ -4570,7 +4480,7 @@ void add_primitiveMesh(int type)
else if(type==12) { /* Icosphere */
EditVert *eva[12];
- /* alle flags wissen */
+ /* clear all flags */
eve= G.edve.first;
while(eve) {
eve->f= 0;
@@ -4593,7 +4503,7 @@ void add_primitiveMesh(int type)
dia*=200;
for(a=1; a<subdiv; a++) subdivideflag(2, dia, 0);
- /* nu pas met imat */
+ /* and now do imat */
eve= G.edve.first;
while(eve) {
if(eve->f & 2) {
@@ -4628,7 +4538,7 @@ void add_primitiveMesh(int type)
allqueue(REDRAWVIEW3D, 0);
allqueue(REDRAWIPO, 0);
allqueue(REDRAWHEADERS, 0);
- allqueue(REDRAWINFO, 1); /* 1, want header->win==0! */
+ allqueue(REDRAWINFO, 1); /* 1, because header->win==0! */
allqueue(REDRAWBUTSEDIT, 0);
makeDispList(G.obedit);
@@ -4645,7 +4555,7 @@ void vertexsmooth(void)
if(G.obedit==0) return;
- /* aantal tellen */
+ /* count */
eve= G.edve.first;
while(eve) {
if(eve->f & 1) teller++;
@@ -4940,45 +4850,8 @@ if(evl1->v1== *v2) {
}
-/* ook weer twee zeer vreemde 'patch' functies om de uv van tfaces te bewaren */
-/*
-static float *set_correct_uv(EditVert *eve, EditVlak **evla)
-{
-
- if(eve== evla[1]->v3) return evla[1]->uv[2];
- if(eve== evla[0]->v3) return evla[0]->uv[2];
- if(eve== evla[1]->v2) return evla[1]->uv[1];
- if(eve== evla[0]->v2) return evla[0]->uv[1];
- if(eve== evla[1]->v1) return evla[1]->uv[0];
- if(eve== evla[0]->v1) return evla[0]->uv[0];
- return 0;
-}
-
-crazy code commented out..
-static void restore_wuv(EditVlak *evl, void **evla)
-{
- int *lp;
-
- lp= (int *)set_correct_uv(evl->v1, (EditVlak **)evla);
- ((int *)(evl->uv[0]))[0]= lp[0];
- ((int *)(evl->uv[0]))[4]= lp[4];
-
- lp= (int *)set_correct_uv(evl->v2, (EditVlak **)evla);
- ((int *)(evl->uv[1]))[0]= lp[0];
- ((int *)(evl->uv[1]))[4]= lp[4];
-
- lp= (int *)set_correct_uv(evl->v3, (EditVlak **)evla);
- ((int *)(evl->uv[2]))[0]= lp[0];
- ((int *)(evl->uv[2]))[4]= lp[4];
-
-}
-*/
-
/* Helper functions for edge/quad edit features*/
-/*
-
-*/
static void untag_edges(EditVlak *f)
{
@@ -5206,11 +5079,11 @@ void edge_flip(void)
int totedge, ok;
- /* - alle geselecteerde edges met 2 vlakken
- * - vind die vlakken: opslaan in edges (extra datablok)
+ /* - all selected edges with two faces
+ * - find the faces: store them in edges (using datablock)
* - per edge: - test convex
* - test edge: flip?
- - zoja: remedge, addedge, alle randedges nieuwe vlakpointers
+ - if true: remedge, addedge, all edges at the edge get new face pointers
*/
totedge = count_edges(G.eded.first);
@@ -5311,19 +5184,19 @@ void beauty_fill(void)
float len1, len2, len3, len4, len5, len6, opp1, opp2, fac1, fac2;
int totedge, ok, notbeauty=8, onedone;
- /* - alle geselecteerde edges met 2 vlakken
- * - vind die vlakken: opslaan in edges (extra datablok)
- * - per edge: - test convex
- * - test edge: flip?
- - zoja: remedge, addedge, alle randedges nieuwe vlakpointers
- */
-
+ /* - all selected edges with two faces
+ * - find the faces: store them in edges (using datablock)
+ * - per edge: - test convex
+ * - test edge: flip?
+ * - if true: remedge, addedge, all edges at the edge get new face pointers
+ */
+
totedge = count_edges(G.eded.first);
if(totedge==0) return;
if(okee("Beauty Fill")==0) return;
- /* tempblok met vlakpointers */
+ /* temp block with face pointers */
evlar= (EVPTuple *) MEM_callocN(totedge * sizeof(EVPTuple), "beautyfill");
while (notbeauty) {
@@ -5331,7 +5204,7 @@ void beauty_fill(void)
ok = collect_quadedges(evlar, G.eded.first, G.edvl.first);
- /* gaatie */
+ /* there we go */
onedone= 0;
eed= G.eded.first;
@@ -5342,7 +5215,7 @@ void beauty_fill(void)
evla = (EVPtr *) eed->vn;
- /* geen van de vlakken mag al gedaan zijn */
+ /* none of the faces should be treated before */
ok= 1;
evl= evla[0];
if(evl->e1->f1 || evl->e2->f1 || evl->e3->f1) ok= 0;
@@ -5373,9 +5246,8 @@ void beauty_fill(void)
dia2.v2= v4;
}
- /* testregel:
- * de oppervlakte gedeeld door de totale edgelengte
- *
+ /* testing rule:
+ * the area divided by the total edge lengths
*/
len1= VecLenf(v1->co, v2->co);
@@ -5508,7 +5380,7 @@ void join_mesh(void)
ob= OBACT;
if(!ob || ob->type!=OB_MESH) return;
- /* tellen */
+ /* count */
base= FIRSTBASE;
while(base) {
@@ -5524,22 +5396,22 @@ void join_mesh(void)
base= base->next;
}
- /* zodoende is het aktieve object altijd select */
+ /* that way the active object is always selected */
if(ok==0) return;
if(totvert==0 || totvert>65000) return;
if(okee("Join selected Meshes")==0) return;
- /* nieuwe materiaal indexen en hoofdarray */
+ /* new material indices and material array */
matar= MEM_callocN(sizeof(void *)*MAXMAT, "join_mesh");
totcol= ob->totcol;
- /* obact materials in nieuw hoofdarray, is mooiere start! */
+ /* obact materials in new main array, is nicer start! */
for(a=1; a<=ob->totcol; a++) {
matar[a-1]= give_current_material(ob, a);
id_us_plus((ID *)matar[a-1]);
- /* id->us ophogen: wordt ook verlaagd */
+ /* increase id->us : will be lowered later */
}
base= FIRSTBASE;
@@ -5612,7 +5484,7 @@ void join_mesh(void)
vertofs= 0;
- /* alle geselecteerde meshes invers transformen in obact */
+ /* inverse transorm all selected meshes in this object */
Mat4Invert(imat, ob->obmat);
base= FIRSTBASE;
@@ -5630,24 +5502,6 @@ void join_mesh(void)
#ifdef __NLA
copy_dverts(dvert, me->dvert, me->totvert);
- /* >>>>> FIXME: Ensure that deformation groups are updated correctly */
- /* OLD VERSION */
- /*
- for (i=0; i<me->totvert; i++){
- for (j=0; j<mvert[i].totweight; j++){
- // Find the old vertex group
- odg = BLI_findlink (&base->object->defbase, mvert[i].dw[j].def_nr);
-
- // Search for a match in the new object
- for (dg=ob->defbase.first, index=0; dg; dg=dg->next, index++){
- if (!strcmp(dg->name, odg->name)){
- mvert[i].dw[j].def_nr = index;
- break;
- }
- }
- }
- }
- */
/* NEW VERSION */
if (dvertmain){
for (i=0; i<me->totvert; i++){
@@ -5669,7 +5523,7 @@ void join_mesh(void)
#endif
if(base->object != ob) {
- /* let op: matmul omkeren is ECHT fout */
+ /* watch this: switch matmul order really goes wrong */
Mat4MulMat4(cmat, base->object->obmat, imat);
a= me->totvert;
@@ -5687,7 +5541,7 @@ void join_mesh(void)
}
if(me->totface) {
- /* mapping maken voor materialen */
+ /* make mapping for materials */
memset(map, 0, 4*MAXMAT);
for(a=1; a<=base->object->totcol; a++) {
ma= give_current_material(base->object, a);
@@ -5748,7 +5602,7 @@ void join_mesh(void)
me->totvert= totvert;
me->totface= totface;
- /* oude material array */
+ /* old material array */
for(a=1; a<=ob->totcol; a++) {
ma= ob->mat[a-1];
if(ma) ma->id.us--;
@@ -5770,7 +5624,7 @@ void join_mesh(void)
ob->totcol= me->totcol= totcol;
ob->colbits= 0;
- /* andere mesh gebruikers */
+ /* other mesh users */
test_object_materials((ID *)me);
enter_editmode();
@@ -5800,8 +5654,6 @@ void clever_numbuts_mesh(void)
do_clever_numbuts("Active Vertex", 3, REDRAW);
}
-/* never used, see CVS */
-/* static void insert_radiogour(char *str) */
static void permutate(void *list, int num, int size, int *index)
{
@@ -5901,7 +5753,7 @@ void vertices_to_sphere(void)
Mat3CpyMat4(bmat, ob->obmat);
Mat3Inv(imat, bmat);
- /* centrum */
+ /* centre */
curs= give_cursor();
cent[0]= curs[0]-ob->obmat[3][0];
cent[1]= curs[1]-ob->obmat[3][1];
@@ -5956,7 +5808,7 @@ void fill_mesh(void)
waitcursor(1);
- /* alle selected vertices kopieeren */
+ /* copy all selected vertices */
eve= G.edve.first;
while(eve) {
if(eve->f & 1) {
@@ -5967,7 +5819,7 @@ void fill_mesh(void)
}
eve= eve->next;
}
- /* alle selected edges kopieeren */
+ /* copy all selected edges */
eed= G.eded.first;
while(eed) {
if( (eed->v1->f & 1) && (eed->v2->f & 1) ) {
@@ -5977,9 +5829,9 @@ void fill_mesh(void)
}
eed= eed->next;
}
- /* van alle selected vlakken vertices en edges verwijderen om dubbels te voorkomen */
- /* alle edges tellen punten op, vlakken trekken af,
- edges met vertices ->h<2 verwijderen */
+ /* from all selected faces: remove vertices and edges verwijderen to prevent doubles */
+ /* all edges add values, faces subtract,
+ then remove edges with vertices ->h<2 */
evl= G.edvl.first;
ok= 0;
while(evl) {
@@ -5994,7 +5846,7 @@ void fill_mesh(void)
}
evl= nextvl;
}
- if(ok) { /* er zijn vlakken geselecteerd */
+ if(ok) { /* there are faces selected */
eed= filledgebase.first;
while(eed) {
nexted= eed->next;
@@ -6005,8 +5857,6 @@ void fill_mesh(void)
}
}
- /* tijd=clock(); */
-
/* to make edgefill work */
BLI_setScanFillObjectRef(G.obedit);
BLI_setScanFillColourRef(&G.obedit->actcol);
@@ -6057,10 +5907,10 @@ void vertexnormals_mesh(Mesh *me, float *extverts)
if(me->totvert==0) return;
testflip= (me->flag & ME_NOPUNOFLIP)==0;
- if((me->flag & ME_TWOSIDED)==0) testflip= 0; /* grote hoeken */
+ if((me->flag & ME_TWOSIDED)==0) testflip= 0; /* large angles */
if(me->totface==0) {
- /* namaak puno's voor halopuno! */
+ /* fake vertex normals for 'halopuno' (render option) */
mvert= me->mvert;
for(a=0; a<me->totvert; a++, mvert++) {
VECCOPY(n1, mvert->co);
@@ -6074,7 +5924,7 @@ void vertexnormals_mesh(Mesh *me, float *extverts)
normals= MEM_callocN(me->totvert*3*sizeof(float), "normals");
- /* berekenen cos hoeken en oppervlakte en optellen bij puno */
+ /* calculate cosine angles, and add to vertex normal */
mface= me->mface;
mvert= me->mvert;
for(a=0; a<me->totface; a++, mface++) {
@@ -6149,7 +5999,7 @@ void vertexnormals_mesh(Mesh *me, float *extverts)
}
}
- /* normaliseren puntnormalen */
+ /* normalize vertex normals */
mvert= me->mvert;
for(a=0; a<me->totvert; a++, mvert++) {
len= Normalise(normals+3*a);
@@ -6163,7 +6013,7 @@ void vertexnormals_mesh(Mesh *me, float *extverts)
}
}
- /* puntnormaal omklap-vlaggen voor bij shade */
+ /* vertex normal flipping flags, for during render */
mface= me->mface;
mvert= me->mvert;
for(a=0; a<me->totface; a++, mface++) {
@@ -6209,7 +6059,7 @@ void vertexnormals_mesh(Mesh *me, float *extverts)
}
}
}
- /* proj voor cubemap! */
+ /* proj for cubemap! */
xn= fabs(vnor[0]);
yn= fabs(vnor[1]);
zn= fabs(vnor[2]);
diff --git a/source/blender/src/editobject.c b/source/blender/src/editobject.c
index ec3386c511b..b4825869f37 100644
--- a/source/blender/src/editobject.c
+++ b/source/blender/src/editobject.c
@@ -182,7 +182,7 @@ float prop_cent[3];
float centre[3], centroid[3];
-void add_object_draw(int type) /* voor toolbox */
+void add_object_draw(int type) /* for toolbox */
{
Object *ob;
@@ -215,7 +215,7 @@ void add_object_draw(int type) /* voor toolbox */
allqueue(REDRAWNLA, 0);
deselect_all_area_oops();
set_select_flag_oops();
- allqueue(REDRAWINFO, 1); /* 1, want header->win==0! */
+ allqueue(REDRAWINFO, 1); /* 1, because header->win==0! */
}
@@ -280,6 +280,8 @@ void make_track(void)
/* Not yet */
notice ("Make Track no longer supported. Use constraints instead.");
return;
+
+ /* hrms, i would suppose then just to add a constraint for the user. be nice! (ton) */
#endif
if(okee("Make Track")==0) return;
@@ -475,7 +477,7 @@ void clear_object(char mode)
void reset_slowparents(void)
{
- /* terug op correcte plek */
+ /* back to original locations */
Base *base;
base= FIRSTBASE;
@@ -517,7 +519,7 @@ void make_vertex_parent(void)
Object *par, *ob;
int a, v1=0, v2=0, v3=0, nr=1;
- /* er moet 1 of 3 vertices select zijn */
+ /* we need 1 ot 3 selected vertices */
if(G.obedit->type==OB_MESH) {
eve= G.edve.first;
@@ -597,7 +599,7 @@ void make_vertex_parent(void)
ob->par2= v2-1;
ob->par3= v3-1;
- /* inverse parent matrix berekenen */
+ /* inverse parent matrix */
what_does_parent(ob);
Mat4Invert(ob->parentinv, workob.obmat);
clear_workob();
@@ -606,7 +608,7 @@ void make_vertex_parent(void)
ob->partype= PARVERT1;
ob->par1= v1-1;
- /* inverse parent matrix berekenen */
+ /* inverse parent matrix */
what_does_parent(ob);
Mat4Invert(ob->parentinv, workob.obmat);
clear_workob();
@@ -771,7 +773,7 @@ void make_parent(void)
base= base->next;
}
- /* nu gaan we alle objecten clearparentandkeeptransformen */
+ /* now we'll clearparentandkeeptransform all objects */
base= FIRSTBASE;
while(base) {
if TESTBASELIB(base) {
@@ -843,9 +845,9 @@ void make_parent(void)
base->object->parent= par;
- /* inverse parent matrix berekenen? */
+ /* calculate inverse parent matrix? */
if( (qual & LR_SHIFTKEY) ) {
- /* niet dus... */
+ /* not... */
Mat4One(base->object->parentinv);
memset(base->object->loc, 0, 3*sizeof(float));
}
@@ -936,7 +938,7 @@ void enter_editmode(void)
make_editArmature();
allqueue (REDRAWVIEW3D,0);
}
- else if(ob->type==OB_IKA) { /* grabtype */
+ else if(ob->type==OB_IKA) { /* grab type */
base= FIRSTBASE;
while(base) {
if TESTBASE(base) {
@@ -993,7 +995,7 @@ void make_displists_by_parent(Object *ob) {
makeDispList(base->object);
}
-void exit_editmode(int freedata) /* freedata==0 bij render */
+void exit_editmode(int freedata) /* freedata==0 at render */
{
Base *base;
Object *ob;
@@ -1003,7 +1005,7 @@ void exit_editmode(int freedata) /* freedata==0 bij render */
if(G.obedit->type==OB_MESH) {
- /* tijdelijk */
+ /* temporal */
countall();
if(G.totvert>65000) {
error("too many vertices");
@@ -1038,17 +1040,17 @@ void exit_editmode(int freedata) /* freedata==0 bij render */
ob= G.obedit;
- /* obedit moet 0 zijn voor curve-extrude, niet voor smeshes */
+ /* obedit has to be 0 for curve-extrude, not for smeshes */
if(ob->type==OB_CURVE) G.obedit= 0;
G.obedit= 0;
makeDispList(ob);
- /* heeft dit nog invloed op andere bases? */
+ /* has this influence at other objects? */
if(ob->type==OB_CURVE) {
- /* test of ob als bevelcurve of textoncurve wordt gebruikt */
+ /* test if ob is use as bevelcurve r textoncurve */
base= FIRSTBASE;
while(base) {
if ELEM(base->object->type, OB_CURVE, OB_FONT) {
@@ -1133,7 +1135,7 @@ void docentre(void)
}
}
- /* vlaggen resetten */
+ /* reset flags */
base= FIRSTBASE;
while(base) {
if TESTBASELIB(base) {
@@ -1194,7 +1196,7 @@ void docentre(void)
base->object->loc[1]+= centn[1];
base->object->loc[2]+= centn[2];
- /* andere users? */
+ /* other users? */
ob= G.main->object.first;
while(ob) {
if((ob->flag & OB_DONE)==0) {
@@ -1225,10 +1227,10 @@ void docentre(void)
}
}
- /* displisten van alle users, ook deze base */
+ /* displist of all users, also this one */
makeDispList(base->object);
- /* DOEN: alle users aflopen... */
+ /* DO: check all users... */
tex_space_mesh(me);
}
@@ -1301,15 +1303,15 @@ void docentre(void)
}
else if(base->object->type==OB_FONT) {
- /* uit de bb halen */
+ /* get from bb */
cu= base->object->data;
if(cu->bb==0) return;
cu->xof= -0.5*( cu->bb->vec[4][0] - cu->bb->vec[0][0]);
- cu->yof= -0.5 -0.5*( cu->bb->vec[0][1] - cu->bb->vec[2][1]); /* extra 0.5 is de hoogte van de bovenste regel */
+ cu->yof= -0.5 -0.5*( cu->bb->vec[0][1] - cu->bb->vec[2][1]); /* extra 0.5 is the height of above line */
- /* klopt niet helemaal, een keer goed doen! */
+ /* not really ok, do this better once! */
cu->xof /= cu->fsize;
cu->yof /= cu->fsize;
@@ -1545,18 +1547,8 @@ void special_editmenu(void)
if(nr>0) waitcursor(0);
}
-/* else if (G.obedit->type==OB_ARMATURE){
- nr= pupmenu("Specials%t|");
- if (nr>0) waitcursor (1);
- switch (nr){
- case 1:
- }
- if (nr>0) waitcursor (0);
- }
-*/
else if ELEM(G.obedit->type, OB_CURVE, OB_SURF) {
- /* nr= pupmenu("Specials%t|Subdivide%x1|Hide%x5|Reveal%x6|Select swap%x7"); */
nr= pupmenu("Specials%t|Subdivide%x1|Switch Direction%x2");
switch(nr) {
@@ -1617,9 +1609,9 @@ void convertmenu(void)
}
if(ok==0) return;
- /* denk aan meerdere users! */
+ /* don't forget multiple users! */
- /* vlaggen resetten */
+ /* reset flags */
base= FIRSTBASE;
while(base) {
if TESTBASELIB(base) {
@@ -1645,7 +1637,7 @@ void convertmenu(void)
basen= MEM_mallocN(sizeof(Base), "duplibase");
*basen= *base;
- BLI_addhead(&G.scene->base, basen); /* addhead: anders oneindige lus */
+ BLI_addhead(&G.scene->base, basen); /* addhead: otherwise eternal loop */
basen->object= ob1;
basen->flag &= ~SELECT;
@@ -1680,7 +1672,7 @@ void convertmenu(void)
cu->vfont->id.us--;
cu->vfont= 0;
}
- /* andere users */
+ /* other users */
if(cu->id.us>1) {
ob1= G.main->object.first;
while(ob1) {
@@ -1699,9 +1691,9 @@ void convertmenu(void)
dl= cu->disp.first;
if(dl==0) makeDispList(ob);
- nurbs_to_mesh(ob); /* doet ook users */
+ nurbs_to_mesh(ob); /* also does users */
- /* texspace en normalen */
+ /* texspace and normals */
BASACT= base;
enter_editmode();
exit_editmode(1);
@@ -1721,7 +1713,7 @@ void convertmenu(void)
basen= MEM_mallocN(sizeof(Base), "duplibase");
*basen= *base;
- BLI_addhead(&G.scene->base, basen); /* addhead: anders oneindige lus */
+ BLI_addhead(&G.scene->base, basen); /* addhead: othwise eternal loop */
basen->object= ob1;
basen->flag &= ~SELECT;
@@ -2148,7 +2140,7 @@ void linkmenu()
}
if(sce==0 || sce->id.lib) return;
- /* denk eraan: is verderop nog nodig */
+ /* remember: is needed below */
event= 1;
}
}
@@ -2163,13 +2155,13 @@ void linkmenu()
if(event==1) { /* to scene */
- /* testen of het soms al gelinkt is */
+ /* test if already linked */
sbase= sce->base.first;
while(sbase) {
if(sbase->object==base->object) break;
sbase= sbase->next;
}
- if(sbase) { /* eruit */
+ if(sbase) { /* remove */
base= base->next;
continue;
}
@@ -2191,7 +2183,7 @@ void linkmenu()
id_us_plus(id);
obt->data= id;
- /* als aantal mat indices veranderd zijn: */
+ /* if amount of material indices changed: */
test_object_materials(obt->data);
}
}
@@ -2205,17 +2197,17 @@ void linkmenu()
}
else if(event==3) { /* materials */
- /* alleen als obt geen materiaal heeft: arrays maken */
- /* van ob naar obt! */
+ /* only if obt has no material: make arrays */
+ /* from ob to obt! */
obmatarar= give_matarar(ob);
matarar= give_matarar(obt);
totcolp= give_totcolp(obt);
- /* als 1 van de 2 nul is: geen renderbaar object */
+ /* if one of the two is zero: no render-able object */
if( matarar && obmatarar) {
- /* voorzichtig met users! Dus eerst kopie orig: */
+ /* take care of users! so first a copy of original: */
if(ob->totcol) {
matar1= MEM_dupallocN(ob->mat);
@@ -2225,23 +2217,23 @@ void linkmenu()
matar1= matar2= 0;
}
- /* alles van obt los linken */
+ /* remove links from obt */
for(a=0; a<obt->totcol; a++) {
if(obt->mat[a]) obt->mat[a]->id.us--;
if( (*matarar)[a]) (*matarar)[a]->id.us--;
}
- /* vrijgeven */
+ /* free */
if(obt->mat) MEM_freeN(obt->mat);
if(*matarar) MEM_freeN(*matarar);
- /* hangen kopie er aan */
+ /* connect a copy */
obt->mat= matar1;
*matarar= matar2;
obt->totcol= ob->totcol;
*totcolp= ob->totcol;
- /* users ophogen */
+ /* increase users */
for(a=0; a<obt->totcol; a++) {
if(obt->mat[a]) id_us_plus((ID *)obt->mat[a]);
if( (*matarar)[a]) id_us_plus((ID *)(*matarar)[a]);
@@ -2249,7 +2241,7 @@ void linkmenu()
obt->colbits= ob->colbits;
- /* als aantal mat indices veranderd zijn: */
+ /* if amount of material indices changed: */
test_object_materials(obt->data);
}
}
@@ -2281,15 +2273,15 @@ void make_duplilist_real()
ob= duplilist.first;
while(ob) {
- /* font dupli's kunnen totcol hebben zonder mat, halen ze van parent af
- * dit zou netter moeten
+ /* font duplis can have a totcol without material, we get them from parent
+ * should be implemented better...
*/
if(ob->mat==0) ob->totcol= 0;
basen= MEM_dupallocN(base);
basen->flag &= ~OB_FROMDUPLI;
- BLI_addhead(&G.scene->base, basen); /* addhead: anders oneindige lus */
- ob->ipo= 0; /* zeker weten dat de apply werkt */
+ BLI_addhead(&G.scene->base, basen); /* addhead: othwise eternal loop */
+ ob->ipo= 0; /* make sure apply works */
ob->parent= ob->track= 0;
ob->disp.first= ob->disp.last= 0;
ob->transflag &= ~OB_DUPLI;
@@ -2368,7 +2360,7 @@ void apply_object()
where_is_object(ob);
- /* texspace en normalen */
+ /* texspace and normals */
BASACT= base;
enter_editmode();
exit_editmode(1);
@@ -2435,7 +2427,7 @@ void apply_object()
where_is_object(ob);
- /* texspace en normalen */
+ /* texspace and normals */
BASACT= base;
enter_editmode();
exit_editmode(1);
@@ -2450,7 +2442,7 @@ void apply_object()
-/* ************ ALGEMENE *************** */
+/* ************ GENERAL *************** */
static Object *is_a_parent_selected_int(Object *startob, Object *ob, GHash *done_hash) {
if (ob!=startob && TESTBASE(ob))
@@ -2527,7 +2519,7 @@ static void setbaseflags_for_editing(int mode) /* 0,'g','r','s' */
Object *ob= base->object;
Object *parsel= is_a_parent_selected(ob);
- /* hier ook parentkey? */
+ /* parentkey here? */
if(parsel) {
if(base->flag & SELECT) {
@@ -2543,7 +2535,6 @@ static void setbaseflags_for_editing(int mode) /* 0,'g','r','s' */
}
/* updates? */
- /* ivm automatische portals */
if(ob->type==OB_IKA) {
Ika *ika= ob->data;
if(ika->parent && parsel) base->flag |= BA_WHERE_UPDATE;
@@ -2643,13 +2634,13 @@ void ob_to_transob(Object *ob, TransOb *tob)
VECCOPY(tob->olddsize, ob->dsize);
- /* alleen object, geen parent */
+ /* only object, not parent */
object_to_mat3(ob, tob->obmat);
Mat3Inv(tob->obinv, tob->obmat);
Mat3CpyMat4(totmat, ob->obmat);
- /* dit is totmat zonder obmat: dus parmat */
+ /* this is totmat without obmat: so a parmat */
Mat3MulMat3(tob->parmat, totmat, tob->obinv);
Mat3Inv(tob->parinv, tob->parmat);
@@ -2681,11 +2672,9 @@ void ob_to_transob(Object *ob, TransOb *tob)
VECCOPY(tob->oldeff, tob->eff);
tob->flag |= TOB_IKA;
- /* zodat alleen eff update wordt */
tob->loc= 0;
}
- /* set_ika_undo_vals(); */
}
}
@@ -2742,7 +2731,7 @@ void make_trans_objects()
INIT_MINMAX(min, max);
centroid[0]=centroid[1]=centroid[2]= 0.0;
- /* aantal tellen */
+ /* count */
base= FIRSTBASE;
while(base) {
if TESTBASELIB(base) {
@@ -2754,7 +2743,7 @@ void make_trans_objects()
else {
if(ob->ipo && ob->ipo->showkey && (ob->ipoflag & OB_DRAWKEY)) {
elems.first= elems.last= 0;
- make_ipokey_transform(ob, &elems, 1); /* '1' alleen selected keys */
+ make_ipokey_transform(ob, &elems, 1); /* '1' only selected keys */
pushdata(&elems, sizeof(ListBase));
@@ -2776,7 +2765,7 @@ void make_trans_objects()
reset_slowparents();
- /* dit hieronder wel doen als tottrans==0, i.v.m. vrijgeven pushpop en ipokeys */
+ /*also do this below when tottrans==0, because of freeing pushpop and ipokeys */
base= FIRSTBASE;
while(base) {
@@ -2795,7 +2784,7 @@ void make_trans_objects()
}
else {
- /* van belang! (o.a. bevobj) */
+ /* is needed! (bevobj) */
if(base->flag & SELECT) ob->flag|= SELECT; else ob->flag &= ~SELECT;
if(ob->ipo && ob->ipo->showkey && (ob->ipoflag & OB_DRAWKEY)) {
@@ -2824,7 +2813,7 @@ void make_trans_objects()
ob_to_transob(ob, tob);
DO_MINMAX(tob->obvec, min, max);
- /* doet ook tob->flag en oldvals, moet NA ob_to_transob()! */
+ /* also does tob->flag and oldvals, needs to be after ob_to_transob()! */
set_ipo_pointers_transob(ik, tob);
tob++;
@@ -2861,7 +2850,7 @@ void make_trans_objects()
base= base->next;
}
- pushpop_test(); /* alleen voor debug & zekerheid */
+ pushpop_test(); /* only for debug & to be sure */
if(tottrans==0) return;
@@ -3036,7 +3025,7 @@ void make_trans_verts(float *min, float *max, int mode)
}
}
- /* cent enz berekenen */
+ /* cent etc */
tv= transvmain;
for(a=0; a<tottrans; a++, tv++) {
if(tv->flag) {
@@ -3239,7 +3228,7 @@ void special_aftertrans_update(char mode, int flip, short canceled, int keyflags
int doit,redrawipo=0;
- /* displaylisten e.d. */
+ /* displaylists etc. */
if(G.obedit) {
if(G.obedit->type==OB_MBALL) {
@@ -3307,7 +3296,6 @@ void special_aftertrans_update(char mode, int flip, short canceled, int keyflags
if(ob->type==OB_IKA) {
ika= ob->data;
- /* vooral voor ika NIET in GRABEFF mode, updaten van globale effector */
VecMat4MulVecfl(ika->effg, ob->obmat, ika->eff);
itterate_ika(ob);
}
@@ -3344,7 +3332,7 @@ void special_aftertrans_update(char mode, int flip, short canceled, int keyflags
makeDispList(ob);
}
- where_is_object(ob); /* altijd ivm track eytc */
+ where_is_object(ob); /* always do, for track etc. */
/* Set autokey if necessary */
if ((U.uiflag & KEYINSERTOBJ) && (!canceled) && (base->flag & SELECT)){
@@ -3396,7 +3384,7 @@ void calc_trans_verts(void)
Nurb *nu= editNurb.first;
while(nu) {
test2DNurb(nu);
- testhandlesNurb(nu); /* test ook op bezier */
+ testhandlesNurb(nu); /* test for bezier too */
nu= nu->next;
}
makeDispList(G.obedit);
@@ -3408,7 +3396,7 @@ static int test_midtog_proj(short xn, short yn, short *mval)
{
float x,y,z;
- /* welke beweging is het grootst? die wordt het */
+ /* which movement is the largest? that'll be the one */
xn= (xn-mval[0]);
yn= (yn-mval[1]);
x = fabs(G.vd->persinv[0][0]*xn + G.vd->persinv[1][0]*yn);
@@ -3422,7 +3410,7 @@ static int test_midtog_proj(short xn, short yn, short *mval)
void apply_keyb_grid(float *val, float fac1, float fac2, float fac3, int invert)
{
- /* fac1 is voor 'niets', fac2 voor CTRL fac3 voor SHIFT */
+ /* fac1 is for 'nothing', fac2 for CTRL, fac3 for SHIFT */
int ctrl;
if(invert) {
@@ -3448,16 +3436,12 @@ void compatible_eul(float *eul, float *oldrot)
{
float dx, dy, dz;
- /* verschillen van ong 360 graden eerst corrigeren */
+ /* correct differences of about 360 degrees first */
dx= eul[0] - oldrot[0];
dy= eul[1] - oldrot[1];
dz= eul[2] - oldrot[2];
-/* printf("komt binnen: \n"); */
-/* PRINT3(f, f, f, eul[0], eul[1], eul[2]); */
-/* PRINT3(f, f, f, dx, dy, dz); */
-
while( fabs(dx) > 5.1) {
if(dx > 0.0) eul[0] -= 2.0*M_PI; else eul[0]+= 2.0*M_PI;
dx= eul[0] - oldrot[0];
@@ -3471,10 +3455,7 @@ void compatible_eul(float *eul, float *oldrot)
dz= eul[2] - oldrot[2];
}
-/* PRINT3(f, f, f, oldrot[0], oldrot[1], oldrot[2]); */
-
-
- /* is 1 van de asrotaties groter dan 180 graden en de andere klein? GEEN ELSEIF!! */
+ /* is 1 of the axis rotations larger than 180 degrees and the other small? NO ELSE IF!! */
if( fabs(dx) > 3.2 && fabs(dy)<1.6 && fabs(dz)<1.6 ) {
if(dx > 0.0) eul[0] -= 2.0*M_PI; else eul[0]+= 2.0*M_PI;
}
@@ -3484,14 +3465,15 @@ void compatible_eul(float *eul, float *oldrot)
if( fabs(dz) > 3.2 && fabs(dx)<1.6 && fabs(dy)<1.6 ) {
if(dz > 0.0) eul[2] -= 2.0*M_PI; else eul[2]+= 2.0*M_PI;
}
+
+ return; /* <- intersting to find out who did that! */
-return;
- /* opnieuw berekenen */
+ /* calc again */
dx= eul[0] - oldrot[0];
dy= eul[1] - oldrot[1];
dz= eul[2] - oldrot[2];
- /* dit is een bijzonder geval, voor x-z getest */
+ /* special case, tested for x-z */
if( (fabs(dx) > 3.1 && fabs(dz) > 1.5 ) || ( fabs(dx) > 1.5 && fabs(dz) > 3.1 ) ) {
if(dx > 0.0) eul[0] -= M_PI; else eul[0]+= M_PI;
@@ -3510,8 +3492,6 @@ return;
if(dz > 0.0) eul[2] -= M_PI; else eul[2]+= M_PI;
}
-/* PRINT3(f, f, f, eul[0], eul[1], eul[2]); */
-/* printf("\n"); */
}
void headerprint(char *str)
@@ -3582,9 +3562,7 @@ int cylinder_intersect_test(void)
VecSubf(rc, oldloc, base);
- /* als we nou speed normaliseren (kan van te voren! */
-
- /* en de axis ook alvast */
+ /* the axis */
len2= Normalise(axis);
Crossf(n, speed, axis);
@@ -3604,12 +3582,12 @@ int cylinder_intersect_test(void)
labdacor= t-s;
labda= t+s;
- /* twee gevallen waarbij geen snijpunt is */
+ /* two cases with no intersection point */
if(labdacor>=1.0 && labda>=1.0) return 0;
if(labdacor<=0.0 && labda<=0.0) return 0;
- /* normaalvector berekenen */
- /* snijpunt: */
+ /* calc normal */
+ /* intersection: */
rc[0]= oldloc[0] + labdacor*speed[0] - base[0];
rc[1]= oldloc[1] + labdacor*speed[1] - base[1];
@@ -3655,14 +3633,14 @@ int sphere_intersect_test(void)
if(disc>=0.0) {
disc= sqrt(disc);
- labdacor= (-bsq - disc)/len; /* intrede */
+ labdacor= (-bsq - disc)/len; /* entry point */
labda= (-bsq + disc)/len;
printf("var1: %f, var2: %f, var3: %f\n", labdacor, labda, editbutsize);
}
else return 0;
- /* snijpunt en normaal */
+ /* intersection and normal */
rc[0]= oldloc[0] + labdacor*speed[0] - base[0];
rc[1]= oldloc[1] + labdacor*speed[1] - base[1];
rc[2]= oldloc[2] + labdacor*speed[2] - base[2];
@@ -3777,7 +3755,7 @@ void transform(int mode) /* 'g' 'G' 'r' 'R' 's' 'S' 't' or 'w' 'N' */
/* form duplicate routines */
if(mode=='d') mode= 'g';
- /* kan floating exception veroorzaken op alpha */
+ /* this can cause floating exception at dec alpha */
d_dvec[0]= d_dvec[1]= d_dvec[2]= 0.0;
dvec[0]= dvec[1]= dvec[2]= 0.0;
@@ -3788,11 +3766,11 @@ void transform(int mode) /* 'g' 'G' 'r' 'R' 's' 'S' 't' or 'w' 'N' */
}
if(mode=='w' && G.obedit==0) return;
- /* welke data wordt behandeld? */
+ /* what data will be involved? */
if(G.obedit) {
if(mode=='N') vertexnormals(0);
- /* min en max zijn nodig voor de warp */
+ /* min en max needed for warp */
if(mode=='G' || mode=='R' || mode=='C') make_trans_verts(min, max, 1);
else make_trans_verts(min, max, 0);
}
@@ -3849,13 +3827,13 @@ void transform(int mode) /* 'g' 'G' 'r' 'R' 's' 'S' 't' or 'w' 'N' */
VECCOPY (centre, centroid);
}
- /* moving: onderscheid i.v.m. drawobj */
+ /* moving: is shown in drawobject() */
if(G.obedit) G.moving= 2;
else G.moving= 1;
areawinset(curarea->win);
- /* de persinv is vervuild met translatie, niet gebruiken!! */
+ /* the persinv is polluted with translation, do not use!! */
Mat3CpyMat4(persmat, G.vd->persmat);
Mat3Inv(persinv, persmat);
@@ -3877,9 +3855,9 @@ void transform(int mode) /* 'g' 'G' 'r' 'R' 's' 'S' 't' or 'w' 'N' */
project_short_noclip(vec, mval);
}
else {
- /* voor pannen vanuit cameraview */
+ /* voor panning from cameraview */
if( G.vd->camera==OBACT && G.vd->persp>1) {
- /* 6.0 = 6 grideenheden */
+ /* 6.0 = 6 grid units */
centre[0]+= -6.0*rot2[0];
centre[1]+= -6.0*rot2[1];
centre[2]+= -6.0*rot2[2];
@@ -3939,7 +3917,7 @@ void transform(int mode) /* 'g' 'G' 'r' 'R' 's' 'S' 't' or 'w' 'N' */
centre[1]= (min[1]+max[1])/2.0;
centre[2]= (min[2]+max[2])/2.0;
- /* middelpunt is cursor */
+ /* cursor is centre */
curs= give_cursor();
VECCOPY(axis, curs);
Mat4MulVecfl(G.vd->viewmat, axis);
@@ -3967,7 +3945,7 @@ void transform(int mode) /* 'g' 'G' 'r' 'R' 's' 'S' 't' or 'w' 'N' */
if(mval[0]!=xo || mval[1]!=yo || firsttime) {
if(firsttime) {
- /* niet zo netjes, maar toch! */
+ /* not really nice, but who cares! */
oldval[0]= oldval[1]= oldval[2]= MAXFLOAT;
/* proportional precalc */
@@ -3985,7 +3963,6 @@ void transform(int mode) /* 'g' 'G' 'r' 'R' 's' 'S' 't' or 'w' 'N' */
if(mode=='g' || mode=='G') {
keyflags |= KEYFLAG_LOC;
- /* if(G.edve.first) sphere_intersect_test(); */
if(midtog) {
if(cameragrab) {
@@ -3993,7 +3970,7 @@ void transform(int mode) /* 'g' 'G' 'r' 'R' 's' 'S' 't' or 'w' 'N' */
dvec[0]-= dx1*G.vd->viewinv[2][0];
dvec[1]-= dx1*G.vd->viewinv[2][1];
dvec[2]-= dx1*G.vd->viewinv[2][2];
- firsttime= 1; /* blijftie lopen */
+ firsttime= 1; /* so it keeps going */
}
else {
window_to_3d(dvec, mval[0]-xn, mval[1]-yn);
@@ -4142,10 +4119,10 @@ void transform(int mode) /* 'g' 'G' 'r' 'R' 's' 'S' 't' or 'w' 'N' */
for(a=0; a<tottrans; a++, tob++, tv++) {
if(transmain) {
- /* rotatie in drie stappen:
- * 1. editrot corrigeren voor parent
- * 2. hier de euler uit destilleren. Deze stap moet omdat de MatToEul nogal zwak is
- * 3. deze vermenigvuldigen met eigen rot, euler berekenen.
+ /* rotation in three steps:
+ * 1. editrot correction for parent
+ * 2. distill from this the euler. Always do this step because MatToEul is pretty weak
+ * 3. multiply with its own rotation, calculate euler.
*/
/* Roll around local axis */
@@ -4180,11 +4157,11 @@ void transform(int mode) /* 'g' 'G' 'r' 'R' 's' 'S' 't' or 'w' 'N' */
}
/* 3 */
- /* we werken even met de rot+drot */
+ /* we now work with rot+drot */
if(tob->ob->transflag & OB_QUAT || !tob->rot)
{
- /* drot+rot NOG DOEN! */
+ /* drot+rot TO DO! */
Mat3ToQuat(smat, quat); // Original
QuatMul(tob->quat, quat, tob->oldquat);
@@ -4195,7 +4172,6 @@ void transform(int mode) /* 'g' 'G' 'r' 'R' 's' 'S' 't' or 'w' 'N' */
}
else {
/* VecSubf(rot, eul, tob->olddrot); */
-// VecSubf(rot, eul, tob->olddrot);
}
/* VecMulf(rot, 9.0/M_PI_2); */
@@ -4208,7 +4184,6 @@ void transform(int mode) /* 'g' 'G' 'r' 'R' 's' 'S' 't' or 'w' 'N' */
}
else {
/* QuatSub(tob->quat, quat, tob->oldquat); */
-// QuatSub(tob->quat, quat, tob->oldquat);
}
}
else {
@@ -4219,8 +4194,8 @@ void transform(int mode) /* 'g' 'G' 'r' 'R' 's' 'S' 't' or 'w' 'N' */
Mat3ToEul(totmat, eul);
- /* Eul mag niet te gek afwijken van oude eul.
- * Dit is alleen nog maar getest voor dx && dz
+ /* Eul is not allowed to differ too much from old eul.
+ * This has only been tested for dx && dz
*/
compatible_eul(eul, tob->oldrot);
@@ -4255,11 +4230,11 @@ void transform(int mode) /* 'g' 'G' 'r' 'R' 's' 'S' 't' or 'w' 'N' */
}
if(G.vd->around!=V3D_LOCAL && (!G.obpose)) {
- /* translatie */
+ /* translation */
VecSubf(vec, tob->obvec, centre);
Mat3MulVecfl(mat, vec);
VecAddf(vec, vec, centre);
- /* vec is nu de plek waar het object moet komen */
+ /* vec now is the location where the object has to be */
VecSubf(vec, vec, tob->obvec);
Mat3MulVecfl(tob->parinv, vec);
@@ -4348,7 +4323,7 @@ void transform(int mode) /* 'g' 'G' 'r' 'R' 's' 'S' 't' or 'w' 'N' */
if(proj==2) size[1]=size[0]= 1.0;
}
-/* X en Y flip, twee methodes: bij |**| commentaar weghalen maakt flips lokaal */
+/* X en Y flip, there are 2 methods: at |**| removing comments makes flips local */
/**/ /* if(transvmain) { */
@@ -4384,14 +4359,12 @@ void transform(int mode) /* 'g' 'G' 'r' 'R' 's' 'S' 't' or 'w' 'N' */
for(a=0; a<tottrans; a++, tob++, tv++) {
if(transmain) {
- /* size moet lokaal t.o.v. ouder EN van eigen rotatie */
- /* lokaal tov. ouder: */
-
-
+ /* size local with respect to parent AND own rotation */
+ /* local wrt parent: */
Mat3MulSerie(smat, tob->parmat, mat, tob->parinv, 0, 0,0 ,0, 0);
- /* lokaal tov. eigen rot: */
+ /* local wrt own rotation: */
Mat3MulSerie(totmat, tob->obmat, smat, tob->obinv, 0, 0, 0,0 ,0);
/* XXX this can yield garbage in case of inverted sizes (< 0.0)
@@ -4401,7 +4374,7 @@ void transform(int mode) /* 'g' 'G' 'r' 'R' 's' 'S' 't' or 'w' 'N' */
sizelo[1]= size[1];
sizelo[2]= size[2];
} else {
- /* dan klopt de vorige berekening van de juiste size niet meer precies */
+ /* in this case the previous calculation of the size is wrong */
sizelo[0]= totmat[0][0];
sizelo[1]= totmat[1][1];
sizelo[2]= totmat[2][2];
@@ -4419,9 +4392,9 @@ void transform(int mode) /* 'g' 'G' 'r' 'R' 's' 'S' 't' or 'w' 'N' */
/* what you see is what you want; not what you get! */
- /* correctie voor delta size */
+ /* correction for delta size */
if(tob->flag & TOB_IPO) {
- /* deltasize berekenen (gelijk voor size en dsize) */
+ /* calculate delta size (equal for size and dsize) */
vec[0]= (tob->oldsize[0]+tob->olddsize[0])*(sizelo[0] -1.0);
vec[1]= (tob->oldsize[1]+tob->olddsize[1])*(sizelo[1] -1.0);
@@ -4439,11 +4412,11 @@ void transform(int mode) /* 'g' 'G' 'r' 'R' 's' 'S' 't' or 'w' 'N' */
}
if(G.vd->around!=V3D_LOCAL && !G.obpose) {
- /* translatie */
+ /* translation */
VecSubf(vec, tob->obvec, centre);
Mat3MulVecfl(mat, vec);
VecAddf(vec, vec, centre);
- /* vec is nu de plek waar het object moet komen */
+ /* vec is the location where the object has to be */
VecSubf(vec, vec, tob->obvec);
Mat3MulVecfl(tob->parinv, vec);
@@ -4535,7 +4508,7 @@ void transform(int mode) /* 'g' 'G' 'r' 'R' 's' 'S' 't' or 'w' 'N' */
omtrekfac= startomtrekfac+ 0.05*( mval[1] - yn)*Normalise(dvec);
- /* berekenen hoek voor print */
+ /* calc angle for print */
dist= max[0]-centre[0];
phi0= 360*omtrekfac*dist/(rad*M_PI);
@@ -4548,14 +4521,14 @@ void transform(int mode) /* 'g' 'G' 'r' 'R' 's' 'S' 't' or 'w' 'N' */
sprintf(str, "Warp %3.3f", phi0);
headerprint(str);
- /* elke vertex moet apart geroteerd */
+ /* each vertex transform individually */
tob= transmain;
tv= transvmain;
for(a=0; a<tottrans; a++, tob++, tv++) {
if(transvmain) {
- /* punt transleren naar centre, zodanig roteren dat omtrekafstand==afstand */
+ /* translate point to centre, rotate in such a way that outline==distance */
VECCOPY(vec, tv->oldloc);
Mat4MulVecfl(G.obedit->obmat, vec);
@@ -4812,14 +4785,14 @@ void rightmouse_transform(void)
void single_object_users(int flag)
- /* hierna wel clear_id_newpoins() aanroepen */
+ /* after this call clear_id_newpoins() */
{
Base *base;
Object *ob, *obn;
clear_sca_new_poins(); /* sensor/contr/act */
- /* dupliceren */
+ /* duplicate */
base= FIRSTBASE;
while(base) {
ob= base->object;
@@ -4839,7 +4812,7 @@ void single_object_users(int flag)
ID_NEW(G.scene->camera);
if(G.vd) ID_NEW(G.vd->camera);
- /* evt object pointers */
+ /* object pointers */
base= FIRSTBASE;
while(base) {
ob= base->object;
@@ -5021,7 +4994,7 @@ void single_mat_users(int flag)
for(a=1; a<=ob->totcol; a++) {
ma= give_current_material(ob, a);
if(ma) {
- /* hier niet LIB_NEW testen: deze fie geeft gegarandeerde single_users! */
+ /* do not test for LIB_NEW: this functions guaranteed delivers single_users! */
if(ma->id.us>1) {
man= copy_material(ma);
@@ -5075,7 +5048,7 @@ void do_single_tex_user(Tex **from)
void single_tex_users_expand()
{
- /* alleen als 'ouder' blokken LIB_NEW zijn */
+ /* only when 'parent' blocks are LIB_NEW */
Material *ma;
Lamp *la;
World *wo;
@@ -5119,7 +5092,7 @@ void single_tex_users_expand()
void single_mat_users_expand(void)
{
- /* alleen als 'ouder' blokken LIB_NEW zijn */
+ /* only when 'parent' blocks are LIB_NEW */
Object *ob;
Mesh *me;
@@ -5192,7 +5165,7 @@ void single_user(void)
else if(nr==3) {
single_object_users(1);
single_obdata_users(1);
- single_mat_users(1); /* ook tex */
+ single_mat_users(1); /* also tex */
}
else if(nr==4) {
@@ -5219,7 +5192,7 @@ void make_local(void)
ID *id;
int a, b, mode;
- /* LETOP: de functie new_id(..) voegt het id blok opnieuw in!!! */
+ /* WATCH: the function new_id(..) re-inserts the id block!!! */
if(G.scene->id.lib) return;
@@ -5245,7 +5218,7 @@ void make_local(void)
base= base->next;
}
- /* evt object pointers */
+ /* maybe object pointers */
base= FIRSTBASE;
while(base) {
ob= base->object;
@@ -5398,14 +5371,14 @@ void adduplicate(float *dtrans)
basen= MEM_mallocN(sizeof(Base), "duplibase");
*basen= *base;
- BLI_addhead(&G.scene->base, basen); /* addhead: anders oneindige lus */
+ BLI_addhead(&G.scene->base, basen); /* addhead: prevent eternal loop */
basen->object= obn;
base->flag &= ~SELECT;
basen->flag &= ~OB_FROMGROUP;
if(BASACT==base) BASACT= basen;
- /* duplicates ahv userflags */
+ /* duplicates using userflags */
if(dupflag & DUPIPO) {
id= (ID *)obn->ipo;
@@ -5559,7 +5532,7 @@ void adduplicate(float *dtrans)
base= base->next;
}
- /* evt object pointers */
+ /* check object pointers */
base= FIRSTBASE;
while(base) {
if TESTBASELIB(base) {
@@ -5592,7 +5565,7 @@ void adduplicate(float *dtrans)
base= base->next;
}
- /* materialen */
+ /* materials */
if( dupflag & DUPMAT) {
mao= G.main->mat.first;
while(mao) {
@@ -5634,8 +5607,8 @@ void adduplicate(float *dtrans)
set_active_base(BASACT);
allqueue(REDRAWNLA, 0);
- allqueue(REDRAWACTION, 0); /* ook oops */
- allqueue(REDRAWIPO, 0); /* ook oops */
+ allqueue(REDRAWACTION, 0); /* also oops */
+ allqueue(REDRAWIPO, 0); /* also oops */
}
@@ -5708,7 +5681,7 @@ void selectlinks(void)
void image_aspect(void)
{
- /* alle geselecteerde objecten die imap hebben: scalen in ima verhouding */
+ /* all selected objects with an image map: scale in image aspect */
Base *base;
Object *ob;
Material *ma;
@@ -5914,7 +5887,7 @@ void auto_timeoffs(void)
if(BASACT==0) return;
if(button(&offset, 0, 1000,"Total time")==0) return;
- /* maak array van alle bases, xco yco (scherm) */
+ /* make array of all bases, xco yco (screen) */
base= FIRSTBASE;
while(base) {
if(TESTBASELIB(base)) {
@@ -5957,8 +5930,8 @@ void texspace_edit(void)
Base *base;
int nr=0;
- /* eerst testen of van de zichtbare en geselecteerde ob's
- * wel de texspacedraw aanstaat:
+ /* first test if from visible and selected objects
+ * texspacedraw is set:
*/
if(G.obedit) return;
@@ -5975,7 +5948,6 @@ void texspace_edit(void)
return;
}
- /* nr= pupmenu("Texture space %t|Grabber%x1|Size%x2|Rotate%x3"); */
nr= pupmenu("Texture space %t|Grabber%x1|Size%x2");
if(nr<1) return;
@@ -5999,7 +5971,7 @@ void texspace_edit(void)
void first_base(void)
{
- /* maakt de select bases los en insert ze aan begin */
+ /* inserts selected Bases in beginning of list, sometimes useful for operation order */
Base *base, *next;
if(okee("make first base")==0) return;
diff --git a/source/blender/src/editoops.c b/source/blender/src/editoops.c
index 11ca482f7a7..9612024cd18 100644
--- a/source/blender/src/editoops.c
+++ b/source/blender/src/editoops.c
@@ -146,7 +146,7 @@ void swap_select_all_oops(void)
oops= oops->next;
}
- oops_to_select_objects(); /* ook redr */
+ oops_to_select_objects(); /* also redraw */
G.soops->lockpoin= 0;
}
@@ -170,7 +170,7 @@ static void deselect_all_oops(void)
G.soops->lockpoin= 0;
}
-void set_select_flag_oops(void) /* alle areas */
+void set_select_flag_oops(void) /* all areas */
{
SpaceOops *so;
ScrArea *sa;
@@ -186,7 +186,7 @@ void set_select_flag_oops(void) /* alle areas */
if(G.soops) G.soops->lockpoin= 0;
}
-void deselect_all_area_oops(void) /* alle areas */
+void deselect_all_area_oops(void) /* all areas */
{
SpaceOops *so;
Oops *oops;
@@ -223,7 +223,7 @@ void transform_oops(int mode)
if(G.soops==0) return;
- /* welke oopsen doen mee */
+ /* which oopses... */
oops= G.soops->oops.first;
while(oops) {
if(oops->hide==0) {
@@ -433,7 +433,7 @@ void mouse_select_oops(void)
if(G.soops==0) return;
- /* welke oopsen doen mee */
+ /* which oopses... */
oops= G.soops->oops.first;
oops= find_nearest_oops();
@@ -463,7 +463,7 @@ void mouse_select_oops(void)
G.soops->lockpoin= oops;
}
- oops_to_select_objects(); /* ook redr */
+ oops_to_select_objects(); /* also redraw */
scrarea_queue_headredraw(curarea);
force_draw();
@@ -512,7 +512,7 @@ void borderselect_oops(void)
oops= oops->next;
}
- oops_to_select_objects(); /* ook redr */
+ oops_to_select_objects(); /* also redraw */
}
}
@@ -562,7 +562,7 @@ void select_linked_oops(void)
oops= oops->next;
}
- oops_to_select_objects(); /* ook redr */
+ oops_to_select_objects(); /* also redraw */
}
@@ -600,7 +600,7 @@ void select_backlinked_oops(void)
oops= oops->next;
}
- oops_to_select_objects(); /* ook redr */
+ oops_to_select_objects(); /* also redraw */
}
diff --git a/source/blender/src/editscreen.c b/source/blender/src/editscreen.c
index 1bfc239b0eb..58680e10f68 100644
--- a/source/blender/src/editscreen.c
+++ b/source/blender/src/editscreen.c
@@ -105,10 +105,10 @@
/* TIPS:
*
- * - LET OP DE EDGES, VERTICES ERVAN MOETEN IN VOLGORDE
- (laagste pointer eerst). Anders onvoorspelbare effecten!
- * - probleem: flags zijn nog niet echt netjes. Altijd na gebruik
- op nul zetten.
+ * - WATCH THE EDGES, VERTICES HAVE TO BE IN ORDER...
+ (lowest pointer first). Otherwise unpredictable effects!
+ * - problem: flags here are not nicely implemented. After usage
+ always reset to zero.
*/
static void testareas(void);
@@ -184,12 +184,12 @@ void setcursor_space(int spacetype, short cur)
/* ********* IN/OUT ************* */
-void getmouseco_sc(short *mval) /* screen coordinaten */
+void getmouseco_sc(short *mval) /* screen coordinates */
{
getmouse(mval);
}
-void getmouseco_areawin(short *mval) /* interne area coordinaten */
+void getmouseco_areawin(short *mval) /* internal area coordinates */
{
getmouseco_sc(mval);
@@ -199,7 +199,7 @@ void getmouseco_areawin(short *mval) /* interne area coordinaten */
}
}
-void getmouseco_headwin(short *mval) /* interne area coordinaten */
+void getmouseco_headwin(short *mval) /* internal area coordinates */
{
getmouseco_sc(mval);
@@ -470,11 +470,11 @@ static void scrarea_dispatch_header_events(ScrArea *sa)
}
}
- /* test: bestaat window nog */
+ /* test: does window still exist? */
tempsa= areawinar[sa->headwin];
if(tempsa==0) return;
- /* dit onderscheid loopt niet lekker... */
+ /* this functional separation does not work as well as i expected... */
if(do_change) scrarea_do_headchange(sa);
if(do_redraw) scrarea_do_headdraw(sa);
}
@@ -503,7 +503,7 @@ static void scrarea_dispatch_events(ScrArea *sa)
if(winqueue_break) return;
}
- /* test: bestaat window nog */
+ /* test: does window still exist */
tempsa= areawinar[sa->win];
if(tempsa==0) return;
@@ -534,8 +534,8 @@ void markdirty_all()
int is_allowed_to_change_screen(bScreen *new)
{
- /* niet als curscreen is full
- * niet als obedit && old->scene!=new->scene
+ /* not when curscreen is full
+ * not when obedit && old->scene!=new->scene
*/
if(new==0) return 0;
@@ -806,7 +806,7 @@ unsigned short screen_qread(short *val, char *ascii)
unsigned short extern_qread_ext(short *val, char *ascii)
{
- /* bewaart de laatste INPUTCHANGE en de laatste REDRAW */
+ /* stores last INPUTCHANGE and last REDRAW */
unsigned short event;
event= screen_qread(val, ascii);
@@ -863,7 +863,7 @@ static void screen_dispatch_events(void) {
winqueue_break= 0;
for (sa= G.curscreen->areabase.first; sa; sa= sa->next) {
- /* bewust eerst header afhandelen, dan rest. Header is soms init */
+ /* first check header, then rest. Header sometimes has initialization code */
if (sa->headwin && bwin_qtest(sa->headwin)) {
scrarea_dispatch_header_events(sa);
events_remaining= 1;
@@ -1219,12 +1219,12 @@ static void removedouble_scrverts(void)
verg= verg->next;
}
- /* vervang pointers in edges en vlakken */
+ /* replace pointers in edges and faces */
se= G.curscreen->edgebase.first;
while(se) {
if(se->v1->newv) se->v1= se->v1->newv;
if(se->v2->newv) se->v2= se->v2->newv;
- /* edges zijn veranderd: dus.... */
+ /* edges changed: so.... */
sortscrvert(&(se->v1), &(se->v2));
se= se->next;
}
@@ -1237,7 +1237,7 @@ static void removedouble_scrverts(void)
sa= sa->next;
}
- /* verwijderen */
+ /* remove */
verg= G.curscreen->vertbase.first;
while(verg) {
v1= verg->next;
@@ -1255,7 +1255,7 @@ static void removenotused_scrverts(void)
ScrVert *sv, *svn;
ScrEdge *se;
- /* ga ervan uit dat de edges goed zijn */
+ /* we assume edges are ok */
se= G.curscreen->edgebase.first;
while(se) {
@@ -1280,7 +1280,7 @@ static void removedouble_scredges(void)
{
ScrEdge *verg, *se, *sn;
- /* vergelijken */
+ /* compare */
verg= G.curscreen->edgebase.first;
while(verg) {
se= verg->next;
@@ -1302,7 +1302,7 @@ static void removenotused_scredges(void)
ScrArea *sa;
int a=0;
- /* zet flag als edge gebruikt wordt in area */
+ /* sets flags when edge is used in area */
sa= G.curscreen->areabase.first;
while(sa) {
se= screen_findedge(G.curscreen, sa->v1, sa->v2);
@@ -1359,7 +1359,7 @@ void calc_arearcts(ScrArea *sa)
}
if(sa->winrct.ymin>sa->winrct.ymax) sa->winrct.ymin= sa->winrct.ymax;
- /* als speedup voor berekeningen */
+ /* for speedup */
sa->winx= sa->winrct.xmax-sa->winrct.xmin+1;
sa->winy= sa->winrct.ymax-sa->winrct.ymin+1;
}
@@ -1371,7 +1371,7 @@ static void openheadwin(ScrArea *sa)
glMatrixMode(GL_MODELVIEW);
- areawinar[sa->headwin]= sa; /* anders doet addqueue het niet */
+ areawinar[sa->headwin]= sa; /* oterwise addqueue does not work */
addqueue(sa->headwin, CHANGED, 1);
}
@@ -1380,7 +1380,7 @@ static void openareawin(ScrArea *sa)
sa->win= myswinopen(G.curscreen->mainwin,
sa->winrct.xmin, sa->winrct.xmax, sa->winrct.ymin, sa->winrct.ymax);
- areawinar[sa->win]= sa; /* anders doet addqueue het niet */
+ areawinar[sa->win]= sa; /* otherwise addqueue does not work */
addqueue(sa->win, CHANGED, 1);
}
@@ -1451,8 +1451,8 @@ static void testareas(void)
{
ScrArea *sa;
- /* testen of header er moet zijn, of weg moet, of verplaatst */
- /* testen of window er moet zijn, of weg moet, of verplaatst */
+ /* test for header, if removed, or moved */
+ /* testen for window, if removed, or moved */
for (sa= G.curscreen->areabase.first; sa; sa= sa->next) {
rcti oldhr= sa->headrct;
@@ -1490,14 +1490,14 @@ static void testareas(void)
areawinar[sa->win]= sa;
}
- /* test of winakt in orde is */
+ /* test if winakt is OK */
if( areawinar[G.curscreen->winakt]==0) G.curscreen->winakt= 0;
}
static ScrArea *test_edge_area(ScrArea *sa, ScrEdge *se)
{
- /* test of edge in area ligt, zo niet,
- vind een area die 'm wel heeft */
+ /* test if edge is in area, if not,
+ then find an area that has it */
ScrEdge *se1=0, *se2=0, *se3=0, *se4=0;
@@ -1511,7 +1511,7 @@ static ScrArea *test_edge_area(ScrArea *sa, ScrEdge *se)
sa= G.curscreen->areabase.first;
while(sa) {
- /* een beetje optimaliseren? */
+ /* a bit optimise? */
if(se->v1==sa->v1 || se->v1==sa->v2 || se->v1==sa->v3 || se->v1==sa->v4) {
se1= screen_findedge(G.curscreen, sa->v1, sa->v2);
se2= screen_findedge(G.curscreen, sa->v2, sa->v3);
@@ -1523,7 +1523,7 @@ static ScrArea *test_edge_area(ScrArea *sa, ScrEdge *se)
}
}
- return sa; /* is keurig 0 als niet gevonden */
+ return sa; /* is null when not find */
}
ScrArea *closest_bigger_area(void)
@@ -1543,7 +1543,7 @@ ScrArea *closest_bigger_area(void)
if(sa!=curarea) {
if(sa->winy>=curarea->winy) {
- /* mimimum van vier hoekpunten */
+ /* mimimum of the 4 corners */
vec[0]= sa->v1->vec.x; vec[1]= sa->v1->vec.y;
len= VecLenf(vec, cent);
vec[0]= sa->v2->vec.x; vec[1]= sa->v2->vec.y;
@@ -1555,13 +1555,13 @@ ScrArea *closest_bigger_area(void)
len= MIN4(len, len1, len2, len3);
- /* plus centrum */
+ /* plus centre */
vec[0]= (sa->v2->vec.x+sa->v3->vec.x)/2;
vec[1]= (sa->v1->vec.y+sa->v2->vec.y)/2;
len+= 0.5*VecLenf(vec, cent);
- /* min afmeting */
+ /* min size */
len-= sa->winy+sa->winx;
if(len<dist) {
@@ -1577,7 +1577,7 @@ ScrArea *closest_bigger_area(void)
else return curarea;
}
-/* ************ SCREENBEHEER ************** */
+/* ************ SCREEN MANAGEMENT ************** */
static int statechanged= 0;
void BIF_wait_for_statechange(void)
@@ -1644,10 +1644,10 @@ void add_to_mainqueue(Window *win, void *user_data, short evt, short val, char a
mainqenter_ext(evt, val, ascii);
}
-static bScreen *addscreen(char *name) /* gebruik de setprefsize() als je anders dan fullscreen wilt */
+static bScreen *addscreen(char *name) /* use setprefsize() if you want something else than a full windpw */
{
- /* deze functie zet de variabele G.curscreen
- * omdat alle hulpfuncties moeten weten welk screen
+ /* this function sets variabele G.curscreen,
+ * that global is about used everywhere!
*/
bScreen *sc;
ScrVert *sv1, *sv2, *sv3, *sv4;
@@ -1726,7 +1726,7 @@ void setscreen(bScreen *sc)
ScrArea *sa;
short mval[2];
- if(sc->full) { /* vind de bijhorende full */
+ if(sc->full) { /* find associated full */
sc1= G.main->screen.first;
while(sc1) {
sa= sc1->areabase.first;
@@ -1739,7 +1739,7 @@ void setscreen(bScreen *sc)
if(sc1==0) printf("setscreen error\n");
}
- /* G.curscreen de-activeren */
+ /* de-activate G.curscreen */
if (G.curscreen && G.curscreen != sc) {
sa= G.curscreen->areabase.first;
while(sa) {
@@ -1785,7 +1785,7 @@ void setscreen(bScreen *sc)
if (sl->spacetype==SPACE_OOPS) {
SpaceOops *soops= (SpaceOops*) sl;
- /* patch als deze in oude files zit */
+ /* patch for old files */
if (soops->v2d.cur.xmin==soops->v2d.cur.xmax) {
extern void init_v2d_oops(View2D*);
init_v2d_oops(&soops->v2d);
@@ -1805,20 +1805,20 @@ void setscreen(bScreen *sc)
mainqenter(DRAWEDGES, 1);
dodrawscreen= 1; /* patch! even gets lost,,,? */
- winqueue_break= 1; /* overal uit de queue's gaan */
+ winqueue_break= 1; /* means leave queue everywhere */
}
static void splitarea(ScrArea *sa, char dir, float fac);
-void area_fullscreen(void) /* met curarea */
+void area_fullscreen(void) /* with curarea */
{
- /* deze funktie toggelt: als area full is wordt de parent weer zichtbaar */
+ /* this function toggles: if area is full then the parent will be restored */
bScreen *sc, *oldscreen;
ScrArea *newa, *old;
short headertype, fulltype;
if(curarea->full) {
- sc= curarea->full; /* de oude screen */
+ sc= curarea->full; /* the old screen */
fulltype = sc->full;
// refuse to go out of SCREENAUTOPLAY as long as G_FLAGS_AUTOPLAY
@@ -1827,7 +1827,7 @@ void area_fullscreen(void) /* met curarea */
if (fulltype != SCREENAUTOPLAY || (G.flags & G_FLAGS_AUTOPLAY) == 0) {
sc->full= 0;
- /* vind oude area */
+ /* find old area */
old= sc->areabase.first;
while(old) {
if(old->full) break;
@@ -1858,7 +1858,7 @@ void area_fullscreen(void) /* met curarea */
}
else {
- /* is er maar 1 area? */
+ /* is there only 1 area? */
if(G.curscreen->areabase.first==G.curscreen->areabase.last) return;
if(curarea->spacetype==SPACE_INFO) return;
@@ -1866,16 +1866,16 @@ void area_fullscreen(void) /* met curarea */
old= curarea;
oldscreen= G.curscreen;
- sc= addscreen("temp"); /* deze zet G.curscreen */
+ sc= addscreen("temp"); /* this sets G.curscreen */
splitarea( (ScrArea *)sc->areabase.first, 'h', 0.99);
newa= sc->areabase.first;
newspace(newa->next, SPACE_INFO);
curarea= old;
- G.curscreen= oldscreen; /* moet voor setscreen */
+ G.curscreen= oldscreen; /* needed because of setscreen */
- /* area kopieeren */
+ /* vopy area */
copy_areadata(newa, curarea);
curarea->full= oldscreen;
@@ -1911,12 +1911,12 @@ static void area_autoplayscreen(void)
old= curarea;
oldscreen= G.curscreen;
- sc= addscreen("temp"); /* deze zet G.curscreen */
+ sc= addscreen("temp"); /* this sets G.curscreen */
newa= sc->areabase.first;
curarea= old;
- G.curscreen= oldscreen; /* moet voor setscreen */
+ G.curscreen= oldscreen; /* because of setscreen */
/* copy area settings */
copy_areadata(newa, curarea);
@@ -1937,10 +1937,10 @@ static void copy_screen(bScreen *to, bScreen *from)
ScrEdge *se;
ScrArea *sa;
ListBase lbase;
-
- /* alles van to vrijgeven */
+
+ /* free 'to' */
free_screen(to);
- winqueue_break= 1; /* overal uit queue's gaan */
+ winqueue_break= 1; /* leave queues everywhere */
duplicatelist(&to->vertbase, &from->vertbase);
duplicatelist(&to->edgebase, &from->edgebase);
@@ -1978,7 +1978,7 @@ static void copy_screen(bScreen *to, bScreen *from)
sa= sa->next;
}
- /* op nul zetten (nodig?) */
+ /* put at zero (needed?) */
s1= from->vertbase.first;
while(s1) {
s1->newv= 0;
@@ -1992,10 +1992,10 @@ void duplicate_screen(void)
if(G.curscreen->full != SCREENNORMAL) return;
- /* nieuw screen maken: */
+ /* make new screen: */
oldscreen= G.curscreen;
- sc= addscreen(oldscreen->id.name+2); /* deze zet G.curscreen */
+ sc= addscreen(oldscreen->id.name+2); /* this sets G.curscreen */
copy_screen(sc, oldscreen);
G.curscreen= oldscreen;
@@ -2004,7 +2004,7 @@ void duplicate_screen(void)
}
-/* ************ END SCREENBEHEER ************** */
+/* ************ END SCREEN MANAGEMENT ************** */
/* ************ JOIN/SPLIT/MOVE ************** */
static void joinarea(ScrArea *sa, ScrEdge *onedge)
@@ -2017,8 +2017,8 @@ static void joinarea(ScrArea *sa, ScrEdge *onedge)
sa= test_edge_area(sa, onedge);
if (sa==0) return;
- /* welke edges kunnen ermee? */
- /* vind richtingen met zelfde edge */
+ /* which edges? */
+ /* find directions with same edge */
sa2= G.curscreen->areabase.first;
while(sa2) {
if(sa2 != sa) {
@@ -2052,7 +2052,7 @@ static void joinarea(ScrArea *sa, ScrEdge *onedge)
if(sa2) {
- /* nieuwe area is oude sa */
+ /* new area is old sa */
if(sa2==left) {
sa->v1= sa2->v1;
sa->v2= sa2->v2;
@@ -2078,7 +2078,7 @@ static void joinarea(ScrArea *sa, ScrEdge *onedge)
screen_addedge(G.curscreen, sa->v3, sa->v4);
}
- /* edge en area weg */
+ /* remove edge and area */
/* remlink(&G.curscreen->edgebase, setest); */
/* freeN(setest); */
del_area(sa2);
@@ -2087,7 +2087,7 @@ static void joinarea(ScrArea *sa, ScrEdge *onedge)
removedouble_scredges();
removenotused_scredges();
- removenotused_scrverts(); /* moet als laatste */
+ removenotused_scrverts(); /* as last */
testareas();
mainqenter(DRAWEDGES, 1);
@@ -2097,16 +2097,16 @@ static void joinarea(ScrArea *sa, ScrEdge *onedge)
}
static short testsplitpoint(ScrArea *sa, char dir, float fac)
-/* return 0: geen split mogelijk */
-/* else return (integer) screencoordinaat splitpunt */
+/* return 0: no split possible */
+/* else return (integer) screencoordinate split point */
{
short x, y;
- /* area groot genoeg? */
+ /* area big enough? */
if(sa->v4->vec.x- sa->v1->vec.x <= 2*AREAMINX) return 0;
if(sa->v2->vec.y- sa->v1->vec.y <= 2*AREAMINY) return 0;
- /* voor zekerheid */
+ /* to be sure */
if(fac<0.0) fac= 0.0;
if(fac>1.0) fac= 1.0;
@@ -2152,54 +2152,54 @@ static void splitarea(ScrArea *sa, char dir, float fac)
areawinset(sa->win);
if(dir=='h') {
- /* nieuwe vertices */
+ /* new vertices */
sv1= screen_addvert(sc, sa->v1->vec.x, split);
sv2= screen_addvert(sc, sa->v4->vec.x, split);
- /* nieuwe edges */
+ /* new edges */
screen_addedge(sc, sa->v1, sv1);
screen_addedge(sc, sv1, sa->v2);
screen_addedge(sc, sa->v3, sv2);
screen_addedge(sc, sv2, sa->v4);
screen_addedge(sc, sv1, sv2);
- /* nieuwe areas: boven */
+ /* new areas: top */
newa= screen_addarea(sc, sv1, sa->v2, sa->v3, sv2, sa->headertype, sa->spacetype);
copy_areadata(newa, sa);
- /* area onder */
+ /* area below */
sa->v2= sv1;
sa->v3= sv2;
}
else {
- /* nieuwe vertices */
+ /* new vertices */
sv1= screen_addvert(sc, split, sa->v1->vec.y);
sv2= screen_addvert(sc, split, sa->v2->vec.y);
- /* nieuwe edges */
+ /* new edges */
screen_addedge(sc, sa->v1, sv1);
screen_addedge(sc, sv1, sa->v4);
screen_addedge(sc, sa->v2, sv2);
screen_addedge(sc, sv2, sa->v3);
screen_addedge(sc, sv1, sv2);
- /* nieuwe areas: links */
+ /* new areas: left */
newa= screen_addarea(sc, sa->v1, sa->v2, sv2, sv1, sa->headertype, sa->spacetype);
copy_areadata(newa, sa);
- /* area rechts */
+ /* area right */
sa->v1= sv1;
sa->v2= sv2;
}
- /* dubbele vertices en edges verwijderen */
+ /* remove double vertices en edges */
removedouble_scrverts();
removedouble_scredges();
removenotused_scredges();
mainqenter(DRAWEDGES, 1);
- dodrawscreen= 1; /* patch! even gets lost,,,? */
+ dodrawscreen= 1; /* patch! event gets lost,,,? */
testareas();
}
@@ -2232,9 +2232,9 @@ static void splitarea_interactive(ScrArea *area, ScrEdge *onedge)
dir= scredge_is_horizontal(onedge)?'v':'h';
mywinset(G.curscreen->mainwin);
- /* hoort al goede matrix te hebben */
+ /* should already have a good matrix */
- /* rekening houden met grid en minsize */
+ /* keep track of grid and minsize */
while(ok==0) {
getmouseco_sc(mval);
@@ -2287,7 +2287,7 @@ static void splitarea_interactive(ScrArea *area, ScrEdge *onedge)
if(ok==1) {
splitarea(sa, dir, fac);
mainqenter(DRAWEDGES, 1);
- dodrawscreen= 1; /* patch! even gets lost,,,? */
+ dodrawscreen= 1; /* patch! event gets lost,,,? */
}
}
@@ -2335,8 +2335,8 @@ static void select_connected_scredge(bScreen *sc, ScrEdge *edge)
int oneselected;
char dir;
- /* select connected, alleen in de juiste richting */
- /* 'dir' is de richting van de EDGE */
+ /* select connected, only in the right direction */
+ /* 'dir' is the direction of EDGE */
if(edge->v1->vec.x==edge->v2->vec.x) dir= 'v';
else dir= 'h';
@@ -2371,8 +2371,8 @@ static void select_connected_scredge(bScreen *sc, ScrEdge *edge)
}
void test_scale_screen(bScreen *sc)
-/* testen of screenvertices vergroot/verkleind moeten worden */
-/* testen of offset nog klopt */
+/* test if screen vertices should be scaled */
+/* also check offset */
{
ScrVert *sv=0;
ScrEdge *se;
@@ -2523,12 +2523,12 @@ static void moveareas(ScrEdge *edge)
}
}
- /* nu zijn alle vertices met 'flag==1' degene die verplaatst kunnen worden. */
- /* we lopen de areas af en testen vrije ruimte met MINSIZE */
+ /* now all verices with 'flag==1' are the ones that can be moved. */
+ /* we check all areas and test for free space with MINSIZE */
bigger= smaller= 10000;
sa= G.curscreen->areabase.first;
while(sa) {
- if(dir=='h') { /* als top of down edge select, test hoogte */
+ if(dir=='h') { /* if top or down edge selected, test height */
if(sa->headertype) {
headery= HEADERY;
areaminy= AREAMINY;
@@ -2540,7 +2540,7 @@ static void moveareas(ScrEdge *edge)
if(sa->v1->flag && sa->v4->flag) {
int y1;
- if(sa->v2->vec.y==G.curscreen->sizey-1) /* bovenste edge */
+ if(sa->v2->vec.y==G.curscreen->sizey-1) /* top edge */
y1= sa->v2->vec.y - sa->v1->vec.y-headery-EDGEWIDTH;
else
y1= sa->v2->vec.y - sa->v1->vec.y-areaminy;
@@ -2548,14 +2548,14 @@ static void moveareas(ScrEdge *edge)
}
else if(sa->v2->flag && sa->v3->flag) {
int y1;
- if(sa->v1->vec.y==0) /* onderste edge */
+ if(sa->v1->vec.y==0) /* bottom edge */
y1= sa->v2->vec.y - sa->v1->vec.y-headery-EDGEWIDTH;
else
y1= sa->v2->vec.y - sa->v1->vec.y-areaminy;
smaller= MIN2(smaller, y1);
}
}
- else { /* als left of right edge select, test breedte */
+ else { /* if left or right edge selected, test width */
if(sa->v1->flag && sa->v2->flag) {
int x1= sa->v4->vec.x - sa->v1->vec.x-AREAMINX;
bigger= MIN2(bigger, x1);
@@ -2602,7 +2602,7 @@ static void moveareas(ScrEdge *edge)
if (doit==1) {
for (v1= G.curscreen->vertbase.first; v1; v1= v1->next) {
if (v1->flag) {
- /* zo is AREAGRID netjes */
+ /* that way a nice AREAGRID */
if((dir=='v') && v1->vec.x>0 && v1->vec.x<G.curscreen->sizex-1) {
v1->vec.x+= delta;
if(delta != bigger && delta != -smaller) v1->vec.x-= (v1->vec.x % AREAGRID);
@@ -2628,7 +2628,7 @@ static void moveareas(ScrEdge *edge)
glDrawBuffer(GL_BACK);
mainqenter(DRAWEDGES, 1);
- dodrawscreen= 1; /* patch! even gets lost,,,? */
+ dodrawscreen= 1; /* patch! event gets lost,,,? */
}
static void scrollheader(ScrArea *area)
@@ -2666,8 +2666,8 @@ static void scrollheader(ScrArea *area)
int select_area(int spacetype)
{
- /* vanuit editroutines aanroepen, als er meer area's
- * zijn van type 'spacetype' kan er een area aangegeven worden
+ /* call from edit routines, when there are more areas
+ * of type 'spacetype', you can indicate an area manually
*/
ScrArea *sa, *sact = NULL;
int tot=0;
@@ -2789,9 +2789,9 @@ static void drawscredge(ScrEdge *se)
v1= &(se->v1->vec);
v2= &(se->v2->vec);
- /* borders screen niet tekenen */
- /* vanwege resolutie verschillen (PC/SGI files) de linit een
- * beetje afronden?
+ /* do not draw borders screenİ */
+ /* bcause of different framebuffer resoltions (PC/SGI etc files)
+ * a bit rounding here? should be looked at further...
*/
se->border= 1;
if(v1->x<=1 && v2->x<=1) return;