Beveled and QuadBeveled both use the same algorithm now
This commit is contained in:
		
							parent
							
								
									468d4e9dab
								
							
						
					
					
						commit
						810728a479
					
				@ -10,26 +10,12 @@ type Beveled struct {
 | 
			
		||||
 | 
			
		||||
// AtWhen satisfies the Pattern interface.
 | 
			
		||||
func (pattern Beveled) AtWhen (x, y, width, height int) (c color.RGBA) {
 | 
			
		||||
	var highlighted  bool
 | 
			
		||||
	var bottomCorner bool
 | 
			
		||||
	
 | 
			
		||||
	if width > height {
 | 
			
		||||
		bottomCorner = y > height / 2
 | 
			
		||||
	} else {
 | 
			
		||||
		bottomCorner = x < width / 2
 | 
			
		||||
	}
 | 
			
		||||
	
 | 
			
		||||
	if bottomCorner {
 | 
			
		||||
		highlighted = float64(x) < float64(height) - float64(y)
 | 
			
		||||
	} else {
 | 
			
		||||
		highlighted = float64(width) - float64(x) > float64(y)
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	if highlighted {
 | 
			
		||||
		return pattern.Highlight.AtWhen(x, y, width, height)
 | 
			
		||||
	} else {
 | 
			
		||||
		return pattern.Shadow.AtWhen(x, y, width, height)
 | 
			
		||||
	}
 | 
			
		||||
	return QuadBeveled {
 | 
			
		||||
		pattern.Highlight,
 | 
			
		||||
		pattern.Shadow,
 | 
			
		||||
		pattern.Shadow,
 | 
			
		||||
		pattern.Highlight,
 | 
			
		||||
	}.AtWhen(x, y, width, height)
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// QuadBeveled is like Beveled, but with four sides. A pattern can be specified
 | 
			
		||||
 | 
			
		||||
		Reference in New Issue
	
	Block a user