func (c *ColorM) SetElement(i, j int, element float32) *ColorM {
	newC := &ColorM{
		body:      make([]float32, 16),
		translate: make([]float32, 4),
	}
	copy(newC.body, colorMIdentityBody)
	copy(newC.translate, colorMIdentityTranslate)
	if c.isInited() {
		if c.body != nil {
			copy(newC.body, c.body)
		}
		if c.translate != nil {
			copy(newC.translate, c.translate)
		}
	}
	if j < (ColorMDim - 1) {
		newC.body[i+j*(ColorMDim-1)] = element
	} else {
		newC.translate[i] = element
	}
	return newC
}
func (c *ColorM) SetElement(i, j int, element float32) *ColorM {
	newC := &ColorM{
		body:      make([]float32, 16),
		translate: make([]float32, 4),
	}
	copy(newC.body, colorMIdentityBody)
	copy(newC.translate, colorMIdentityTranslate)
	if c.isInited() {
		if c.body != nil {
			copy(newC.body, c.body)
		}
		if c.translate != nil {
			copy(newC.translate, c.translate)
		}
	}
	if j < (ColorMDim - 1) {
		newC.body[i+j*(ColorMDim-1)] = element
	} else {
		newC.translate[i] = element
	}
	return newC
}
func ( c * ColorM ) SetElement ( i , j int , element float32 ) * ColorM { newC := & ColorM { body : make ( [ ] float32 , 16 ) , translate : make ( [ ] float32 , 4 ) , } copy ( newC . body , colorMIdentityBody ) copy ( newC . translate , colorMIdentityTranslate ) if c . isInited ( ) { if c . body != nil { copy ( newC . body , c . body ) } if c . translate != nil { copy ( newC . translate , c . translate ) } } if j < ( ColorMDim - 1 ) { newC . body [ i + j * ( ColorMDim - 1 ) ] = element } else { newC . translate [ i ] = element } return newC }
// SetElement sets an element at (i, j).
SetElement sets an element at ( i j ) .