| 
					
				 | 
			
			
				@@ -152,7 +152,7 @@ void la_PopulateSelectDataPrimitives(MSelectData* sd, tnsMeshObject* mo, tnsCame 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     glClearColor(0,0,0,0); glClear(GL_COLOR_BUFFER_BIT|GL_DEPTH_BUFFER_BIT); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     glEnable(GL_DEPTH_TEST); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     tnsPushMatrix(); tnsApplyObjectMatrix(mo); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    if(Knife){ glPointSize(10); } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    if(Knife){ glPointSize(5); } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     if(DoEdges || Knife){ tnsDrawBatch(mo->Batch, "edges_select",0,0); } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     if(DoVerts || Knife){ tnsDrawBatch(mo->Batch, "verts_select",0,0); } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     if(Knife){ glPointSize(1); } 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -1073,8 +1073,9 @@ tnsMFace* la_MakeFacesFrom2Verts(tnsMeshObject* mo, tnsMVert* mv1, tnsMVert* mv2 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     if(!oe1||!oe2) return 0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     ov1=tnsMMeshEdgeAnotherVert(oe1,mv1); ov2=tnsMMeshEdgeAnotherVert(oe2,mv2); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     ov1->flags|=TNS_MESH_FLAG_SELECTED;ov2->flags|=TNS_MESH_FLAG_SELECTED; mv1->flags&=(~TNS_MESH_FLAG_SELECTED);mv2->flags&=(~TNS_MESH_FLAG_SELECTED); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    laListHandle vl={0}; lstAppendPointer(&vl,ov1); lstAppendPointer(&vl,mv1); lstAppendPointer(&vl,mv2); lstAppendPointer(&vl,ov2); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    tnsMFace* f=tnsMMeshMakeFaceN(mo, 4, &vl, 0); tnsMMeshEnsureSelectionFromVerts(mo); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    laListHandle vl={0}; int vcount=3; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    lstAppendPointer(&vl,ov1); lstAppendPointer(&vl,mv1); lstAppendPointer(&vl,mv2); if(ov2!=ov1){ lstAppendPointer(&vl,ov2); vcount=4; } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    tnsMFace* f=tnsMMeshMakeFaceN(mo, vcount, &vl, 0); tnsMMeshEnsureSelectionFromVerts(mo); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     while(lstPopPointer(&vl)); return f; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 int la_IsEndingVert(tnsMVert* mv){ 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -1323,8 +1324,10 @@ void la_KnifeUpdateToolBatch(MSelectExtra* se,tnsObject* o){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     if(count){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         c=tnsCreateCommand(batch, "edges", count+1, 3, GL_LINE_STRIP, 0, 0); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         tnsCommandUseUniformColor(c,laAccentColor(LA_BT_NORMAL)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        tnsCommandUseWidth(c, 2); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         c=tnsCreateCommand(batch, "points", count+1, 3, GL_POINTS, 0, 0); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         tnsCommandUseUniformColor(c,laAccentColor(LA_BT_NORMAL)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        tnsCommandUseWidth(c, 6); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     se->root->ExtraBatch=batch; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     free(points); 
			 |