| 
						
						
							
								
							
						
						
					 | 
				
				 | 
				
					@ -31,8 +31,9 @@ std::pair<internal::paired_model_matrix *, bool> subface::apply_transform(intern | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					            temp.world_to_local.linear() = temp.world_to_local.linear() * rotation_matrix.transpose(); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					        } break; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					        case internal::transform_type::translation: { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					            temp.local_to_world.translation() += param.head<3>(); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					            temp.world_to_local.translation() -= param.head<3>(); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					            Eigen::Translation3d translation(param.head<3>()); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					            temp.local_to_world = translation * temp.local_to_world; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					            temp.world_to_local = temp.world_to_local * translation.inverse(); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					        } break; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					        default: throw std::invalid_argument("Invalid transform type"); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					    } | 
				
			
			
		
	
	
		
			
				
					| 
						
							
								
							
						
						
						
					 | 
				
				 | 
				
					
  |