Ir para o conteúdo

osmc:Metodologia/Algoritmo SQL/Lib: mudanças entre as edições

m
Linha 150: Linha 150:
#* <code>x0=x0_from_ij0[ij0]; y0=y0_from_ij0[ij0];</code> ou função de ij0 retorando xy0.
#* <code>x0=x0_from_ij0[ij0]; y0=y0_from_ij0[ij0];</code> ou função de ij0 retorando xy0.
#* <code>cbits0 = grid_br.IJ0_to_vbitL0( ij0, false )</code>
#* <code>cbits0 = grid_br.IJ0_to_vbitL0( ij0, false )</code>
#* Cor
# Código ''cbits'' e geometria da célula do nível ''L'':
# Código ''cbits'' e geometria da célula do nível ''L'':
#* <code>ijL=grid_br.xyL_collapseTo_ijL(x-xy0[1], y-xy0[2], L);</code>
#* <code>ijL=grid_br.xyL_collapseTo_ijL(x-xy0[1], y-xy0[2], L);</code>
#* <code>cbits = cbits0 || ints_to_interleavedbits(ijL)</code>
#* <code>cbits = cbits0 || ints_to_interleavedbits(ijL)</code>
#* <code>uvL=grid_br.ijL_to_xyL(ijL);
#* <code>grid_br.xyS_draw_anycell( grid_br.ijL_to_xyL(ijL) )</code>


Com um passo a mais para contemplar os casos de pontos sobre cobertura fantasma. Existe uma condição de validade e um ajuste do ponto ao nível:
Com um passo a mais para contemplar os casos de pontos sobre cobertura fantasma. Existe uma condição de validade e um ajuste do ponto ao nível:
Linha 162: Linha 161:
drop FUNCTION if exists grid_br.xyS_to_cbits(int,int,int,boolean)
drop FUNCTION if exists grid_br.xyS_to_cbits(int,int,int,boolean)
;
;
-- cuidado é YX! ver subtração
-- revisar se é YX!
CREATE FUNCTION grid_br.xyS_to_cbits(
CREATE FUNCTION grid_br.xyS_to_cbits(
   y int,
   y int,
Linha 171: Linha 170:
-- falta conferir se lenght(cbits0)>4 AND s<3
-- falta conferir se lenght(cbits0)>4 AND s<3
  SELECT CASE WHEN use_country_prefix THEN b'0001001100' ELSE b'' END  
  SELECT CASE WHEN use_country_prefix THEN b'0001001100' ELSE b'' END  
         || cbits0 || ints_to_interleavedbits(x-xy0[1], y-xy0[2], 20-s)
         || cbits0 || ints_to_interleavedbits( grid_br.xyS_collapseTo_ijL(x-xy0[1], y-xy0[2], S) )
  FROM (
  FROM (
   SELECT grid_br.ijS_to_xySref(ij0) as xy0, grid_br.IJ0_to_L0(ij0,false) as cbits0
   SELECT grid_br.ijS_to_xySref(ij0) as xy0, grid_br.IJ0_to_L0(ij0,false) as cbits0
2 391

edições