Google Maps API pour Flash CS3

1 June 2008

Bien qu’il existe une API d’utilisation de Google Maps en AS3 celle-ci ne reste utilisable qu’à partir du flex SDK.

Cependant il existe un petit hack pour l’utiliser depuis l’environnement Flash grâce à une bien belle nouveauté de l’AS3 : le getDefinition.

Il faut tout d’abord télécharger le composants SWC fournit par Google.

Ce fichier SWC est en fait une archive contenant un SWF compilé avec toutes les classes d’utilisations de Google Maps. En l’ouvrant avec winrar par exemple vous pourrez extraire le fichier “library.swf” et le garder bien avec vous.

L’étape suivante consistera à charger “library.swf” et à récupérer les classes pour pouvoir utiliser notre google map.


function GoogleMaps ( ) {
var libraryLoader : Loader = new Loader();
libraryLoader.contentLoaderInfo.addEventListener(Event.COMPLETE, configureLibrary);
libraryLoader.load(new URLRequest("gmaplibrary.swf"));
}

public function configureLibrary ( e : Event ) : void
{
e.target.addEventListener(Event.COMPLETE, configureLibrary);

Security.allowDomain("*"); // permet a google d'acceder a notre swf.

var appDomain : ApplicationDomain = e.target.applicationDomain;

Map = appDomain.getDefinition("com.google.maps.Map") as Class;
MapEvent = appDomain.getDefinition("com.google.maps.MapEvent") as Class;
MapType = appDomain.getDefinition("com.google.maps.MapType") as Class;
LatLng = appDomain.getDefinition("com.google.maps.LatLng") as Class;
MapMouseEvent = appDomain.getDefinition("com.google.maps.MapMouseEvent") as Class;
ZoomControl = appDomain.getDefinition("com.google.maps.controls.ZoomControl") as Class;
PositionControl = appDomain.getDefinition("com.google.maps.controls.PositionControl") as Class;

myMap = new Map();

myMap.key = '‘;
myMap.addEventListener(MapEvent.MAP_READY, _onMapReady);
myMap.setSize(new Point(800,350));
addChild(myMap);
}

protected function _onMapReady ( e ) : void
{
myMap.removeEventListener(MapEvent.READY, _onMapReady);

myMap.enableScrollWheelZoom();
myMap.enableContinuousZoom();
myMap.setCenter(new LatLng(48.25, 11.00), 4, MapType.NORMAL_MAP_TYPE);
myMap.addControl(new PositionControl());
myMap.addControl(new ZoomControl());
}

Vous devrez récupérer une clé d’utilisation en cliquant ici. Elle vous permettra d’utiliser Google Map sur un nom de domaine donné.

C’est une solution un peu sale, étant donné que le typage des Class devient impossible, il faudra être minutieux afin d’éviter les erreurs.

J’ai aussi tenté de décompilé le “library.swf” avec SWF Decompiler afin d’utiliser les classes directement, mais le code est trop complexe, le code décompilé est buggué et inutilisable… dommage.

Téléchargez ici l’exemple complet.

Mots Clés:

JPGEncoder en 300 dpi

21 May 2008

J’ai eu affaire ces derniers jours à la class JPGEncoder (contenue dans le corelib fourni par adobe) en AS3 qui permet d’encoder du bitmap depuis vers au format JPG. Pratique me direz vous ! La ou il fallais 20 secondes pour générer 1000px en AS2 via une passerelle AS2 en lui passant les données pixels toutes les 2 secondes pour éviter un crash, on peux maintenant exporter 3Mpixels en moins de 3 secondes.

Tutorial d’utilisation de la class JPGEncoder.

Mais voilà Adobe a prévu leur class seulement pour exporter seulement du 72dpi. Pas très pratique lorsqu’on exporter un JPG de stickers pour l’imprimer par la suite.

Après quelques longues recherches sur le format JPG et ses spécificités j’ai pu modifier le script JPGEncoder afin qu’il exporte en 300dpi. Il est possible d’encoder directement en 300dpi sans passer par Photoshop comme certains me le conseillais !

Pour cela, rendez vous ligne 400. Lors de l’écriture d’un des header du format JPG (APP0, marqueurs qui défini des spécificité)
Remplacez le 10ème byte écrit ligne :
writeByte(0); // xyunits -> writeByte(1); // xyunits
puis les lignes suivantes :
writeWord(1); // xdensity -> writeWord(0×12c); // xdensity défini la densité de pixel en x en hexadecimal (0×12c = 300)
writeWord(1); // ydensity -> writeWord(0×12c); // ydensity défini la densité de pixel en y en hexadecimal (0×12c = 300)

Votre export sera alors bien du 300dpi !

Mots Clés:

Daum: Art is Ultimate Luxury

5 January 2008

Premier gros projet chez Megalo(s) en collaboration avec Manu B..

Mots Clés:

Re-member, le projet de première année Gobelins est terminé !

10 July 2007

La soutenance a eu lieu la semaine dernière et j’ai pu présenter mon application Re-member au jury et au public.

Pour rappel :

Re-member est une application de bureau permettant la gestion de différents médias : photos, vidéos, et sons.
Le but de l’application est de mieux faire ressortir les souvenirs de chacuns à travers ces médias.
D’un coté le partage de souvenir, permet à chaqune des personnes qui aient assistés à un évènement particulier d’ajouter leur propre vidéo et photo, de manière à avoir diverses vues d’un évènement.
D’un autre coté, la visualisation des médias, plus naturelle comparés aux services traditionnels permettent une vision plus traditionnels et moins informatisés des médias.
De plus la bibliothèque permettra de retrouver des musiques qui ont accompagnés de nombreux souvenirs.

La vidéo de ma présentation :



Soutenance Gobelins 1ere année 2007
envoyé par tsnk

Un projet très intéréssant, qui m’a permis de me frotter à l’AS3, et à papervision3D, deux technologies qui promettent des choses merveilleuses (voir le showreel de papervision)

Mots Clés:

Un widget Windows pour RadioBlogClub !

13 June 2007

RadioBlogClub permet aux utilisateurs de télécharger un player audio pour leur site perso, une fois installé l’utilisateur rajoute une playlist de différentes musiques, qui est alors automatiquement rajouté dans la base de donnée de RadioBlog. De cette manière, le service recence plusieurs milliers de musiques à travers le monde, et permet aux utilisateurs de les rechercher, et les écouter depuis le site www.radioblogclub.fr.

Lancé il y a plus de 2 ans, il se place aujourd’hui dans les 600 visites les plus visités du monde!

L’accès se fait pour l’instant que via leur site, par Google Desktop ou bien par netvibes.

Je pense que ces différents modes d’accès restent limitatifs car dépendants dans une surcouche logiciel (firefox, google desktop), et ne permettent pas d’écouter de la musique, d’en découvrir, comme on écoute sa musique personnel avec Winamp ou Windows Media Player.

C’est pourquoi je me suis lancé dans le développement d’un widget qui permet via un executable, de faire des recherche radioblog, de lire les musiques, et ce, le plus simplement possible.

RadioblogClub Widget

Actuellement en version bêta de nombreux points sont à améliorer notamment le défilement des musiques.

De plus, de nombreuses fonctionnalitées supplémentaires pourraient être ajoutées, je pense par exemple à l’ajout de musiques directement depuis le poste client vers un compte FTP de l’utilisateur, de manière à pouvoir acceder facilement, à sa propre musique depuis n’importe ou. Ou bien la possibilitée d’acceder à son compte personnel, de pouvoir y créer ses playlist personnalisées, … Tout est a imaginé !

Vous pouvez télécharger l’application RadioBlogClub en cliquant-ici

NB: Un clic droit sur l’icone en bas à droite, à coté de l’horloge, vous permet d’acceder rapidement aux fonctionnalitées.

Mots Clés:

KeywordsTracker : l’évolution de vos mots clés Google

8 April 2007

Après plus de 8 mois à me consacrer uniquement à l’actionscript sans quasiment toucher à PHP, je me suis lancé dans le développement d’une petite application permettant de suivre l’évolution de la position d’un site dans une recherche Google par rapport à plusieurs mots clés.



Outil qui peut être pratique pour suivre le référencement d’un site.


Après avoir bien galérer à utiliser l’API Google et me rendre compte que la recherche via cette API était limité à 10 résultats, j’ai tout simplement parser une recherche Google grâce à la fonction file_get_contents() de PHP.


Bien sur, l’utilisation est à utiliser avec un CRON afin d’automatiser la mise à jours des différents trackers de mot clés. Le site http://www.webcron.org/ propose de plannifier l’éxecution de scripts gratuitement.


Télécharger les sources 0.1

+ Update (09/04/2007):
- Nettoyage du code

- Renommage des fichiers

Télécharger les sources 0.2

Voir la démo



Evolutions à apporter :

+ ajout d’un graphique des progression par mot-clés

+ comparaison entre différents sites

+ révision de la méthode de parsing (position approximative pour l’instant)

+ intégration avec Flex/Apolo ?

Qui as dis que je ferai mieux de bosser mon projet perso ?

Mots Clés:

Projet individuel Gobelins

5 March 2007

Nous avons rendu notre note d’intention pour le projet individuel des Gobelins.

Pour rappel, ce projet est un travail d’auteur, sans aucun but commercial, l’objectif est de concevoir et réaliser une application intéractive.

Le thème cette année est : “Interieur/exterieur : histoire de dialogue, d’échanges et d’émotions”.

Nous devons tout d’abord rédiger la note d’intention qui décrit les objectifs de notre projet. Nous serons par la suite évalués sur notre capacité à fournir un dossier de conception de manière autonome. Les choix stylistiques et artistiques, les principes de navigation, l’arborescence, et les choix techniques sont les principaux points à argumenter, de manière cohérente avec le sujet, la cible, et les objectifs fixés au départ.

Notre concept accompagné d’une maquette fonctionnelle seront à présenter devant un jury de professionnels début Juillet.

Mon projet se nomme Re-member.

Le pitch:
Donnez audience à vos souvenirs.

Asseyez-vous devant votre écran, laissez remonter vos souvenirs, remémorez-vous ces moments, ces lieux, ces évènements, qui ont construit votre passé. Dialoguez, et échangez avec vos amis, votre famille pourtant loin de vous mais qui partagent aussi ces souvenirs, votre mémoire, votre vie. Laissez ressurgir vos émotions.

Télécharger ici la note d’intention au format PDF.

Découvrez les projets d’autres élèves de ma promo:

Mots Clés:

Premier projet Gobelins … suite et fin !

5 January 2007

La soutenance oral a eu lieu il y a déjà 3 semaines et s’est plutôt bien passé pour nous (12/20).

Voici notre présentation:

C’était un projet avec un délai assez court, et peu de réalisations mais qui nous a permis de bien prendre connaissance des principales méthodes de conception, et d’en cerner leur utilités :

  • définition des objectifs, définition d’une orientation stratégique
  • benchmark technique
  • scénario utilisateurs
  • zoning
  • storyboard

Méthodes qui seront plus largement utilisés pour les prochains projets. Sans transition, le projet individuel a été lancé, avec comme sujet: ” Interieur / exterieur : histoire de dialogue, d’échanges et d’émotions “, un sujet assez large avec comme seule contrainte, l’utilisation de vidéo.

A suivre …

PS: Bonne année à tous

Mots Clés:

Week end à Paname

18 December 2006

Un super week end à Paris qui ma permis de faire un tour à la Graphic Session /01, galerie nomade d’artistes contemporain à l’espace EOF dans le 5ème.

Au programme environ 40 artistes contemporain présentant dessins, illustrations, peintures sur différents support.

Voilà ce qu’on pouvais y voir, entre autres :

A l’affiche Mijn schatje et ces superbes illustrations numériques tirés sur aluminium. Le rendu est très bon :

Mijn schatje

Quelques peintures sur carton :

peinture_carton.jpg

Une très belle planche représentant graphiquement le mot “images” de différentes manières :

représentation images

Des courts métrages de la maison de production Mr Hyde étaient projetés en continue, de très bonnes réalisations à voir absolument sur leur site web, dans la partie “Réalisateurs” : http://www.mrhyde.fr/.

Ce voyage, ma permis de visiter le Palais de Tokyo, de faire une soirée Pigalle Rock Party au divan du monde (un genre de boîte qu’on aimerai voir ailleur qu’à Paris), ballades au coeur de Paris, etc…

Rue mouffetard

Metro parisien

perif

Encore merci à Clotylde et Camille pour ce week end ! A refaire :)

Mots Clés:

Premier projet aux Gobelins

27 November 2006

Deux mois tout juste après la rentrée, voilà que ça s’accélère un peu aux Gobelins. Les nuits sont de plus en plus courtes, le sommeil se fait de plus en plus ressentir, et pour cause, la date de rendu du premier projet approche.

« Terra » est le nom d’un magazine presse (fictif) spécialisé dans le reportage photographique et la nature. Ils disposent de plus d’un fond documentaire cinématographique déjà diffusé sur quelques chaînes hertziennes. Le magazine souhaite mettre en valeur ses documentaires et élargir son mode de diffusion au travers des nouveaux médias électroniques.

Notre groupe de projet (4 personnes) se doit de rendre un projet de positionnement sur un marché émergeant. Le projet de positionnement comprend l’analyse de la cible et de ces habitudes, un benchmark technique, le scénario stratégique, et pour finir, une interface graphique accompagnée des documents de conception.

Le dossier est en cours de finalisation, sachant qu’il doit être rendu lundi prochain.

Pour patientez voici ma proposition d’interface graphique:

Terra VOD - interface graphique

Terra VOD - interface graphique - googmap

Mots Clés: