J'ai téléchargé le SDK de Wikitude 3.1, installé les samples dans mon espace de travail Eclipse et sur mon Gnexus tout fonctionne. Je divise les questions en points afin de pouvoir répondre plus facilement:wikitude 3.01: ajouter quelques fonctionnalités entre les exemples ne fonctionnait pas correctement
J'ai ajouté la méthode "onMarkerSelectedFn" dans le fichier "limitingVisiblePois.js" parce que je voulais que mes POIs puissent être cliquables et quand on clique, la page d'information apparaît comme la 5.1 exemple. J'ai ajouté la méthode mais cela ne fonctionne pas et je n'ai pas compris où je fais des erreurs. Chaque autre fichier est le même pour les exemples 5.x.
Code de "limitingVisiblePois.js" édité par moi
var World = {
markerDrawable_idle: new AR.ImageResource("assets/marker_idle.png"),
markerDrawable_selected: new AR.ImageResource("assets/marker_selected.png"),
markerDrawable_directionIndicator: new AR.ImageResource("assets/indi.png"),
markerList: [],
// called to inject new POI data
loadPoisFromJsonData: function loadPoisFromJsonDataFn(poiData) {
PoiRadar.show();
document.getElementById("statusElement").innerHTML = 'Loading JSON objects';
var poiImage = new AR.ImageResource("img/marker.png", {
onError: World.errorLoadingImage
});
// TODO: call single POI-creation statement instead
for (var i = 0; i < poiData.length; i++) {
var singlePoi = {
//EDIT BRUS: adding the ID of each POIs
"id": poiData[i].id,
"latitude": parseFloat(poiData[i].latitude),
"longitude": parseFloat(poiData[i].longitude),
"altitude": parseFloat(poiData[i].altitude),
"title": poiData[i].name,
"description": poiData[i].description
};
World.markerList.push(new Marker(singlePoi));
}
document.getElementById("statusElement").innerHTML = 'JSON objects loaded properly';
},
// user's latest known location, accessible via userLocation.latitude, userLocation.longitude, userLocation.altitude
userLocation: null,
// location updates
locationChanged: function locationChangedFn(lat, lon, alt, acc) {
World.userLocation = {
'latitude': lat,
'longitude': lon,
'altitude': alt,
'accuracy': acc
};
},
//EDIT BRUS: Adding onMarkerSelected function
onMarkerSelected: function onMarkerSelectedFn(marker) {
// notify native environment
document.location = "architectsdk://markerselected?id=" + marker.poiData.id;
},
// called from slider.js every time the slider value changes
onSliderChanged: function onSliderChangedFn(value) {
if (value > 0) {
var valueMeters = value * 1000;
PoiRadar.setMaxDistance(valueMeters);
AR.context.scene.cullingDistance = valueMeters;
}
}
};
// forward locationChanges to custom function
AR.context.onLocationChanged = World.locationChanged;
2) Je ne pouvais pas comprendre où coordonne les latlong POIs où declareated. Dans le même code affiché avant, il y a la fonction
loadPoisFromJsonData: fonction loadPoisFromJsonDataFn (poiData)
mais je ne comprends pas comment le poiData sont prises.
J'ai utilisé le dernier 3.1 SDK dans Android et phonegap.
merci à l'avance,
Sincères salutations
Brus
Bonjour Andreas, merci pour votre réponse. J'ai ce que tu m'expliques et je vais essayer de régler mon problème. Les mêmes informations sont disponibles dans la documentation de votre site internet. Cordialement – Bebbolin