domingo, 27 de agosto de 2017

Python OOP 01

Classe é a estrutura genérica de um objeto.
Atributos são as características do objeto.
Os métodos são as ações que o objeto faz.
Associação é, como o nome já diz, uma associação entre duas classes, uma interação entre eles. Classe humano utilizando da Classe carro.
Polimorfismo é quando uma ação se comporta diferente para cada classe. Classe carro e Classe aviao, ambas se deslocam mas por maneiras diferentes.
Encapsulamento é a forma de exposição dos atributos para quem irá acessá-lo.


sábado, 26 de agosto de 2017

pyinstaller

Cria executável do seu programa python com suas dependências.
pip install pyinstaller
pyinstaller programa.py

  File "/usr/local/lib/python2.7/dist-packages/PyInstaller/building/utils.py", line 466, in format_binaries_and_datas
    src_root_path_or_glob))
PyInstaller.compat.FileNotFoundError: Path or glob "/usr/include/python2.7/pyconfig.h" not found or matches no files.

apt-get install build-essential python-dev










quinta-feira, 24 de agosto de 2017

osgeo4w

Cada programa que usa gdal acaba instalando uma instância do programa pra si. O osgeo4w tenta criar uma unica instancia para todos os programas que utilizam da biblioteca.

http://www.gisinternals.com/release.php

Escolhi: release-1500-gdal-2-2-1-mapserver-7-0-6

Instalado python 2.7.13 - já vem com pip
instalado vcpython27 2014 - Visual C++ for Python 2.7
Instalado numpy via pip install numpy
Instalado gdal-202-1500-core.msi - python 2.7.13 no caso, tem compilação 1500
Instalado GDAL-2.2.1.win32-py27.msi

Adicionado paths:
Novo: 
Nome da variável: GDAL_DATA
Valor da variável: C:\Program Files (x86)\GDAL\gdal-data

Novo:
Nome da variável: GDAL_DRIVER_PATH
Valor da variável: C:\Program Files (x86)\GDAL\gdalplugins

Edit:
Nome da variável: Path
Valor da variavel: adicionar -->    C:\Program Files (x86)\GDAL\
Se colocar no final da linha, tem que ter um ; no inicio: ;C:\Program Files (x86)\GDAL\

Reiniciar a máquina

Testando, ir no prompt de comando e rodar gdalinfo
Aqui deu erro:

ERROR 1: Can't load requested DLL: c:\Program Files\GDAL\gdalplugins\ogr_MSSQLSpatial.dll

Solução: Pode apagar o arquivo ogr_MSSQLSpatial.dll
Mas eu criei uma pasta e coloquei a dll lá dentro, só por precaução, caso precise da dll mais pra frente. Outra opção é instalar o SQL Server Native Client




I find OSGEO4W a poor solution because it creates a whole parallel universe, almost like a virtual machine. I was able to install GDAL and use it in python following the steps outlined here (this is the link provided by @sys49152).
It sends you to gisinternals.com. Take the link to "stable releases" to get to:http://www.gisinternals.com/release.php
Now you have to choose between 32 and 64 bits and different Microsoft Visual C++ compiler versions. Note that this has to match your python version, not your OS. In my case I have a 64 bit windows, but a 32 bit python 2.7 (that shipped with ArcGIS).
To see what you have you can run python on the command line and a message like this:
C:\>python
Python 2.7.2 (default, Jun 12 2011, 15:08:59) [MSC v.1500 32 bit (Intel)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>>
So I need to use "release-1500"
I selected: MSVC 2013/win32 release-1500-gdal-1-11-3-mapserver-6-4-2
(the build version numbers will change over time)
I first downloaded and installed the "Generic installer for the GDAL core components": gdal-111-1500-core.msi
And added the path and other variables as described here.
Add to path: C:\Program Files (x86)\GDAL Create environmental variables: GDAL_DATA = C:\Program Files (x86)\GDAL\gdal-data GDAL_DRIVER_PATH = C:\Program Files (x86)\GDAL\gdalplugins
Then, I downloaded and installed the python module for python 2.7 GDAL-1.11.3.win32-py2.7.msi
And after that, in python I was able to do
from osgeo import gdal
ds = gdal.Open('file.tif')
etc.

sábado, 5 de agosto de 2017

EPSG Sad69 UTM 22S MC -51


UTM SAD69 22S --> EPSG:29192
WGS84                 --> EPSG:4326
SIRGAS 2000 / UTM zone 23S     ->  EPSG:31983
SIRGAS 2000 -> EPSG:4674

from osgeo import osr

src = osr.SpatialReference()
tgt = osr.SpatialReference()
src.ImportFromEPSG(31983)
tgt.ImportFromEPSG(4674)

transform = osr.CoordinateTransformation(src, tgt)
coords = transform.TransformPoint(580210.101, 7787362.590)
x,y = coords[0:2]

LG X Power

Problemas encontrado

Usando o programa beat! o wifi desconecta em standby e só volta a ligar quando liga-se a tela, e mesmo com a opção de deixar o wifi sempre ligado, ele acaba desligando.

Outro problema é que algumas vezes é necessário clicar duas vezes na tela pra ter resposta. No primeiro toque não pega.

Um outro problema é que vezes ou outra é necessário desmontar o cartão de memória pelo menu, e remontar para voltar a funcionar.

Queda frequente do wifi, desconecta, mas conecta em seguida.

Update: Quanto ao problema do wifi desconectando toda hora, vi em fóruns que o problema pode ser o ipv6, uso o mitrastar dsl-2401hn-t1c-nv que foi instalado pela vivo. O problema é que eles tiraram a opção para desligar o ipv6. Preciso testar com roteador pra ver.