en utilisant boost :: graph avec des propriétés groupées. Je veux être en mesure d'exécuter des recherches en utilisant une variété de différents schémas de pondération de bord possibles. Je ne souhaite pas créer une classe supplémentaire pour les propriétés groupées, si possible, et passer des cartes de poids différentes en fonction du type de recherche sans créer de nouveau graphique ou modifier toutes les propriétés existantes dans le graphique. Est-ce que je peux construire manuellement un property_map pour edge_weight_t? Voici ce que j'ai jusqu'à présent:création de boost :: graph edge_weight propriété map
typedef boost::property_map<SSPSGraph_t, boost::edge_weight_t>::type WeightMap;
typedef boost::property<boost::edge_weight_t, float> DistanceProperty;
Et je voudrais simplement être en mesure de le faire
WeightMap distances;
edge_descriptor_t e = some_edge_or_another;
float d=some_derived_distance_value;
et d'assigner des distances [e] à la values-- appropriée
distances[e]= ?
Ou ai-je juste besoin de décomposer et de créer une nouvelle structure pour les propriétés groupées - quelque chose que j'ai essayé d'éviter - et de créer la carte de poids à partir de cela? Nouveau pour amplifier :: graphique; ne suppose pas que je ne fais pas quelque chose de complètement stupide ici.