Page 5 of 8

Re: Karto marche plus, cherche kkchose similaire

Posted: Mon Aug 21, 2006 9:30 am
by cyrille5
oO pas bete :p j'avais oublié qu'on etait en little endian.. je trouvais ca qd meme etrange, mais bon pas plus que ca comparé a certains fichiers que j'ai déja parsé .. :D

Re: Karto marche plus, cherche kkchose similaire

Posted: Mon Aug 21, 2006 9:37 am
by holkan
Juste une question bête à laquelle vous allez sans doute me repondre :D

Comment vous allez positionner un float sur votre écran ?
Vous prenez la valeur entière la plus proche ?

Dans ce cas, pourquoi ils utilisent un float??

Re: Karto marche plus, cherche kkchose similaire

Posted: Mon Aug 21, 2006 9:42 am
by kervala
Holkan wrote:Dans ce cas, pourquoi ils utilisent un float??
Ce ne sont pas des coordonnées de pixels à l'écran (comme dans un jeu 2D) :p

Voilà les structures :

Code: Select all

struct _landmark
{
	string nom;
	float x, y;
	char magik;
};

struct _zone
{
	string nom;
	list<_landmark> landmarks;
};

list<_zone> zones;
Voilà le code C++ :

Code: Select all

//Lit le nombre de zones
long nb_zones = ReadLong();

for (int i=0; i < nb_zones; i++)
{
	_zone zone;

	//lecture du nom de la zone
	zone.nom = ReadString8();

	//Lecture du nombre de landmarks
	long nb_landmarks = ReadLong();

	//Lecture de chaque landmark
	for (int j=0; j < nb_landmarks; j++)
	{
		_landmark landmark;

		//lecture Localisation
		landmark.x = ReadFloat();
		landmark.y = ReadFloat();

		//lecture nom
		landmark.nom = ReadString16();

		//Lecture du magik (zéro normalement)
		landmark.magik = ReadChar();

		// On ajoute le landmark dans la liste
		zone.landmarks.push_back(landmark);
	}

	// On ajoute la zone dans la liste
	zones.push_back(zone);
}

Re: Karto marche plus, cherche kkchose similaire

Posted: Mon Aug 21, 2006 9:47 am
by cyrille5
Ils utilisent des float surement car c'est plus simple/precis de faire comme ca, et qu'ils ont peut etre besoin de tres grosse coordonnés, dépassant le format int.

Pour les placer, il suffit de chopper les coordonnées des points NO de chaque carte (xNO, yNO) et SE (xSE, ySE). Avec ca, on s'amuse avec des additions/soustraction à repositionner l'origine (x1No = 0 et y1NO = 0) et mettre x1SE et y1SE a la largeur / hauteur de la carte en pixel.

Ensuite, x1Drapeau = (xDrapeau - xNO) / (xSE / x1SE) et de meme pour y.


@kervala : tu l'a choppé ou le code ? je me suis baladé sur la nel et je l'ai po trouvé..

Re: Karto marche plus, cherche kkchose similaire

Posted: Mon Aug 21, 2006 9:48 am
by holkan
kervala wrote:Ce ne sont pas des coordonnées de pixels à l'écran (comme dans un jeu 2D) :p

Desolé j'y connais pas grand chose en 3D :D
Mais la map est en 2D...alors pourquoi et surtout comment ils gérent un axe Z ??

Re: Karto marche plus, cherche kkchose similaire

Posted: Mon Aug 21, 2006 9:51 am
by cyrille5
L'axe z est géré (il suffit de regarder les coordonnés que tu envoies lorsque tu soumets un ticket par exemple ;) ), mais pour tous les calculs de distances il est ignoré :)

Re: Karto marche plus, cherche kkchose similaire

Posted: Mon Aug 21, 2006 9:58 am
by asharan
Quand je lis tout ca...

Je me dis quand même qu'un bonne impression papier avec des stylos bic c'est quand même bin plus pratique :D
...
Pour les néophites en info hihiih

Re: Karto marche plus, cherche kkchose similaire

Posted: Mon Aug 21, 2006 10:49 am
by bruno33
comment on ouvre un fichier en binaire en vb ?

Re: Karto marche plus, cherche kkchose similaire

Posted: Mon Aug 21, 2006 11:00 am
by kervala
bruno33 wrote:comment on ouvre un fichier en binaire en vb ?
Perso, j'aime pas le BASIC ( :p ), mais tu devrais trouver ton bonheur ici :
http://www.developpez.com/vbasic/tutori ... riel24.php

Par contre, je ne garantis pas que tu parviendras à lire les bonnes valeurs comme elles ont été sauvées en C++ :p

Re: Karto marche plus, cherche kkchose similaire

Posted: Mon Aug 21, 2006 11:17 am
by benletib
Moi c'est pire, je voudrais faire un truc dans Director, en Lingo ou en Javascript... :rolleyes: