최종완성된 함수 형태이다.
특별히 어려운것은 없지만, 아무래도 아래문장만 조심해서 만들면 된다.
그냥 C/C++같으면 %f로 만들면 되지만 아두이노는 지원 하지 않는다.
그래서 String을 사용해야 한다.
p+=sprintf(p,\" center: new google.maps.LatLng(%s, %s),\n"", String(y,1).c_str(), String(x,1).c_str()); |
x,y에 본인이 넣고 싶은 GPS좌표만 넣으면 된다.
아두이노에서 GPS를 연결해도 좋지만 일단 연습이나 아무거나 넣자.
36.4251083, 127.389638은 본인이 자주가는 커피전문점 좌표이다.
구글에 검색하면 주소를 좌표로 바꾸어 주는 서비스도 있다.
void webPage3(EthernetClient& c, double y, double x) { char* p = msg; p+=sprintf(p,"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd\"> \n"); p+=sprintf(p," http://www.w3.org/1999/xhtml\">\n"</html xmlns=\"); p+=sprintf(p,"<head>\n"); p+=sprintf(p,"<meta http-equiv=\"Content-Type\" content=\"application/xhtml+xml; charset=utf-8\" />\n"); p+=sprintf(p,"<meta name=\"viewport\" content=\"user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0, width=device-width\" />\n"); p+=sprintf(p," http://code.google.com/apis/maps/documentation/javascript/examples/standard.css\" rel=\"stylesheet\" type=\"text/css\" />\n"</link href=\"); p+=sprintf(p," );
p+=sprintf(p,"<script type=\"text/javascript\">\n"); p+=sprintf(p,"function initalize() {\n"); p+=sprintf(p,"var mapOptions = {\n"); p+=sprintf(p,"zoom: 15,\n"); p+=sprintf(p,"center: new google.maps.LatLng(%s, %s),\n", String(y,1).c_str(), String(x,1).c_str()); p+=sprintf(p,"disableDefaultUI: true,\n"); p+=sprintf(p,"mapTypeId: google.maps.MapTypeId.ROADMAP,\n"); p+=sprintf(p,"draggable: false \n"); p+=sprintf(p,"} \n"); p+=sprintf(p,"var map = new google.maps.Map(document.getElementById(\"map_canvas\"), mapOptions); \n"); p+=sprintf(p,"var marker = new google.maps.Marker({map: map, position: map.getCenter()}); \n"); p+=sprintf(p,"}\n"); p+=sprintf(p,"</script> \n"); p+=sprintf(p,"<title> Google Map JavaScript API </title>\n"); p+=sprintf(p,"</head> \n"); p+=sprintf(p,"<body onload=\"initalize()\">\n"); p+=sprintf(p," <div id=\"map_canvas\" style=\"width: 640px; height: 480px; margin: 0 auto; top:50px; border: 1px solid black;\"> </div>\n"); p+=sprintf(p,"</body>\n"); p+=sprintf(p,"</html>\n");
Serial.println(strlen(msg)); c.println(msg); return ; } |
'아두이노' 카테고리의 다른 글
아두이노 이더넷 웹서버 만들기 -#18 (0) | 2020.05.20 |
---|---|
아두이노 이더넷 웹서버 만들기 -#17 (0) | 2020.05.20 |
아두이노 이더넷 웹서버 만들기 -#15 (0) | 2020.05.19 |
아두이노 이더넷 웹서버 만들기 -#14 (0) | 2020.05.19 |
아두이노 공부하다가 포기 하는 사람을 위한 글.... (0) | 2020.05.12 |
댓글