Révision 0bd646e4
Ajouté par Victor PONGNIAN il y a plus de 10 ans
js/pano.js | ||
---|---|---|
171 | 171 |
|
172 | 172 |
} |
173 | 173 |
|
174 |
function insert_drawn_point(lat,lon,alt) { |
|
175 |
|
|
176 |
var rt = 6371; // Rayon de la terre |
|
174 |
function insert_drawn_point(lat, lon, alt) { |
|
175 |
var rt = 6371; // Rayon de la terre |
|
177 | 176 |
var alt1 = document.getElementById('pos_alt').childNodes[0].nodeValue; |
178 | 177 |
var lat1 = document.getElementById('pos_lat').childNodes[0].nodeValue*Math.PI/180; |
179 | 178 |
var lon1 = document.getElementById('pos_lon').childNodes[0].nodeValue*Math.PI/180; |
... | ... | |
196 | 195 |
return {d:d, cap:cap*180/Math.PI, ele:e*180/Math.PI}; // les résultats sont en degrés |
197 | 196 |
} |
198 | 197 |
|
199 |
localate_point = function () { |
|
200 |
|
|
198 |
function localate_point() { |
|
201 | 199 |
var lat = document.getElementById("loca_latitude").value; |
202 | 200 |
var lon = document.getElementById("loca_longitude").value; |
203 | 201 |
var alt = document.getElementById("loca_altitude").value; |
... | ... | |
209 | 207 |
alert("La longitude "+lon+"n'est pas correcte"); |
210 | 208 |
return; |
211 | 209 |
} |
212 |
if (lat == '' || isNaN(alt) || alt < -400) { |
|
210 |
if (lat == '' || isNaN(alt) || alt < -400 || alt > 10000000) {
|
|
213 | 211 |
alert("l'altitude "+alt+"n'est pas correcte"); |
214 | 212 |
return; |
215 | 213 |
} |
216 |
var opt_ced = new Array(); |
|
217 |
opt_dce = insert_drawn_point(lat,lon,alt); |
|
218 |
// -----Première solution : afficher dynamiquement le point ! |
|
219 |
var d = opt_dce.d; |
|
220 |
var cap = opt_dce.cap; |
|
221 |
var ele = opt_dce.ele; |
|
222 |
|
|
223 |
display_temp(d, cap, ele); |
|
224 |
|
|
214 |
var opt_ced = new Array(); |
|
215 |
opt_dce = insert_drawn_point(lat, lon, alt); |
|
216 |
display_temp(opt_dce.d, opt_dce.cap, opt_dce.ele); |
|
225 | 217 |
} |
226 | 218 |
|
227 |
function display_temp(d,cap,ele) { |
|
228 |
|
|
219 |
function display_temp(d,cap,ele) { |
|
229 | 220 |
point_list[point_list.length] = new Array("point temporaire", d,cap,ele, "temporary"); |
230 | 221 |
reset_zooms(); |
231 | 222 |
putImage(last.x, last.y); |
... | ... | |
235 | 226 |
array.splice(array.indexOf(value), 1); |
236 | 227 |
} |
237 | 228 |
|
238 |
erase_point = function() { |
|
239 |
|
|
229 |
function erase_point() { |
|
240 | 230 |
for (var i=0; i<point_list.length; i++) { |
241 | 231 |
if(point_list[i][0] == "point temporaire"){ |
242 | 232 |
arrayUnset(point_list,point_list[i]); |
... | ... | |
784 | 774 |
speed.y = 0; |
785 | 775 |
} |
786 | 776 |
|
787 |
|
|
788 |
|
|
789 | 777 |
canvas_set_size = function() { |
790 | 778 |
canvas.style.border = border_width+"px solid red"; |
791 | 779 |
canvas.width = window.innerWidth-2*border_width; |
... | ... | |
799 | 787 |
putImage(last.x, last.y); |
800 | 788 |
} |
801 | 789 |
|
802 |
|
|
803 |
|
|
804 | 790 |
function paramIn(e) { |
805 |
|
|
806 |
e = e || window.event; |
|
807 |
var relatedTarget = e.relatedTarget || e.fromElement; |
|
808 |
|
|
809 |
while (relatedTarget != adding && relatedTarget.nodeName != 'BODY' && relatedTarget != document && relatedTarget != localisation) { |
|
810 |
relatedTarget = relatedTarget.parentNode; |
|
811 |
} |
|
812 |
|
|
813 |
if (relatedTarget != adding && relatedTarget != localisation) { |
|
814 |
document.removeEventListener('keydown', keys, false); |
|
815 |
} |
|
791 |
e = e || window.event; |
|
792 |
var relatedTarget = e.relatedTarget || e.fromElement; |
|
793 |
|
|
794 |
while (relatedTarget != adding && relatedTarget.nodeName != 'BODY' && relatedTarget != document && relatedTarget != localisation) { |
|
795 |
relatedTarget = relatedTarget.parentNode; |
|
796 |
} |
|
797 |
|
|
798 |
if (relatedTarget != adding && relatedTarget != localisation) { |
|
799 |
document.removeEventListener('keydown', keys, false); |
|
800 |
} |
|
816 | 801 |
} |
817 | 802 |
|
818 | 803 |
function paramOut(e) { |
... | ... | |
830 | 815 |
|
831 | 816 |
} |
832 | 817 |
|
833 |
window.onload = function() { |
|
834 |
|
|
835 |
localisation = document.getElementById("locadraw"); |
|
836 |
adding = document.getElementById("adding"); |
|
818 |
window.onload = function() { |
|
819 |
localisation = document.getElementById("locadraw"); |
|
820 |
adding = document.getElementById("adding"); |
|
837 | 821 |
canvas = document.getElementById("mon-canvas"); |
838 | 822 |
cntext = canvas.getContext("2d"); |
839 | 823 |
canvas_set_size(); |
... | ... | |
866 | 850 |
elvtn_control.onclick = change_angle; |
867 | 851 |
|
868 | 852 |
change_angle(); |
869 |
loca_temp = document.getElementById("loca_button"); |
|
870 |
loca_temp.onclick = localate_point; |
|
871 |
loca_erase = document.getElementById("loca_erase"); |
|
872 |
loca_erase.onclick = erase_point; |
|
853 |
loca_temp = document.getElementById("loca_show"); |
|
854 |
if (loca_temp) { |
|
855 |
loca_temp.onclick = showLoca; |
|
856 |
loca_temp = document.getElementById("loca_hide"); |
|
857 |
loca_temp.onclick = hideLoca; |
|
858 |
loca_temp = document.getElementById("loca_button"); |
|
859 |
loca_temp.onclick = localate_point; |
|
860 |
loca_erase = document.getElementById("loca_erase"); |
|
861 |
loca_erase.onclick = erase_point; |
|
862 |
localisation.addEventListener('mouseover',paramIn,false); |
|
863 |
localisation.addEventListener('mouseout',paramOut,false); |
|
864 |
} |
|
873 | 865 |
canvas.addEventListener('mousedown', onImageClick, false); |
874 | 866 |
document.addEventListener('keydown', keys, false); |
875 | 867 |
canvas.addEventListener('mousewheel', wheel_zoom, false); |
876 | 868 |
window.onresize = canvas_resize; |
877 |
adding.addEventListener('mouseover',paramIn,false); |
|
878 |
adding.addEventListener('mouseout',paramOut,false); |
|
879 |
localisation.addEventListener('mouseover',paramIn,false); |
|
880 |
localisation.addEventListener('mouseout',paramOut,false); |
|
881 |
|
|
869 |
if (adding) { |
|
870 |
document.getElementById("paramFormHide").onclick = hideForm; |
|
871 |
document.getElementById("paramFormShow").onclick = showForm; |
|
872 |
adding.addEventListener('mouseover', paramIn, false); |
|
873 |
adding.addEventListener('mouseout', paramOut, false); |
|
874 |
} |
|
882 | 875 |
}; |
Formats disponibles : Unified diff
remise en forme du travail de Victor Pongnian suit à son stage
Il reste pas mal de cosmétique à revoir mais le système devrait déjà être utilisable dans l'état.