Come ti ho detto prima, se richiami quella funzione da un form è ovvio che i parametri partono, ma per utilizzarli dentro quella determinata funzione devi recuperarli, cosa che non mi sembra sia stata fatta, dall'array $_POST. Per lui hMap messa li in quel modo non esiste come variabile valida allo scopo della funzione, è una variabile vuota messa li così...non si sà per cosa.
Poi, se tu usi gli apici singoli (' ') o doppi (" ") vuol dire che stai usando una stringa o un testo e nella valorizzazione di una variabile, se li usi, non fai altro che dire che la tua variabile è uguale al testo specificato in mezzo agli apici. Stessa cosa per il "new mapHeight", se quello deve istanziare una funzione non credo possa farlo visto che è solo un semplice testo buttato li, amenochè non debba essere inviato ad un altra funzione (magari js o jQuery?). Come ha detto Virus, studiare OOP e in questo caso anche il significato della sintassi che è stata usata non sarebbe un brutto inizio.

Per curiosità, mi sembra di capire che stai cercando di implementare o usare una cartina geografica con latitudini e longitudini...non sono API di google maps vero?