Cartes commémoratives de la Saint-Valentin grâce au rendu géospatial
Cartes commémoratives de la Saint-Valentin grâce au rendu géospatial
par Jeffrey Bryant
À l’approche de la Saint-Valentin, je me suis dit qu’il pourrait être amusant de créer des cartes commémoratives pour célébrer la fête. J’ai vu en ligne divers panneaux/plaques/bibelots annoncés qui vous permettent de commander des cartes similaires, mais vous pouvez créer les vôtres en utilisant Wolfram Language et GeoGraphics.
Construction locale
Construction locale
Pour de meilleurs résultats, il est préférable de construire les cartes localement. La qualité est meilleure lorsque vous avez accès à du matériel de rendu local, contrairement aux serveurs distants sans interface graphique et sans matériel graphique.
J’ai décidé d’opter pour un résultat avec quatre panneaux mettant en valeur le lieu de la rencontre, la première rencontre officielle, le lieu de la demande en mariage et le lieu du mariage. Il existe plusieurs façons de disposer les informations pertinentes et j’ai choisi d’utiliser une police plutôt « artistique » afin d’obtenir un rendu plus commémoratif que computationnel.
Définissez la représentation visuelle des GeoMarkers :
In[]:=
heart=🩷;
Définissez un ensemble de règles définissant la GeoPosition des quatre événements :
In[]:=
rules={"Where We Met"->GeoPosition[{40.1321839,-88.2914261}],"First Date"->GeoPosition[{40.1473436,-88.26}],"Will You?"->GeoPosition[{40.10904240845442,-85.69168927434205}],"I Do"->GeoPosition[{41.0988907,-80.6535806}]};
Enfin, disposez les panneaux dans une Grid :
In[]:=
Grid{{Column[{GeoGraphics[{GeoMarker[rules[[1,2]],heart]},GeoRange->Quantity[1,"Miles"],GeoBackground->"Monochrome",ImageSize->300],Style[rules[[1,1]],DarkGray,18,FontFamily->"Shadows Into Light Two"]},Alignment->Center],Column[{GeoGraphics[{GeoMarker[rules[[2,2]],heart]},GeoRange->Quantity[1,"Miles"],GeoBackground->"Monochrome",ImageSize->300],Style[rules[[2,1]],DarkGray,18,FontFamily->"Shadows Into Light Two"]},Alignment->Center]},{Column[{GeoGraphics[{GeoMarker[rules[[3,2]],heart]},GeoRange->Quantity[1,"Miles"],GeoBackground->"Monochrome",ImageSize->300],Style[rules[[3,1]],DarkGray,18,FontFamily->"Shadows Into Light Two"]},Alignment->Center],Column[{GeoGraphics[{GeoMarker[rules[[4,2]],heart]},GeoRange->Quantity[1,"Miles"],GeoBackground->"Monochrome",ImageSize->300],Style[rules[[4,1]],DarkGray,18,FontFamily->"Shadows Into Light Two"]},Alignment->Center]}},Background->,Spacings->2
Out[]=
|
| ||||
|
|
FormFunction pour le cloud
FormFunction pour le cloud
Une solution cloud comporte certaines restrictions par rapport à une exécution en local. Le serveur est sans interface graphique et ne dispose donc pas des mêmes capacités de rendu qu’un processeur graphique local et dédié. De plus, le choix des polices est limité, il est donc préférable de faire simple.
Le code suivant peut être utilisé pour déployer un formulaire dans le cloud permettant à l’utilisateur de spécifier des emplacements dans des champs de saisie, puis de générer les résultats :
In[]:=
CloudDeployFormPage{{"wheremet","where we met"}->"Location",{"firstdate","first date"}->"Location",{"proposal","proposal"}->"Location",{"wedding","wedding"}->"Location"},Grid{{Column[{GeoGraphics[{GeoMarker[#wheremet]},GeoRange->Quantity[1,"Miles"],GeoBackground->"Monochrome",ImageSize->400],Style["where we met",DarkGray,18,FontFamily->"Arial"]},Alignment->Center],Column[{GeoGraphics[{GeoMarker[#firstdate]},GeoRange->Quantity[1,"Miles"],GeoBackground->"Monochrome",ImageSize->400],Style["first date",DarkGray,18,FontFamily->"Arial"]},Alignment->Center]},{Column[{GeoGraphics[{GeoMarker[#proposal]},GeoRange->Quantity[1,"Miles"],GeoBackground->"Monochrome",ImageSize->400],Style["Will You?",DarkGray,18,FontFamily->"Arial"]},Alignment->Center],Column[{GeoGraphics[{GeoMarker[#wedding]},GeoRange->Quantity[1,"Miles"],GeoBackground->"Monochrome",ImageSize->400],Style["I Do",DarkGray,18,FontFamily->"Arial"]},Alignment->Center]}},Background->,Spacings->2&,"ResultBelow",ImageSize->1024,AppearanceRules-><|"Title"->"Happy Valentines Day","Description"->"Enter Locations:"|>,"ValentineMaps",Permissions->"Public"
CITER CE NOTEBOOK
CITER CE NOTEBOOK
Cartes commémoratives de la Saint-Valentin grâce au rendu géospatial
par Jeffrey Bryant
Communauté Wolfram, CHOIX DE L'ÉQUIPE, 9 février 2026
https://community.wolfram.com/groups/-/m/t/3637408
par Jeffrey Bryant
Communauté Wolfram, CHOIX DE L'ÉQUIPE, 9 février 2026
https://community.wolfram.com/groups/-/m/t/3637408