Category: Uncategorized

PL-SQL – Calculating distance between two geographical points (coordinates based)

Hi dear readers,

This is the first contribution of this blog to PL-SQL community, actually this is a tribute to my great friend Itagyba Abondanza Kuhlman, author of this source code, please visit his blog at http://blog.iak.com.br/

Gyba

There are a lot of curiosities about the Oracle Database World, his specialty. He is one of those people who came to this planet to the mission of helping humanity to evolve, developing critical thinking, friendship, thinking of things never before thought, leaving wherever he goes a trail of good feelings. Thank You Gyba.

The purpose of this code is to calculate the distance (in Kilometers) between two geographical points using mathematics, specifically trigonometry.

pythagorean-theoremBdHxo


create or replace PACKAGE GEOGRAPHICAL_PACKAGE IS

  --This Package is designed to calculate the linear distance between two geographical points
--based on the Latitute and Longitude

  HALF_CIRCLE           CONSTANT NUMBER := 180;
  MINUTES_PER_DEGREES   CONSTANT NUMBER := 60;
  MILES_PER_MINUTES     CONSTANT NUMBER := 1.1515;
  KILOMETERS_PER_MILES  CONSTANT NUMBER := 1.609344;

  FUNCTION PI RETURN NUMBER DETERMINISTIC;

  FUNCTION DEGR2RAD(DEGREES NUMBER) RETURN NUMBER DETERMINISTIC;

  FUNCTION RAD2DEGR(RADIANS NUMBER) RETURN NUMBER DETERMINISTIC;

  FUNCTION DISTANCE(LAT1  NUMBER
                   ,LONG1 NUMBER
                   ,LAT2  NUMBER
                   ,LONG2 NUMBER) RETURN NUMBER DETERMINISTIC;
  --
END GEOGRAPHICAL_PACKAGE;

create or replace PACKAGE BODY GEOGRAPHICAL_PACKAGE IS
  --
  FUNCTION PI RETURN NUMBER DETERMINISTIC IS

  BEGIN
    RETURN ACOS(-1);
  END PI;

  FUNCTION DEGR2RAD(DEGREES NUMBER) RETURN NUMBER DETERMINISTIC IS

  BEGIN
    RETURN DEGREES * PI / HALF_CIRCLE;
  END DEGR2RAD;

  FUNCTION RAD2DEGR(RADIANS NUMBER) RETURN NUMBER DETERMINISTIC IS

  BEGIN
    RETURN RADIANS * HALF_CIRCLE / PI;
  END RAD2DEGR;

  FUNCTION DISTANCE(LAT1  NUMBER
                   ,LONG1 NUMBER
                   ,LAT2  NUMBER
                   ,LONG2 NUMBER) RETURN NUMBER DETERMINISTIC IS
    --
    THETA NUMBER := LONG1 - LONG2;
    DIST  NUMBER;
    LAT1_RAD NUMBER;
    LAT2_RAD NUMBER;
    --
  BEGIN
    --
    LAT1_RAD := DEGR2RAD(LAT1);
    LAT2_RAD := DEGR2RAD(LAT2);
    DIST := SIN(LAT1_RAD) * SIN(LAT2_RAD) +
            COS(LAT1_RAD) * COS(LAT2_RAD) * COS(DEGR2RAD(THETA));

    -- This analysis was performed due to a situation where the Operating above
    -- between points this returning a value that would be improper for the function
    -- ACOS where your range should be among the possible values from -1 up to 1
    DIST := ACOS(GREATEST(LEAST(DIST,1),-1));
    DIST := RAD2DEGR(DIST);
    DIST := DIST * MINUTES_PER_DEGREES * MILES_PER_MINUTES * KILOMETERS_PER_MILES;
    --
    RETURN DIST;
  --
  END DISTANCE;
  --
END GEOGRAPHICAL_PACKAGE;

Regular Expression – Regex – For Date Validation (Bissextile Included)

Hi all,

I found a good regex for date validation that consider bissextile. I tested and it works.

I have problems with the bellow expressions in the eclipse, because it don't support the expression (?:) Non-Capturing groups.
^(?:(?:(?:0[1-9]|1\d|2[0-8])/(?:0[1-9]|1[0-2])|(?:29|30)/(?:0[13-9]|1[0-2])|31/(?:0[13578]|1[02]))/\d{4}|29/02/(?:\d\d(?:0[48]|[2468][048]|[13579][26])|(?:[02468][048]|[13579][26])00))$

I discover another expression that works in the Eclipse:

^(((((0[1-9])|(1\d)|(2[0-8]))\/((0[1-9])|(1[0-2])))|((31\/((0[13578])|(1[02])))|((29|30)\/((0[1,3-9])|(1[0-2])))))\/(\d{4}))|((29\/02\/(\d{2})(([02468][048])|([13579][26]))))$

Both expressions are in the format: dd/mm/yyyy

Credits: http://www.perlmonks.org/?node_id=153702

Crianças pedem Solicitação à Prefeitura de São Paulo – Reforma da Quadra de Esportes – Praça Sylvio Altapini – Jardim Castelo – Zona Leste de São Paulo

Eu, Victor Hugo Jabur Passavaz, solicito, em nome dos moradores do bairro Jardim Castelo à Prefeitura de São Paulo, uma reforma na quadra de esportes localizada na Praça Sylvio Altapini.

Utilizarei esta postagem para a comunicação entre moradores e responsáveis da prefeitura, mídias televisivas e demais órgãos interessados.

Seguem as principais solicitações feitas pelos moradores:

  • Troca do material do piso (hoje feito em asfalto), para um material mais apropriado às crianças, evitando assim os constantes acidentes que hoje acontecem.
  • Colocação de grades de proteção ao redor da quadra, impedindo as crianças de correrem à rua para buscar a bola, correndo risco de serem atropeladas.
  • Colocação de iluminação apropriada (hoje não possui nenhuma)
  • Troca dos gols enferrujados por gols novos, com a devida rede.
  • Podagem e retirada de entulhos ao redor da quadra.

Endereço da Quadra de Esportes:
Praça Sylvio Altapini, Jardim Castelo, Zona Leste de São Paulo

Ponto de Referência:
R. Basílio Basily, 300
Zona Leste, Bairro Jardim Castelo
São Paulo, 03728-200

.
.
Vodpod videos no longer available.
.

Endereço no Google Maps:

.
.

Segue a solicitação à Prefeitura de São Paulo, efetuada em: 08/01/2011 às 20:15. Irei postando aqui toda a comunicação com a prefeitura para reportar à comunidade tudo o que está acontecendo neste processo.

Prefeitura do Município de São Paulo
Secretaria Municipal de Comunicação e Informação Social
Sistema de Atendimento ao Cidadão
Ficha de Solicitação
SOLICITAÇÃO COM PRIORIDADE Solicitação com Prioridade
Nº do SAC: 10465564 Data de Cadastro no SAC: 08/01/2012 20:09
Canal de Entrada: SAC Internet

LOCAL DA SOLICITAÇÃO


Endereço:   R  BASILIO BASILY, 300
Ref.:   Praça Sylvio Altapini
Bairro:   JARDIM CASTELO
CEP:   03728200
Pag. Guia:   075-30-P
Setor e Quadra:   130367

DADOS DA SOLICITAÇÃO


Subprefeitura:   PE
Assunto:   Desportos
Especificação:   Instalacao/

manutencao de campo de futebol
Orgão Responsável:   Subprefeitura Penha – NAPProvidências:
.

Abaixo Assinado – Participe e nos ajude nesta Causa – COLABOREClique na imagem abaixo para visualizar o Abaixo Assinado

Abaixo Assinado Eletrônico hospedado no site Petição Pública

———————————————————————————————————————-
Atualização 25/01/2012

Vereador Carlos Neder

O acessor do vereador Carlos Neder, realizou uma visita à quadra para conhecer o lugar e prometeu que ia fazer o máximo possível para ajudar nesta causa.

———————————————————————————————————————-
Atualização 07/02/2012

Vereador Toninho Paiva

Segue e-mail do vereador Toninho Paiva:

Prezado Victor, a respeito da manutenção da quadra de esportes da Praça Sylvio Altapini, o orçamento para reforma já está no orçamento da Sub Prefeitura da Penha, porém ainda aguarda licitação.
Tão logo chegue os alambrados, será feita a reforma na quadra.
Para mais esclarecimentos, permaneço a disposição na Câmara Municipal de São Paulo.
Atenciosamente
Toninho Paiva
  Vereador
2º Secretário

———————————————————————————————————————-

Atualização: 29/02/2012

Vereador Netinho de Paula

Victor, boa tarde.

Segue anexo cópia do oficio que encaminhamos a subprefeitura da Penha.
Assim que obtivermos resposta sobre a questão da quadra repassaremos a você.
Sem mais para o momento,

Marco Antonio da Silva
Assessor Parlamentar

Clique Aqui e veja o Ofício gerado pelo Vereador Netinho de Paula

———————————————————————————————————————-
Atualização: 01/02/2012

Vereador Goulart

Caro Victor, conforme contato, encaminhamos copia do Oficio 023/2012-AG, enviado a Subprefeitura da Penha para reurbanização e reforma da praça.
Assim que tivermos outras informações, entraremos em contato.

Atenciosamente,

Adriana Pedrozo
Assessora Parlamentar
Gabinete do Vereador Antonio Goulart
Tel.: 11 3396 4866 : : Fax.: 11 3396 3969
http://www.vereadorgoulart.com.br
Siga o Vereador Goulart no Twitter!
http://www.twitter.com/vereadorgoulart

Clique Aqui e veja o Ofício gerado pelo Vereador Goulart

———————————————————————————————————————-
Atualização: 05/03/2012

Vereador Cláudio da Fonseca

Olá Victor Jabur,

 Nesta data encaminhamos o Ofício nº 600/12 para a Secretaria Municipal de Esportes com a solicitação de manutenção da quadra de esportes.

Atentos ao andamento desta solicitação, este Gabinete se compromete a repassar-lhe todas as informações até trâmite final do processo via correio e / ou email.

Atenciosamente,

Roberta Rosa

Assessora Parlamentar – CMSP

Gabinete Ver. Claudio Fonseca

Viaduto Jacarei, 100 – 4º andar  sl 420

Centro – SP – CEP: 01319 – 010

Tel: 3396 46 48 / 3396 4649

Clique Aqui e veja o Ofício gerado pelo Vereador Claudio Fonseca Pagina 1

Clique Aqui e veja o Ofício gerado pelo Vereador Claudio Fonseca Pagina 2

———————————————————————————————————————-

Atualização 06/03/2012

Vereador Donato

Olá Victor,

Encaminhamos anexo, para seu conhecimento, cópia do Ofício do Vereador Donato enviado a Subprefeitura da Penha.

Assim que obtivermos retorno o informaremos.

Um abraço,

Angelita

Secretária do Vereador Donato

Gabinete do Vereador Donato

Câmara Municipal de São Paulo

Viaduto Jacareí, 100 – 11º andar – sala 1109

Telefone:             (11) 3396-4840       / 3396-4681

E-mail: donatopt.terra.com.br

Site: donatopt.com.br

Clique Aqui e veja o Ofício gerado pelo Vereador Donato

 ———————————————————————————————————————-
Atualização: 21/07/2012

Matéria publicada no Jornal do Momento – Clique na Imagem para ler

 ———————————————————————————————————————-
Atualização: 21/07/2012

Matéria publicada no Jornal Pólo Paulistano – Clique na Imagem para ler

 ———————————————————————————————————————-
Atualização: 21/07/2012

Quadra de Esportes recebe R$ 80.000 reais da Prefeitura para a Execução da Obra

http://www.prefeitura.sp.gov.br/cidade/secretarias/upload/relacoes_governamentais/arquivos/dados/2012_emendas.pdf