diff --git a/isotest/bits/material.v b/isotest/bits/material.v index 12d49f9..dc1576f 100644 --- a/isotest/bits/material.v +++ b/isotest/bits/material.v @@ -19,7 +19,9 @@ mut: // XXX or 10% glass 90% concrete? // XXX do we really need such materials? -struct Material { + +// MaterialInfo information about materials in object +struct MaterialInfo { mut: name string @@ -27,23 +29,23 @@ mut: elems map[string]&MaterialElem } -fn new_material() &Material { - m := &Material{} +fn new_material_info() &MaterialInfo { + mi := &MaterialInfo{} - return m + return mi } // Add elem record -fn (mut m Material) add_elem(bits_size int, elem &Elem) { +fn (mut mi MaterialInfo) add_elem(bits_size int, elem &Elem) { me := &MaterialElem{bits_size, elem} - m.elems[elem.name] = me + mi.elems[elem.name] = me } // Get elem record by name -fn (m &Material) get_elem_name(elem_name string) &MaterialElem { +fn (mi &MaterialInfo) get_elem_name(elem_name string) &MaterialElem { - me := m.elems[elem_name] + me := mi.elems[elem_name] //if isnil(me) { // panic(2) diff --git a/isotest/bits/object.v b/isotest/bits/object.v index 3da72c7..00c5ae9 100644 --- a/isotest/bits/object.v +++ b/isotest/bits/object.v @@ -21,7 +21,7 @@ mut: // Material/Elem //elem &Elem // XXX use id/enum - mat &Material + mat_info &MaterialInfo // Position in the world // XXX in map cells/coords? @@ -44,7 +44,7 @@ mut: fn new_object() &Object { o := &Object{ //elem: &Elem(0), - mat: &Material(0), + mat_info: &MaterialInfo(0), //transform: new_transform(), } return o @@ -66,7 +66,7 @@ fn (o &Object) mass() f32 { mut total_mass := 0 - for _, me in o.mat.elems { + for _, me in o.mat_info.elems { mat_density := me.elem.density mat_volume := me.bits_size