You've already forked etude_lego_jurassic_world
Ajoute les frises de têtes et enrichit les étiquettes
This commit is contained in:
43
scripts/plot_minifig_head_collages.py
Normal file
43
scripts/plot_minifig_head_collages.py
Normal file
@@ -0,0 +1,43 @@
|
||||
"""Construit les frises chronologiques des têtes de minifigs par personnage."""
|
||||
|
||||
from pathlib import Path
|
||||
|
||||
from lib.plots.minifig_character_collages import build_character_collages
|
||||
from lib.rebrickable.minifig_character_sets import (
|
||||
build_character_sets,
|
||||
group_by_character,
|
||||
load_minifigs_by_set,
|
||||
load_missing_resources,
|
||||
load_sets,
|
||||
write_character_sets,
|
||||
)
|
||||
|
||||
|
||||
MINIFIGS_BY_SET_PATH = Path("data/intermediate/minifigs_by_set.csv")
|
||||
SETS_ENRICHED_PATH = Path("data/intermediate/sets_enriched.csv")
|
||||
RESOURCES_DIR = Path("figures/rebrickable")
|
||||
DESTINATION_DIR = Path("figures/step32/minifig_heads")
|
||||
CHARACTER_SETS_PATH = Path("data/intermediate/minifig_character_sets.csv")
|
||||
DOWNLOAD_LOG_PATH = Path("data/intermediate/resources_download_log.csv")
|
||||
EXCLUDED_CHARACTERS = ["Figurant"]
|
||||
|
||||
|
||||
def main() -> None:
|
||||
"""Assemble les apparitions des personnages et génère les frises de têtes associées."""
|
||||
minifigs_by_set = load_minifigs_by_set(MINIFIGS_BY_SET_PATH)
|
||||
sets_lookup = load_sets(SETS_ENRICHED_PATH)
|
||||
character_sets = build_character_sets(minifigs_by_set, sets_lookup, excluded_characters=EXCLUDED_CHARACTERS)
|
||||
write_character_sets(CHARACTER_SETS_PATH, character_sets)
|
||||
missing_heads = load_missing_resources(DOWNLOAD_LOG_PATH, "head.jpg")
|
||||
grouped = group_by_character(character_sets)
|
||||
build_character_collages(
|
||||
grouped,
|
||||
RESOURCES_DIR,
|
||||
DESTINATION_DIR,
|
||||
missing_paths=missing_heads,
|
||||
image_filename="head.jpg",
|
||||
)
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
main()
|
||||
Reference in New Issue
Block a user