Discussão:PlusCodes: mudanças entre as edições

De Documentação
(Criou página com ' == Diagrama utilizado == <pre> flowchart TD A[Enter a Plus Code] -->|type: 598P+Q36 Itagui, Antioquia, Colombia| B[Split it into 2 parts] B -->|Itagui, Antioquia, Colombia| E[Resolve as prefix in a Blackbox] B -->|suffix=598P+Q36| D[Concatenate prefix+sufix] E-->|prefix=67R6| D D-->|olc=67R6598P+Q36| F[Convert OLC to LatLon] </pre>')
 
m (add praia)
 
(5 revisões intermediárias pelo mesmo usuário não estão sendo mostradas)
Linha 1: Linha 1:


== Diagrama utilizado ==
== Diagrama utilizado ==
Exemplo original de https://github.com/google/open-location-code/issues/497
Usar https://mermaid.live/edit com o seguinte script
<pre>
<pre>
flowchart TD
flowchart TD
    A[Enter a Plus Code] -->|type: 598P+Q36 Itagui, Antioquia, Colombia| B[Split it into 2 parts]
  A[Enter a PlusCode]
    B -->|Itagui, Antioquia, Colombia| E[Resolve as prefix in a Blackbox]
  B[Split it into 2 parts]
    B -->|suffix=598P+Q36| D[Concatenate prefix+sufix]
  E[Resolves the name to an<br/>OLC-prefix through a <b><i>black box</i></b>]
    E-->|prefix=67R6| D
  style E fill:black,stroke-width:2px,color:#fff,stroke-dasharray: 5 5
    D-->|olc=67R6598P+Q36| F[Convert OLC to LatLon]
  D[Concatenate prefix+sufix]
 
  A -->|598P+Q36 Itagui, Antioquia, Colombia| B
  E -->|olc_prefix=67R6| D
  B -->|name=Itagui, Antioquia, Colombia| E
  B -->|olc_suffix=598P+Q36| D
  D -->|olc=67R6598P+Q36| F[Decode OLC to<br/>Latitude-Longitude]
</pre>
</pre>
Traduzido  para portugues:
Usar https://mermaid.live/edit com o seguinte script
<pre>
flowchart TD
  A[Entrar com um PlusCode]
  B[Quebrar em 2 partes]
  E[Resolver o nome em um prefixo<br/> OLC através de uma <b><i>caixa preta</i></b>]
  style E fill:black,stroke-width:2px,color:#fff,stroke-dasharray: 5 5
  D[Concatenar prefixo com sufixo]
  A -->|598P+Q3 Itagui, Antioquia, Colombia| B
  E -->|olc_prefixo=67R6| D
  B -->|nome=Itagui, Antioquia, Colombia| E
  B -->|olc_sufixo=598P+Q3| D
  D -->|olc=67R6598P+Q3| F[Decodificar OLC<br/>para Latitude-Longitude]
</pre>
MELHOR e usando exemplo de Altamira, ver https://stackoverflow.com/q/58489357/287948
<pre>
flowchart TD
    A[Enter a Plus Code]
    B[Split it into 2 parts]
    E[Find the<br/> reference-point of the <i>name</i><br/> in a black box]
    D["Convert to OLC by<br/><i>recoverNearest</i>(<i>shortCode</i>,<i>refPoint</i>)"]
    F[Convert OLC to LatLong point]
    A -->|<i>type</i>: GR7R+3C Ararunaquara - Altamira, PA, Brasil| B
    B -->|<i>name</i>=Ararunaquara - Altamira, PA, Brasil| E
    B -->|<i>shortCode</i>=GR7R+3C| D
    E-->|<i>refPoint</i>=Ararunaquara's LatLong| D
    D-->|<i>olc</i>=6889GR7R+3C| F
    style E fill:#000,color:#FFF
</pre>
Para CV-Praia
<pre>
flowchart TD
    A[Enter a Plus Code]
    B[Split it into 2 parts]
    E[Find the<br/> reference-point of the <i>name</i><br/> in a black box]
    D["Convert to OLC by<br/><i>recoverNearest</i>(<i>shortCode</i>,<i>refPoint</i>)"]
    F[Convert OLC to LatLong point]
    A -->|<i>type</i>: WF8Q+WF, Cape Verde, Praia| B
    B -->|<i>name</i>=Cape Verde, Praia| E
    B -->|<i>shortCode</i>=WF8Q+WF| D
    E-->|<i>refPoint</i>=Praia's LatLong| D
    D-->|<i>olc</i>=796RWF8Q+WF| F
    style E fill:#000,color:#FFF</pre>
=== Aplicando transparência na caixa-preta ===
Conforme o padrão OLC para encurtamento de códigos, descrito em https://github.com/google/open-location-code/blob/main/docs/specification.md#short-codes
cada nome deveria ser associado a uma coordenada de ponto, por exemplo o centroide da cidade. Dado um ponto de interesse a codificar ou decodificar para OLC:
* encode: o sistema de resolução de nomes confere a distância do ponto  aos candidatos e usa o mais próximo, desde que dentro da distância válida.
* decode: usa o prefixo eleito para decodificação. Conforme a posição do ponto de referência (ex. centroide da cidade) pode ser mais de um prefixo.

Edição atual tal como às 12h57min de 30 de maio de 2024

Diagrama utilizado

Exemplo original de https://github.com/google/open-location-code/issues/497

Usar https://mermaid.live/edit com o seguinte script

flowchart TD
  A[Enter a PlusCode]
  B[Split it into 2 parts]
  E[Resolves the name to an<br/>OLC-prefix through a <b><i>black box</i></b>]
  style E fill:black,stroke-width:2px,color:#fff,stroke-dasharray: 5 5
  D[Concatenate prefix+sufix]

  A -->|598P+Q36 Itagui, Antioquia, Colombia| B
  E -->|olc_prefix=67R6| D
  B -->|name=Itagui, Antioquia, Colombia| E
  B -->|olc_suffix=598P+Q36| D
  D -->|olc=67R6598P+Q36| F[Decode OLC to<br/>Latitude-Longitude]

Traduzido para portugues:

Usar https://mermaid.live/edit com o seguinte script

flowchart TD
  A[Entrar com um PlusCode]
  B[Quebrar em 2 partes]
  E[Resolver o nome em um prefixo<br/> OLC através de uma <b><i>caixa preta</i></b>]
  style E fill:black,stroke-width:2px,color:#fff,stroke-dasharray: 5 5
  D[Concatenar prefixo com sufixo]

  A -->|598P+Q3 Itagui, Antioquia, Colombia| B
  E -->|olc_prefixo=67R6| D
  B -->|nome=Itagui, Antioquia, Colombia| E
  B -->|olc_sufixo=598P+Q3| D
  D -->|olc=67R6598P+Q3| F[Decodificar OLC<br/>para Latitude-Longitude]

MELHOR e usando exemplo de Altamira, ver https://stackoverflow.com/q/58489357/287948

flowchart TD
    A[Enter a Plus Code]
    B[Split it into 2 parts]
    E[Find the<br/> reference-point of the <i>name</i><br/> in a black box]
    D["Convert to OLC by<br/><i>recoverNearest</i>(<i>shortCode</i>,<i>refPoint</i>)"]
    F[Convert OLC to LatLong point]

    A -->|<i>type</i>: GR7R+3C Ararunaquara - Altamira, PA, Brasil| B
    B -->|<i>name</i>=Ararunaquara - Altamira, PA, Brasil| E
    B -->|<i>shortCode</i>=GR7R+3C| D
    E-->|<i>refPoint</i>=Ararunaquara's LatLong| D
    D-->|<i>olc</i>=6889GR7R+3C| F
    style E fill:#000,color:#FFF

Para CV-Praia

flowchart TD
    A[Enter a Plus Code]
    B[Split it into 2 parts]
    E[Find the<br/> reference-point of the <i>name</i><br/> in a black box]
    D["Convert to OLC by<br/><i>recoverNearest</i>(<i>shortCode</i>,<i>refPoint</i>)"]
    F[Convert OLC to LatLong point]

    A -->|<i>type</i>: WF8Q+WF, Cape Verde, Praia| B
    B -->|<i>name</i>=Cape Verde, Praia| E
    B -->|<i>shortCode</i>=WF8Q+WF| D
    E-->|<i>refPoint</i>=Praia's LatLong| D
    D-->|<i>olc</i>=796RWF8Q+WF| F
    style E fill:#000,color:#FFF

Aplicando transparência na caixa-preta

Conforme o padrão OLC para encurtamento de códigos, descrito em https://github.com/google/open-location-code/blob/main/docs/specification.md#short-codes cada nome deveria ser associado a uma coordenada de ponto, por exemplo o centroide da cidade. Dado um ponto de interesse a codificar ou decodificar para OLC:

  • encode: o sistema de resolução de nomes confere a distância do ponto aos candidatos e usa o mais próximo, desde que dentro da distância válida.
  • decode: usa o prefixo eleito para decodificação. Conforme a posição do ponto de referência (ex. centroide da cidade) pode ser mais de um prefixo.