|
@@ -485,7 +485,7 @@ void la_ApplyTranslation(MTransformData* td, int x, int y){
|
|
for(int i=0;i<td->next;i++){ MTOrigMVert* to=arrElement(td->Originals, i, sizeof(MTOrigMVert));
|
|
for(int i=0;i<td->next;i++){ MTOrigMVert* to=arrElement(td->Originals, i, sizeof(MTOrigMVert));
|
|
tnsApplyTransform43d(gp, trans, to->p); if(!td->UseLocal) tnsApplyTransform43d(to->mv->p, td->obmatinv, gp); else tnsVectorCopy3d(gp, to->mv->p);
|
|
tnsApplyTransform43d(gp, trans, to->p); if(!td->UseLocal) tnsApplyTransform43d(to->mv->p, td->obmatinv, gp); else tnsVectorCopy3d(gp, to->mv->p);
|
|
}
|
|
}
|
|
- tnsInvalidateMeshBatch(td->mo);
|
|
|
|
|
|
+ tnsInvalidateMeshBatch(td->mo); tnsMMeshCalculateNormal(td->mo);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
void la_ApplyScale(MTransformData* td, int uix, int uiy){
|
|
void la_ApplyScale(MTransformData* td, int uix, int uiy){
|
|
@@ -505,7 +505,7 @@ void la_ApplyScale(MTransformData* td, int uix, int uiy){
|
|
for(int i=0;i<td->next;i++){ MTOrigMVert* to=arrElement(td->Originals, i, sizeof(MTOrigMVert));
|
|
for(int i=0;i<td->next;i++){ MTOrigMVert* to=arrElement(td->Originals, i, sizeof(MTOrigMVert));
|
|
tnsApplyTransform43d(gp, final, to->p); tnsApplyTransform43d(to->mv->p, td->obmatinv, gp);
|
|
tnsApplyTransform43d(gp, final, to->p); tnsApplyTransform43d(to->mv->p, td->obmatinv, gp);
|
|
}
|
|
}
|
|
- tnsInvalidateMeshBatch(td->mo);
|
|
|
|
|
|
+ tnsInvalidateMeshBatch(td->mo); tnsMMeshCalculateNormal(td->mo);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
void la_ApplyRotation(MTransformData* td, int uix, int uiy){
|
|
void la_ApplyRotation(MTransformData* td, int uix, int uiy){
|
|
@@ -529,7 +529,7 @@ void la_ApplyRotation(MTransformData* td, int uix, int uiy){
|
|
for(int i=0;i<td->next;i++){ MTOrigMVert* to=arrElement(td->Originals, i, sizeof(MTOrigMVert));
|
|
for(int i=0;i<td->next;i++){ MTOrigMVert* to=arrElement(td->Originals, i, sizeof(MTOrigMVert));
|
|
tnsApplyTransform43d(gp, final, to->p); tnsApplyTransform43d(to->mv->p, td->obmatinv, gp);
|
|
tnsApplyTransform43d(gp, final, to->p); tnsApplyTransform43d(to->mv->p, td->obmatinv, gp);
|
|
}
|
|
}
|
|
- tnsInvalidateMeshBatch(td->mo);
|
|
|
|
|
|
+ tnsInvalidateMeshBatch(td->mo); tnsMMeshCalculateNormal(td->mo);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
void la_CancelTransformObjects(MTransformData* td){
|
|
void la_CancelTransformObjects(MTransformData* td){
|
|
@@ -1113,7 +1113,7 @@ int OPINV_Make(laOperator *a, laEvent *e){
|
|
|
|
|
|
MMakeData md={0};
|
|
MMakeData md={0};
|
|
la_GetSelectionIslands(mo,&md,ex->SelectMode);
|
|
la_GetSelectionIslands(mo,&md,ex->SelectMode);
|
|
- int success=la_MakeFacesFromIslands(mo,&md);
|
|
|
|
|
|
+ int success=la_MakeFacesFromIslands(mo,&md); if(success){ tnsMMeshCalculateNormal(mo); }
|
|
la_ClearIslands(&md);
|
|
la_ClearIslands(&md);
|
|
|
|
|
|
tnsMMeshRefreshIndex(mo);
|
|
tnsMMeshRefreshIndex(mo);
|