Mapas comemorativos de Dia dos Namorados por meio de renderização geoespacial
Mapas comemorativos de Dia dos Namorados por meio de renderização geoespacial
por Jeffrey Bryant
Com a aproximação do Valentine’s Day (Dia dos Namorados em grande parte da Europa e América do Norte), achei que poderia ser divertido criar alguns mapas comemorativos para homenagear a data. Já vi vários painéis/placas/objetos decorativos anunciados online que permitem encomendar mapas semelhantes, mas é possível criar os seus próprios usando a Wolfram Language e a função GeoGraphics.
Construção Local
Construção Local
Para obter os melhores resultados, é preferível construir os mapas localmente. A qualidade é melhor quando se tem acesso a hardware gráfico local, ao contrário de servidores remotos sem interface gráfica e sem hardware dedicado.
Decidi buscar um resultado com quatro painéis, destacando o local do primeiro encontro, o primeiro encontro oficial, o local do pedido de casamento e o local do casamento. Existem várias formas de organizar essas informações, e optei por usar uma fonte mais “artística”, para dar um aspecto mais comemorativo do que computacional.
Defina a representação visual dos “GeoMarkers”:
In[]:=
heart=🩷;
Defina um conjunto de regras que estabelecem a GeoPosition dos quatro eventos:
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}]};
Por fim, organize os painéis em um 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 para a Nuvem
FormFunction para a Nuvem
Uma solução em nuvem traz algumas restrições em comparação com a execução local. O servidor não possui interface gráfica (“headless”) e, portanto, não tem as mesmas capacidades de renderização de uma GPU local e dedicada. Além disso, a escolha de fontes é limitada, sendo melhor manter tudo simples.
O código a seguir pode ser usado para implantar um formulário na nuvem que permite ao usuário informar os locais em campos de entrada e, em seguida, gerar os resultados.
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"
CITE ESTE NOTEBOOK
CITE ESTE NOTEBOOK
Commemorative Valentine's Day maps via geospatial rendering
por Jeffrey Bryant
Wolfram Community, STAFF PICKS, 9 fevereiro 2026
https://community.wolfram.com/groups/-/m/t/3637408
por Jeffrey Bryant
Wolfram Community, STAFF PICKS, 9 fevereiro 2026
https://community.wolfram.com/groups/-/m/t/3637408