#Proceso de Proyección de datos espaciales al ctm12

# En referencia a la Resolución 471 de 2020 
# ver la url https://igac.gov.co/sites/igac.gov.co/files/normograma/resolucion_471_de_2020.pdf
# Fecha de consulta 28 de junio del 2020.
# En el documento se considera el punto de origen 
#  Latitud  en coordendas geograficas  (𝜑) 4° 
# Longitud en coordendades geograficas  (𝜆) 73°


#Convertimos las coordendades en grados decimales
lat <- (4+00/60+00/3600)
lat 
## [1] 4
lon <- (-73+00/60+00/3600)
lon 
## [1] -73
# unidades en metros
# Los parametros de falso este y falso norte
# Falso este = 5000000
# Falso norte =2000000
# Factor de escala del meridiano central 0.9992

#Para poder realizar el profeco de transformacion  utilizaremos las liguentes librerias.
#Instalamos

library(pacman)

require(pacman)

pacman::p_load(raster, rgdal, rgeos, tidyverse, gtools)
rm(list = ls())

# Insertamos dato de tipo shape

### Shapefiles
setwd("E:/Shape Colombia/Santander/WGS84_68_SANTANDER/ADMINISTRATIVO/MUNICIPIO")
list.files(path=".")
##  [1] "MPIO_DPTO_POLITICO.CPG"     "MPIO_DPTO_POLITICO.dbf"    
##  [3] "MPIO_DPTO_POLITICO.prj"     "MPIO_DPTO_POLITICO.sbn"    
##  [5] "MPIO_DPTO_POLITICO.sbx"     "MPIO_DPTO_POLITICO.shp"    
##  [7] "MPIO_DPTO_POLITICO.shp.xml" "MPIO_DPTO_POLITICO.shx"    
##  [9] "Municipios.cpg"             "Municipios.dbf"            
## [11] "Municipios.mshp"            "Municipios.prj"            
## [13] "Municipios.shp"             "Municipios.shx"
munic<- readOGR('Municipios.shp', layer='Municipios')
## OGR data source with driver: ESRI Shapefile 
## Source: "E:\Shape Colombia\Santander\WGS84_68_SANTANDER\ADMINISTRATIVO\MUNICIPIO\Municipios.shp", layer: "Municipios"
## with 87 features
## It has 11 fields
## Integer64 fields read as strings:  MPIO_NANO_ MPIO_NANO
crs(munic)
## CRS arguments: +proj=longlat +ellps=WGS84 +no_defs
plot(munic,axes = TRUE, main = 'Municipios del departamento de  Santander')

# Observamos que los datos se encuentran en  coordendas geograficas.

#Intentamos  proyectar proyectar en el sistema SR-ORG:9028 (Bogota origen central)

# https://spatialreference.org/ref/sr-org/9028/

# +proj=tmerc +lat_0=4.596200416666666 +lon_0=-74.07750791666666 +k=1 +x_0=1000000 +y_0=1000000 +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs 

magna <- '+proj=tmerc +lat_0=4.596200416666666 +lon_0=-74.07750791666666 +k=1 +x_0=1000000 +y_0=1000000 +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs'
magnaB <- spTransform(x = munic, CRSobj = magna)

plot(magnaB, main = 'MAGNA- Bogotá Origen Central',axes = TRUE)

# Para hacer el proceso de tranformacion a CTM12, utilizamos los datos  de CTM12 

# proj=tmerc, se mantiene, 
# lat_0= 4.0
# lon_0= -73.0
# k=0.9992
# x_0=5000000
# y_0=2000000
#ellps=GRS80, se mantiene
#towgs84=0,0,0,0,0,0,0 seconserva,
#units=m +no_defs, se conserva

ctm <- '+proj=tmerc +lat_0=4.0 +lon_0=-73.0 +k=0.9992 +x_0=5000000 +y_0=2000000 +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs'
ctm12 <- spTransform(x = munic, CRSobj = ctm)


crs(ctm12)
## CRS arguments:
##  +proj=tmerc +lat_0=4.0 +lon_0=-73.0 +k=0.9992 +x_0=5000000 +y_0=2000000
## +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs
plot(ctm12, main = 'CTM12-Municipios del departamento de Santander',axes = TRUE)

# shapefile(ctm12,'./Nueva carpeta (2)/muni_ctm12.shp')

#Referencia Bibliográfica
#Resolución 471 de 2020,Por medio de la cual se establecen las especificaciones técnicas mínimas que deben tener los productos de la cartografía básica oficial de Colombia, disponuble en: https://igac.gov.co/sites/igac.gov.co/files/normograma/resolucion_471_de_2020.pdf