internal/restorable/image.go
func (i *Image) DrawTriangles(img *Image, vertices []float32, indices []uint16, colorm *affine.ColorM, mode graphics.CompositeMode, filter graphics.Filter, address graphics.Address) {
	if i.priority {
		panic("restorable: DrawTriangles cannot be called on a priority image")
	}
	if len(vertices) == 0 {
		return
	}
	theImages.makeStaleIfDependingOn(i)

	if img.stale || img.volatile || i.screen || !IsRestoringEnabled() || i.volatile {
		i.makeStale()
	} else {
		i.appendDrawTrianglesHistory(img, vertices, indices, colorm, mode, filter, address)
	}
	i.image.DrawTriangles(img.image, vertices, indices, colorm, mode, filter, address)
}
func (i *Image) DrawTriangles(img *Image, vertices []float32, indices []uint16, colorm *affine.ColorM, mode graphics.CompositeMode, filter graphics.Filter, address graphics.Address) {
	if i.priority {
		panic("restorable: DrawTriangles cannot be called on a priority image")
	}
	if len(vertices) == 0 {
		return
	}
	theImages.makeStaleIfDependingOn(i)

	if img.stale || img.volatile || i.screen || !IsRestoringEnabled() || i.volatile {
		i.makeStale()
	} else {
		i.appendDrawTrianglesHistory(img, vertices, indices, colorm, mode, filter, address)
	}
	i.image.DrawTriangles(img.image, vertices, indices, colorm, mode, filter, address)
}
func ( i * Image ) DrawTriangles ( img * Image , vertices [ ] float32 , indices [ ] uint16 , colorm * affine . ColorM , mode graphics . CompositeMode , filter graphics . Filter , address graphics . Address ) { if i . priority { panic ( " " ) } if len ( vertices ) == 0 { return } theImages . makeStaleIfDependingOn ( i ) if img . stale || img . volatile || i . screen || ! IsRestoringEnabled ( ) || i . volatile { i . makeStale ( ) } else { i . appendDrawTrianglesHistory ( img , vertices , indices , colorm , mode , filter , address ) } i . image . DrawTriangles ( img . image , vertices , indices , colorm , mode , filter , address ) }
// DrawTriangles draws a given image img to the image.
DrawTriangles draws a given image img to the image .