def read_prop_list(file: BinaryIO): assert_version('PROP_LIST', 2, int2(file)) keys = read_list(file, read_prop_key_instance) props = read_list(file, read_prop_instance) result = {} for key in keys: result[key] = [] for prop in props: key = keys[prop.key_index] prop.key = key result[key].append(prop) return result
def read_custom_material_mesh_list(file: BinaryIO): assert_version('CUSTOM_MATERIAL_MESH_LIST', 1, int2(file)) return read_list(file, read_custom_material_mesh)
def read_building_projectile_emitter_list(file: BinaryIO): assert_version('BUILDING_PROJECTILE_EMITTER_LIST', 1, int2(file)) return read_list(file, read_building_projectile_emitter)
from groups import ideal, errors, virtual import reader import plots def calc_shadow_losses(df, virtual_df): df["mirrors_shadow_losses"] = virtual_df["shadow_losses"] df["receiver_shadow_losses"] = df["shadow_losses"] - df[ "mirrors_shadow_losses"] ideal_tr_dfs = reader.read_list(ideal.transversal) ideal_ln_dfs = reader.read_list(ideal.longitudinal) errors_tr_dfs = reader.read_list(errors.transversal) errors_ln_dfs = reader.read_list(errors.longitudinal) virtual_mirror_plane = reader.read(virtual.transversal[0]) virtual_abs_tr = reader.read(virtual.transversal[1]) virtual_abs_ln = reader.read(virtual.longitudinal[1]) ideal_plain_tr = ideal_tr_dfs[0] ideal_plain_ln = ideal_ln_dfs[0] calc_shadow_losses(ideal_plain_ln, virtual_abs_ln) # plots.geometry_quantities(ideal_plain_tr, [ # "shadow_losses", # "mirrors_shadow_losses", # "receiver_shadow_losses"]) plots.geometry_quantities(ideal_plain_tr, ["intercept_factor"]) plots.geometry_quantities(ideal_plain_ln, ["intercept_factor"])
def read_sound_shape_list(file: BinaryIO): version = int2(file) # version return read_list(file, read_sound_shape)
def read_zones_template_list(file: BinaryIO): assert_version('ZONES_TEMPLATE_LIST', 1, int2(file)) return read_list(file, read_zone_template)
def read_point_light_list(file: BinaryIO): assert_version('POINT_LIGHT_LIST', 1, int2(file)) return read_list(file, read_point_light)
def read_building_list(file: BinaryIO): assert_version('BATTLEFIELD_BUILDING_LIST', 1, int2(file)) return read_list(file, read_building)
def read_composite_scene_list(file: BinaryIO): assert_version('COMPOSITE_SCENE_LIST', 1, int2(file)) return read_list(file, read_composite_scene)
def read_light_probe_list(file: BinaryIO): assert_version('LIGHT_PROBE_LIST', 1, int2(file)) return read_list(file, read_light_probe)
def read_spot_light_list(file: BinaryIO): assert_version('SPOT_LIGHT_LIST', 1, int2(file)) return read_list(file, read_spot_light)
def read_particle_list(file: BinaryIO): assert_version('PARTICLE_EMITTER_LIST', 1, int2(file)) return read_list(file, read_particle)