Remove pointers from .Col()

This commit is contained in:
bloeys
2024-05-04 23:30:40 +04:00
parent fa25c1f551
commit e6bf7aee10
4 changed files with 26 additions and 16 deletions

View File

@ -28,8 +28,8 @@ func (m *Mat2) String() string {
return fmt.Sprintf("\n| %+-9.3f %+-9.3f |\n| %+-9.3f %+-9.3f |\n", m.Data[0][0], m.Data[0][1], m.Data[1][0], m.Data[1][1]) return fmt.Sprintf("\n| %+-9.3f %+-9.3f |\n| %+-9.3f %+-9.3f |\n", m.Data[0][0], m.Data[0][1], m.Data[1][0], m.Data[1][1])
} }
func (m *Mat2) Col(c int) *Vec2 { func (m *Mat2) Col(c int) Vec2 {
return &Vec2{Data: m.Data[c]} return Vec2{Data: m.Data[c]}
} }
// Add m += m2 // Add m += m2

View File

@ -31,8 +31,8 @@ func (m *Mat3) String() string {
) )
} }
func (m *Mat3) Col(c int) *Vec3 { func (m *Mat3) Col(c int) Vec3 {
return &Vec3{Data: m.Data[c]} return Vec3{Data: m.Data[c]}
} }
// Add m += m2 // Add m += m2

View File

@ -32,8 +32,8 @@ func (m *Mat4) String() string {
) )
} }
func (m *Mat4) Col(c int) *Vec4 { func (m *Mat4) Col(c int) Vec4 {
return &Vec4{Data: m.Data[c]} return Vec4{Data: m.Data[c]}
} }
// Add m += m2 // Add m += m2

View File

@ -51,20 +51,30 @@ func (t *TrMat) Rotate(rads float32, axis *Vec3) *TrMat {
rotate.Data[2][1] = temp.Data[2]*axis.Data[1] - s*axis.Data[0] rotate.Data[2][1] = temp.Data[2]*axis.Data[1] - s*axis.Data[0]
rotate.Data[2][2] = c + temp.Data[2]*axis.Data[2] rotate.Data[2][2] = c + temp.Data[2]*axis.Data[2]
result := &Mat4{} result := Mat4{}
result.Data[0] = t.Col(0).Scale(rotate.Data[0][0]).
Add(t.Col(1).Scale(rotate.Data[0][1])). col0 := t.Col(0)
Add(t.Col(2).Scale(rotate.Data[0][2])). col1 := t.Col(1)
col2 := t.Col(2)
result.Data[0] = col0.Scale(rotate.Data[0][0]).
Add(col1.Scale(rotate.Data[0][1])).
Add(col2.Scale(rotate.Data[0][2])).
Data Data
result.Data[1] = t.Col(0).Scale(rotate.Data[1][0]). col0 = t.Col(0)
Add(t.Col(1).Scale(rotate.Data[1][1])). col1 = t.Col(1)
Add(t.Col(2).Scale(rotate.Data[1][2])). col2 = t.Col(2)
result.Data[1] = col0.Scale(rotate.Data[1][0]).
Add(col1.Scale(rotate.Data[1][1])).
Add(col2.Scale(rotate.Data[1][2])).
Data Data
result.Data[2] = t.Col(0).Scale(rotate.Data[2][0]). col0 = t.Col(0)
Add(t.Col(1).Scale(rotate.Data[2][1])). col1 = t.Col(1)
Add(t.Col(2).Scale(rotate.Data[2][2])). col2 = t.Col(2)
result.Data[2] = col0.Scale(rotate.Data[2][0]).
Add(col1.Scale(rotate.Data[2][1])).
Add(col2.Scale(rotate.Data[2][2])).
Data Data
t.Data[0] = result.Data[0] t.Data[0] = result.Data[0]