ZoneCarteBase

class labpyproject.apps.labpyrinthe.gui.skinBase.zone_carte_base.ZoneCarteBase(Mngr, skin, ItemObjectClass, **kwargs)[source]

Bases : labpyproject.apps.labpyrinthe.gui.skinBase.interfaces.AbstractZoneCarte

Zone carte (labyrinthe), équivalent graphique du LabLevel.

Constructeur

Paramètres
  • ItemObjectClass – implémentation dédiée de ItemObjectBase

  • kwargs – logperf (bool: indique si l’on mesure les perfs d’affichage), max_casesize (int: par défaut 40)

Attributes Summary

BASE_CASE_LAYER

couche de base des cases

BASE_LAYER_TYPECASES

types des cases de la couche de base

IMAGE_ZONE_ROBOT

couche dédiée aux zones d’action des robots

SHAPE_BG

couche de formes vectorielles

SHAPE_HIGHLIGHT_ROBOT

couche de formes vectorielles

SHAPE_MASK

couche de formes vectorielles

Methods Summary

active_single_layer(layername, z)

Post initialisation d’une couche :

clean_before_resize()

Ré-initialisations avant re-publication suite à un resize.

clear_all()

Efface l’ensemble des couches

clear_layer(name)

Efface une couche virtuelle

compute_caze_size(cw, ch)

Retourne la taille des cases si le canvas mesure cw*ch

compute_delta_coords(cw, ch)

Calcul les décallages dx, dy à appliquer aux cases pour les centrer si le canvas mesure cw*ch

convert_case_coords(x, y)

Conversion des coords x, y en coords réelles

delete_case(case)

Suppression d’une case

draw_bg()

Crée le rectangle de fond en mode optimisé.

draw_bot_highlights()

Dessinne les éventueles formes de highlight des bots

draw_mask()

Dessine un masque ne laissant apparaitre que le labyrinthe (clipping manuel).

draw_shapes()

Dessine les formes vectorielles

get_all_items()

Retourne la liste de tous les items associés à des cases

get_bot_highlight_datas(robotlist, gambleinfos)

Retourne les données de highlight du joueur actif

get_canvas_dimensions()

Retourne les dimensions de l’objet graphique implémentant ZoneCarteBase

get_item_for_case(case)

Retourne l’item associé à la case

get_items_for_layer(layername)

Retourne tous les items d’une couche virtuelle

get_layername_for_case(case)

Retourne le nom de la couche associée à la case

get_real_coords_for_case(case)

Retourne les coords converties associées à la case.

get_zindex_for_case(case)

Retourne le zindex associé à une case

get_zindex_for_layername(layername)

Retourne le zindex associé à une couche

hide_resize_screen()

Masquage de l’écran d’accueil

highlight_player(robotlist, gambleinfos)

Identification du prochain joueur

init_carte_dimensions(w, h)

Initialise les dimensions de la carte au premier affichage

init_casetype_datas()

Références rapides type de case / layername et zindex

init_layersdict([firstinit])

Ré initialise le dict d’association cases / items

move_case(case, x, y)

Déplace la case aux coordonnées x, y

on_carte_geometry_updated()

Appelée lorsque self.casesize et self.carte_repere ont été recalculés

on_carte_published()

Traitements spécifiques en fin de publication.

on_carte_repere_changed(listitems)

Appelée lorsque le repère de positionnement a été modifié.

on_carte_updated(dictargs, has_anim)

Traitements spécifiques en fin de publication.

on_case_size_changed(listitems)

Appelée lorsque la taille des cases a été modifiée.

publish_carte(dictargs)

Affichage de la carte : publication complète

re_initialise()

Ré initialise l’objet

register_GUI(guiMngr)

Enregistre la ref à la GUI

resize_items(listitems)

Appelle la méthode de resize des items si nécessaire.

set_case(case)

Crée ou modifie un item pour afficher la case

set_item_position(itemobj)

Repositionne un item

show_bot_dead(robot)

Appelée pour lors de l’élimination de robot.

show_resize_screen()

Affichage d’un écran d’attente

update_bg()

Met à jour le rectangle de fond permettant de simuler le quadrillage

update_carte(dictargs)

Mise à jour de la carte à partir des change logs d’étape.

update_carte_geometry(w, h)

Méthode de resize de la carte.

update_highlight()

Mise à jour des formes de highlight

update_item_view(itemobj)

Mise à jour du contenu graphique associé à l’item

update_mask()

Redimensionnement du masque ou du clipping

update_shapes()

Mise à jour des formes

Attributes Documentation

BASE_CASE_LAYER = 'BASE_CASE_LAYER'

couche de base des cases

BASE_LAYER_TYPECASES = None

types des cases de la couche de base

IMAGE_ZONE_ROBOT = 'IMAGE_ZONE_ROBOT'

couche dédiée aux zones d’action des robots

SHAPE_BG = 'SHAPE_BG'

couche de formes vectorielles

SHAPE_HIGHLIGHT_ROBOT = 'SHAPE_HIGHLIGHT_ROBOT'

couche de formes vectorielles

SHAPE_MASK = 'SHAPE_MASK'

couche de formes vectorielles

Methods Documentation

active_single_layer(layername, z)[source]

Post initialisation d’une couche :

  • pour activer la couche de façon permanente (pygame)

  • pour insérer un marqueur de gestion des zindexs (tkinter)

clean_before_resize()[source]

Ré-initialisations avant re-publication suite à un resize.

clear_all()[source]

Efface l’ensemble des couches

clear_layer(name)[source]

Efface une couche virtuelle

compute_caze_size(cw, ch)[source]

Retourne la taille des cases si le canvas mesure cw*ch

compute_delta_coords(cw, ch)[source]

Calcul les décallages dx, dy à appliquer aux cases pour les centrer si le canvas mesure cw*ch

convert_case_coords(x, y)[source]

Conversion des coords x, y en coords réelles

delete_case(case)[source]

Suppression d’une case

draw_bg()[source]

Crée le rectangle de fond en mode optimisé. Couche : layer = self.layersdict[ZoneCarteBase.SHAPE_BG]

draw_bot_highlights()[source]

Dessinne les éventueles formes de highlight des bots

draw_mask()[source]

Dessine un masque ne laissant apparaitre que le labyrinthe (clipping manuel). Couche : layer = self.layersdict[ZoneCarteBase.SHAPE_MASK]

draw_shapes()[source]

Dessine les formes vectorielles

get_all_items()[source]

Retourne la liste de tous les items associés à des cases

get_bot_highlight_datas(robotlist, gambleinfos)[source]

Retourne les données de highlight du joueur actif

get_canvas_dimensions()[source]

Retourne les dimensions de l’objet graphique implémentant ZoneCarteBase

get_item_for_case(case)[source]

Retourne l’item associé à la case

get_items_for_layer(layername)[source]

Retourne tous les items d’une couche virtuelle

get_layername_for_case(case)[source]

Retourne le nom de la couche associée à la case

get_real_coords_for_case(case)[source]

Retourne les coords converties associées à la case.

get_zindex_for_case(case)[source]

Retourne le zindex associé à une case

get_zindex_for_layername(layername)[source]

Retourne le zindex associé à une couche

hide_resize_screen()[source]

Masquage de l’écran d’accueil

highlight_player(robotlist, gambleinfos)[source]

Identification du prochain joueur

init_carte_dimensions(w, h)[source]

Initialise les dimensions de la carte au premier affichage

init_casetype_datas()[source]

Références rapides type de case / layername et zindex

init_layersdict(firstinit=False)[source]

Ré initialise le dict d’association cases / items

move_case(case, x, y)[source]

Déplace la case aux coordonnées x, y

on_carte_geometry_updated()[source]

Appelée lorsque self.casesize et self.carte_repere ont été recalculés

on_carte_published()[source]

Traitements spécifiques en fin de publication.

on_carte_repere_changed(listitems)[source]

Appelée lorsque le repère de positionnement a été modifié.

on_carte_updated(dictargs, has_anim)[source]

Traitements spécifiques en fin de publication.

Paramètres
  • dictargs – dict généré par GameManager.update_carte

  • has_anim – bool indiquant si il y a animation

on_case_size_changed(listitems)[source]

Appelée lorsque la taille des cases a été modifiée.

publish_carte(dictargs)[source]

Affichage de la carte : publication complète

Paramètres

dictargs – dict généré par GameManager.publish_carte

re_initialise()[source]

Ré initialise l’objet

register_GUI(guiMngr)[source]

Enregistre la ref à la GUI

resize_items(listitems)[source]

Appelle la méthode de resize des items si nécessaire.

set_case(case)[source]

Crée ou modifie un item pour afficher la case

set_item_position(itemobj)[source]

Repositionne un item

show_bot_dead(robot)[source]

Appelée pour lors de l’élimination de robot.

show_resize_screen()[source]

Affichage d’un écran d’attente

update_bg()[source]

Met à jour le rectangle de fond permettant de simuler le quadrillage

update_carte(dictargs)[source]

Mise à jour de la carte à partir des change logs d’étape.

Paramètres

dictargs – dict généré par GameManager.update_carte

update_carte_geometry(w, h)[source]

Méthode de resize de la carte. Recalcul de la taille des cases et du repère de positionnement, déclenche au besoin les callbacks de modification des dimensions et du positionnement des cases.

Paramètres

h) ((w,) – surface alouée à la carte

update_highlight()[source]

Mise à jour des formes de highlight

update_item_view(itemobj)[source]

Mise à jour du contenu graphique associé à l’item

update_mask()[source]

Redimensionnement du masque ou du clipping

update_shapes()[source]

Mise à jour des formes