forked from bartvdbraak/blender
added mesh skin to the face key menu and added a python slot here.
This commit is contained in:
parent
8eb0544f08
commit
9477a7bc5c
@ -1,9 +1,9 @@
|
|||||||
#!BPY
|
#!BPY
|
||||||
|
|
||||||
"""
|
"""
|
||||||
Name: 'Bridge Faces/Edge-Loops'
|
Name: 'Skin Faces/Edge-Loops'
|
||||||
Blender: 243
|
Blender: 243
|
||||||
Group: 'Mesh'
|
Group: 'MeshFaceKey'
|
||||||
Tooltip: 'Select 2 vert loops, then run this script.'
|
Tooltip: 'Select 2 vert loops, then run this script.'
|
||||||
"""
|
"""
|
||||||
|
|
||||||
|
@ -769,6 +769,7 @@ int BPY_menu_do_python( short menutype, int event )
|
|||||||
case PYMENU_RENDER:
|
case PYMENU_RENDER:
|
||||||
case PYMENU_WIZARDS:
|
case PYMENU_WIZARDS:
|
||||||
case PYMENU_SCRIPTTEMPLATE:
|
case PYMENU_SCRIPTTEMPLATE:
|
||||||
|
case PYMENU_MESHFACEKEY:
|
||||||
break;
|
break;
|
||||||
|
|
||||||
default:
|
default:
|
||||||
|
@ -109,6 +109,8 @@ static int bpymenu_group_atoi( char *str )
|
|||||||
return PYMENU_ARMATURE;
|
return PYMENU_ARMATURE;
|
||||||
else if( !strcmp( str, "ScriptTemplate" ) )
|
else if( !strcmp( str, "ScriptTemplate" ) )
|
||||||
return PYMENU_SCRIPTTEMPLATE;
|
return PYMENU_SCRIPTTEMPLATE;
|
||||||
|
else if( !strcmp( str, "MeshFaceKey" ) )
|
||||||
|
return PYMENU_MESHFACEKEY;
|
||||||
/* "Misc" or an inexistent group name: use misc */
|
/* "Misc" or an inexistent group name: use misc */
|
||||||
else
|
else
|
||||||
return PYMENU_MISC;
|
return PYMENU_MISC;
|
||||||
@ -182,7 +184,10 @@ char *BPyMenu_group_itoa( short menugroup )
|
|||||||
break;
|
break;
|
||||||
case PYMENU_SCRIPTTEMPLATE:
|
case PYMENU_SCRIPTTEMPLATE:
|
||||||
return "ScriptTemplate";
|
return "ScriptTemplate";
|
||||||
break;
|
break;
|
||||||
|
case PYMENU_MESHFACEKEY:
|
||||||
|
return "MeshFaceKey";
|
||||||
|
break;
|
||||||
case PYMENU_MISC:
|
case PYMENU_MISC:
|
||||||
return "Misc";
|
return "Misc";
|
||||||
break;
|
break;
|
||||||
|
@ -105,7 +105,7 @@ typedef enum {
|
|||||||
PYMENU_HELP,/*Main Help menu items - prob best to leave for 'official' ones*/
|
PYMENU_HELP,/*Main Help menu items - prob best to leave for 'official' ones*/
|
||||||
PYMENU_HELPSYSTEM,/* Resources, troubleshooting, system tools */
|
PYMENU_HELPSYSTEM,/* Resources, troubleshooting, system tools */
|
||||||
PYMENU_HELPWEBSITES,/* Help -> Websites submenu */
|
PYMENU_HELPWEBSITES,/* Help -> Websites submenu */
|
||||||
|
PYMENU_MESHFACEKEY, /* face key in mesh editmode */
|
||||||
PYMENU_TOTAL
|
PYMENU_TOTAL
|
||||||
} PYMENUHOOKS;
|
} PYMENUHOOKS;
|
||||||
|
|
||||||
|
@ -91,6 +91,10 @@
|
|||||||
|
|
||||||
#include "editmesh.h"
|
#include "editmesh.h"
|
||||||
|
|
||||||
|
/* bpymenu */
|
||||||
|
#include "BPY_extern.h"
|
||||||
|
#include "BPY_menus.h"
|
||||||
|
|
||||||
static float icovert[12][3] = {
|
static float icovert[12][3] = {
|
||||||
{0,0,-200},
|
{0,0,-200},
|
||||||
{144.72, -105.144,-89.443},
|
{144.72, -105.144,-89.443},
|
||||||
@ -680,10 +684,39 @@ void addedgeface_mesh(void)
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
else if(amount > 4) {
|
else if(amount > 4) {
|
||||||
int ret= pupmenu("Make Faces %t|Auto|Make FGon|Clear FGon");
|
|
||||||
|
/* Python Menu */
|
||||||
|
BPyMenu *pym;
|
||||||
|
char menu_number[3];
|
||||||
|
int i=0, has_pymenu=0, ret;
|
||||||
|
|
||||||
|
/* facemenu, will add python items */
|
||||||
|
char facemenu[4096]= "Make Faces%t|Auto%x1|Make FGon%x2|Clear FGon%x3";
|
||||||
|
|
||||||
|
/* note that we account for the 10 previous entries with i+4: */
|
||||||
|
for (pym = BPyMenuTable[PYMENU_MESHFACEKEY]; pym; pym = pym->next, i++) {
|
||||||
|
|
||||||
|
if (!has_pymenu) {
|
||||||
|
strcat(facemenu, "|%l");
|
||||||
|
has_pymenu = 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
strcat(facemenu, "|");
|
||||||
|
strcat(facemenu, pym->name);
|
||||||
|
strcat(facemenu, " %x");
|
||||||
|
sprintf(menu_number, "%d", i+4);
|
||||||
|
strcat(facemenu, menu_number);
|
||||||
|
}
|
||||||
|
|
||||||
|
ret= pupmenu(facemenu);
|
||||||
|
|
||||||
if(ret==1) addfaces_from_edgenet();
|
if(ret==1) addfaces_from_edgenet();
|
||||||
else if(ret==2) make_fgon(1);
|
else if(ret==2) make_fgon(1);
|
||||||
else if(ret==3) make_fgon(0);
|
else if(ret==3) make_fgon(0);
|
||||||
|
else if (ret >= 4) {
|
||||||
|
BPY_menu_do_python(PYMENU_MESHFACEKEY, ret - 4);
|
||||||
|
return;
|
||||||
|
}
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
else if(amount<2) {
|
else if(amount<2) {
|
||||||
|
Loading…
Reference in New Issue
Block a user