c'est encore 3 fois rien, donc c'est tout au plus un ensemble de classes PHP a exploiter plutot qu'une application.
comme tout logiciel que je réalise, il est Free, enfin il le sera. Si tu veux un snapshot, par curiosité, je peux m'arranger ou plutot on peut s'arranger. Sinon, je fréquente irc://irc.freenode.org/#wirelessfr, pseudo _marc_
j'ai corrigé la premiere methode, et maintenant, c'est OK, j'ai 2 formules completement différentes qui donnent sensiblement le meme résultat a moins de 1cm d'ecart, via 2 formules différentes.
$cugnaux = new Point(1.367, 43.533);
$seysses = new Point(1.317, 43.500);
je suis en train de réaliser un système intéractif de cartographie tres simplifiée pour présenter des vue de réseau wifi.
j'ai besoin de :
1 - représenter une vue 2D, meme approximative ; j'ai deja réalisé quelque classes qui me permettent d'afficher (sans projection) les coordonnées géographiques sur une image générée a la volée.
2- j'ai aussi créé la notion de lien.
3 - la carte est en phase de devenir intéractive. Les objets affichés vont bientot réagir aux intéractions.
j'aurais besoin d'informations complémentaires :
1 - un algorythme permettant de trouver les nodes les plus proches. Je pensais creer un arbre de type b-tree. La fonction de comparaison pour insersion dans les noeuds et sous-noeuds étant tout simplement la distance.
Il suffit de comparer recursivement la distance, a gauche, a droite et de rentrer judicieusement dnas les sous-arbres.
Par la suite, pour détecter les voisin, il suffit de parcourir l'arbre.
J'espere que cet algo tient la route, je n'en n'ai pas la certitude, mais c'est intéressant de voir ... Je suppose qu'il doit exister d'autres methodes avec un decoupage par zone.
2 - j'aimerai bien evaluer les distances en kilometre et metres, meme sans une grande précision. Pour cela j'ai trouvé quelque sites :
étant donné que les distances utilisées dans le cadre de ce projet sont tres courtes, la courbure de la terre ne devrait pas avoir une importance significative. Aussi je pensais calculer la distance en applicant le théoreme de Pythagore, connaissance le rayon moyen de la terre, ca devrait suffir. Mais les resultats obtenus ne sont pas statisfaisants : trop grande erreur par rapport a des valeurs de reference trouvées sur le net.
Dans mon algo, j'ai défini une classe Terre avec un rayon de 6366 (lion1906). J'en déduit les dimensions d'un degré d'arc (a l'equateur) : 111km. Il est plus petit sous nos latitudes : reduit de cos(latitude). A partir de ces données, une simple triangulation avec un triangle rectangle (donc Pythagore) devrait suffir, hors, j'obtient des décalage de 25 à 50%.
ou est mon errreur ?
voici mes 2 methodes php :
function distance(){
# théoreme de pythagore devrait suffire sur des petites distances !
$width = ($this->p1->x - $this->p2->x);
$height = ($this->p1->y - $this->p2->y);
# manque cos(latitude)
return ( $this->terre->degre * sqrt(pow($width, 2) + pow($height,2)));
}
tu confonds encapsulation et protection des données membres. Enfin peut-etre que tu as raison et que je suis le "hors norme". Souvent je constate une grande facon de voir les choses et dans vocabulaire employé en fonction de les langages utilisés par les gens. Je constate que bien des gens pensent C++ au lieu de penser a un niveau un peu plus élevé, c'est a dire le niveau objet.
voici un extrait de wikipedia qui a tendance a te donner raison :
L'encapsulation pour les développeurs en informatique est l'idée de cacher l'information contenu dans un objet et de ne proposer que des méthodes de manipulation de cet objet, ainsi les propriété et axiomes associés au informations contenue dans l'objet seront assurés/validés par les méthodes de l'objet et ne seront plus de la responsabilité de l'utilisateur extérieur.
L'utilisateur extérieur ne pourra pas modifier directement l'information et risquer de mettre en péril les axiomes et les propriétés comportementales de l'objet.
cependant, dans un langage permissif tel que php(4), etant donné que la notion de contrat n'est plus formalisée par le langage, c'est au développeur de veiller au grain.
c'est un peu comme la notion de methode virtuelle ... en php, tout methode est dite virtuelle dans le sens ou elle est surchageable et a ligature dynamique (si je me plante pas dans la terminologie).
> La première est la persistance des processsus coté serveurs.
comment est-ce qu'on fait :
- pour garder le meme processus utilisateur au fil des connexions,
- sans pour autant saturer le serveur en memoire alloue
- et ou processus ou thread systeme.
sur un serveur peu chargé tout réside en memoire,cc'est parfait, il y a unicité enttre process et contexte utilisateur
dans un contexte plus chargé, les sessions sont certainement déchargée sur le disque non ? du coup, cela se raproche etrangement de ce qui se fait de maniere un peu moins transparent en php. Mais ce n'est pas trop complexe a gerer tout de meme une session.
laissez moi rire, les classes php (4 et 5) sont assez complete pour pouvoir réaliser de jolis framework objet, alors arretez donc avec la soit disante supériorité de java et C++. Avec php tout est beaucoup plus dynamique et rapide a developper.
cepandant, dans un contexte contractuel, php4 n'est pas la panacée puisqu'on peut acceder aux membres de la classe.
j'ai meme entendu parler d'interpréteur C++, Ada, ASP, .NET et du support de DirectX, des dll Windows, de l'active X ; cepandant pour ce qui est du support de XHTML, il faudrra encore attendre un peu ..
ben, oui, mais mon fils essaie de faire comme son papa. Il se met a php, il essaie de bricoler des scripts php, et apres pour faire encore mieux, il met le tout dans des classes, des jolies classes php.
pour l'instant, il a réalisé (avec mon aide) :
- le jeu des allumettes,
- le morpion (en cours de finition)
php, ca peut a la fois etre crade, ou propre suivant les compétances, le temps, les gouts de chacun.
j'ai lu sur fr.comp.lang.php que la doc en ligne, c'était horrible et que ca pourrissait le code. A chacun son avis.
cependant il est vrai que parfois les imbrications de classes ne sont pas triviales.
souvent, mes applis ont cette allure :
$appli = new MonAppli()
$appli->run();
et le main se limite a cela :
- pas de variable globale, enfin si une seule : $appli
- pas de polution de l'espace de nommage (c'est pas trop le fort de php, alors autant aller dans le bon sens)
- toutes les classes sont surclassables.
je m'efforce de realiser des classes qui ont les caractéristiques suivantes :
- plus faciles a hériter et surcharger que a instancier avec des milliers de parametres ; ca simplifie largement l'utilisation, mais peut-etre pas la lecture,
- des methode courtes, tres courtes meme ; je parle de méthode atomique dans le sens ou elles ne font qu'une seule chose et bien. Une methode qui fait plusieurs choses devrait etre sindée pour faciliter la surchage via l'héritage,
- ne pouvant pas encore utiliser la notion d'interface de php5 commune a Java, je fais des classes type 'interface' dont j'hérite. Chaque classe apportant par famille son lot de fonctionnalités (services).
tout comme SpamCop.net, il fait des requettes systématiques. les informations issues de ces serveurs sont intéressantes mais dépouvues de toute analyse de plus haut niveau.
en gros, il suffit d'exposer une adresse email au feu du spam, ce qui permet d'alimenter une base de données qui te sert apres pour virer tous les spam recus en double.
pour celui-ci, je suis allé chez le registrar et j'ai déposé via un formulaire, un plainte ; j'espere que son domaine va saut et lui avec, meme si je ne me fais pas trop d'illusions.
j'ai un autre site qui est en .RU, et la c pas gagné. Chasseur de spammeur, c un metier d'avenir non ?
[^] # Re: Merci
Posté par Marc Quinton . En réponse au journal le dictionnaire des algorithmes. Évalué à 2.
[^] # Re: cartographie en php pour projet Wifi
Posté par Marc Quinton . En réponse à la dépêche La spatialisation libre avance : tour d'horizon. Évalué à 0.
# un point c'est tout !
Posté par Marc Quinton . En réponse à la dépêche La spatialisation libre avance : tour d'horizon. Évalué à 1.
http://www.upct.org/(...)
(merci Julien)
[^] # Re: cartographie en php pour projet Wifi
Posté par Marc Quinton . En réponse à la dépêche La spatialisation libre avance : tour d'horizon. Évalué à 2.
http://toulouse.sans.fil.free.fr/(...)
les sources, ne sont pas encore dispo.
[^] # Re: cartographie en php pour projet Wifi
Posté par Marc Quinton . En réponse à la dépêche La spatialisation libre avance : tour d'horizon. Évalué à 1.
comme tout logiciel que je réalise, il est Free, enfin il le sera. Si tu veux un snapshot, par curiosité, je peux m'arranger ou plutot on peut s'arranger. Sinon, je fréquente irc://irc.freenode.org/#wirelessfr, pseudo _marc_
[^] # Re: cartographie en php pour projet Wifi
Posté par Marc Quinton . En réponse à la dépêche La spatialisation libre avance : tour d'horizon. Évalué à 3.
$cugnaux = new Point(1.367, 43.533);
$seysses = new Point(1.317, 43.500);
$seg = new WifiLink($cugnaux, $seysses);
echo 'distance = ' . $seg->distance() . "\n";
echo 'distance ortho = ' . $seg->distance_orthodromique() . "\n";
resultat :
distance = 5.4473367205683
distance ortho = 5.4473365237337
la methode (pour ceux que ca intéresse) :
function distance(){
$cos = cos(deg2rad(($this->p1->y+$this->p2->y)/2));
$width = ($this->p1->x - $this->p2->x) * $this->terre->degre * $cos;
$height = ($this->p1->y - $this->p2->y) * $this->terre->degre;
return ( sqrt(pow($width, 2) + pow($height,2)));
}
pour info, $this->terre->degre = rayon_terre(km) * 2PI / 360 =~ 111 km
# cartographie en php pour projet Wifi
Posté par Marc Quinton . En réponse à la dépêche La spatialisation libre avance : tour d'horizon. Évalué à 3.
je suis en train de réaliser un système intéractif de cartographie tres simplifiée pour présenter des vue de réseau wifi.
j'ai besoin de :
1 - représenter une vue 2D, meme approximative ; j'ai deja réalisé quelque classes qui me permettent d'afficher (sans projection) les coordonnées géographiques sur une image générée a la volée.
2- j'ai aussi créé la notion de lien.
3 - la carte est en phase de devenir intéractive. Les objets affichés vont bientot réagir aux intéractions.
j'aurais besoin d'informations complémentaires :
1 - un algorythme permettant de trouver les nodes les plus proches. Je pensais creer un arbre de type b-tree. La fonction de comparaison pour insersion dans les noeuds et sous-noeuds étant tout simplement la distance.
Il suffit de comparer recursivement la distance, a gauche, a droite et de rentrer judicieusement dnas les sous-arbres.
Par la suite, pour détecter les voisin, il suffit de parcourir l'arbre.
J'espere que cet algo tient la route, je n'en n'ai pas la certitude, mais c'est intéressant de voir ... Je suppose qu'il doit exister d'autres methodes avec un decoupage par zone.
2 - j'aimerai bien evaluer les distances en kilometre et metres, meme sans une grande précision. Pour cela j'ai trouvé quelque sites :
http://www.lion1906.com/Pages/Orthodromie.html(...)
http://www.ign.fr/telechargement/education/fiches/geodesie/coordonn(...)
étant donné que les distances utilisées dans le cadre de ce projet sont tres courtes, la courbure de la terre ne devrait pas avoir une importance significative. Aussi je pensais calculer la distance en applicant le théoreme de Pythagore, connaissance le rayon moyen de la terre, ca devrait suffir. Mais les resultats obtenus ne sont pas statisfaisants : trop grande erreur par rapport a des valeurs de reference trouvées sur le net.
Dans mon algo, j'ai défini une classe Terre avec un rayon de 6366 (lion1906). J'en déduit les dimensions d'un degré d'arc (a l'equateur) : 111km. Il est plus petit sous nos latitudes : reduit de cos(latitude). A partir de ces données, une simple triangulation avec un triangle rectangle (donc Pythagore) devrait suffir, hors, j'obtient des décalage de 25 à 50%.
ou est mon errreur ?
voici mes 2 methodes php :
function distance(){
# théoreme de pythagore devrait suffire sur des petites distances !
$width = ($this->p1->x - $this->p2->x);
$height = ($this->p1->y - $this->p2->y);
# manque cos(latitude)
return ( $this->terre->degre * sqrt(pow($width, 2) + pow($height,2)));
}
# http://www.lion1906.com/Pages/OrthodromieCap.html(...)
function distance_orthodromique(){
$LatA = deg2rad($this->p1->latitude());
$LatB = deg2rad($this->p2->latitude());
$LongA = deg2rad($this->p1->longitude());
$LongB = deg2rad($this->p2->longitude());
return 6366 * acos(cos($LatA) * cos($LatB) * cos($LongB-$LongA)+sin($LatA) * sin($LatB));
}
[^] # Re: PS
Posté par Marc Quinton . En réponse au journal Apache/PHP et J2EE. Évalué à 0.
c'est pour cela que je fais confiance a Linux et php ;-)
[^] # Re: Marrant, ça...
Posté par Marc Quinton . En réponse au journal Apache/PHP et J2EE. Évalué à 2.
voici un extrait de wikipedia qui a tendance a te donner raison :
L'encapsulation pour les développeurs en informatique est l'idée de cacher l'information contenu dans un objet et de ne proposer que des méthodes de manipulation de cet objet, ainsi les propriété et axiomes associés au informations contenue dans l'objet seront assurés/validés par les méthodes de l'objet et ne seront plus de la responsabilité de l'utilisateur extérieur.
L'utilisateur extérieur ne pourra pas modifier directement l'information et risquer de mettre en péril les axiomes et les propriétés comportementales de l'objet.
cependant, dans un langage permissif tel que php(4), etant donné que la notion de contrat n'est plus formalisée par le langage, c'est au développeur de veiller au grain.
c'est un peu comme la notion de methode virtuelle ... en php, tout methode est dite virtuelle dans le sens ou elle est surchageable et a ligature dynamique (si je me plante pas dans la terminologie).
[^] # Re: PS
Posté par Marc Quinton . En réponse au journal Apache/PHP et J2EE. Évalué à 2.
comment est-ce qu'on fait :
- pour garder le meme processus utilisateur au fil des connexions,
- sans pour autant saturer le serveur en memoire alloue
- et ou processus ou thread systeme.
sur un serveur peu chargé tout réside en memoire,cc'est parfait, il y a unicité enttre process et contexte utilisateur
dans un contexte plus chargé, les sessions sont certainement déchargée sur le disque non ? du coup, cela se raproche etrangement de ce qui se fait de maniere un peu moins transparent en php. Mais ce n'est pas trop complexe a gerer tout de meme une session.
[^] # Re: Marrant, ça...
Posté par Marc Quinton . En réponse au journal Apache/PHP et J2EE. Évalué à -1.
laissez moi rire, les classes php (4 et 5) sont assez complete pour pouvoir réaliser de jolis framework objet, alors arretez donc avec la soit disante supériorité de java et C++. Avec php tout est beaucoup plus dynamique et rapide a developper.
cepandant, dans un contexte contractuel, php4 n'est pas la panacée puisqu'on peut acceder aux membres de la classe.
[^] # Re: Mozilla 2
Posté par Marc Quinton . En réponse au journal Plugin python pour navigateur web. Évalué à 1.
---->[] ...
[^] # Re: Tiens, toi aussi ?
Posté par Marc Quinton . En réponse au journal un registrar, hébergeur qui fait du SPAM ?. Évalué à 1.
j'ai vu ce matin des tas de sites en rapport avec XXXXXX.
quel est le lien avec altitudetelecom.fr ?
[^] # Re: Bonne idée...
Posté par Marc Quinton . En réponse à la dépêche Présentation de chrono-site et de ses modules. Évalué à 7.
pour l'instant, il a réalisé (avec mon aide) :
- le jeu des allumettes,
- le morpion (en cours de finition)
php, ca peut a la fois etre crade, ou propre suivant les compétances, le temps, les gouts de chacun.
j'ai lu sur fr.comp.lang.php que la doc en ligne, c'était horrible et que ca pourrissait le code. A chacun son avis.
cependant il est vrai que parfois les imbrications de classes ne sont pas triviales.
souvent, mes applis ont cette allure :
$appli = new MonAppli()
$appli->run();
et le main se limite a cela :
- pas de variable globale, enfin si une seule : $appli
- pas de polution de l'espace de nommage (c'est pas trop le fort de php, alors autant aller dans le bon sens)
- toutes les classes sont surclassables.
je m'efforce de realiser des classes qui ont les caractéristiques suivantes :
- plus faciles a hériter et surcharger que a instancier avec des milliers de parametres ; ca simplifie largement l'utilisation, mais peut-etre pas la lecture,
- des methode courtes, tres courtes meme ; je parle de méthode atomique dans le sens ou elles ne font qu'une seule chose et bien. Une methode qui fait plusieurs choses devrait etre sindée pour faciliter la surchage via l'héritage,
- ne pouvant pas encore utiliser la notion d'interface de php5 commune a Java, je fais des classes type 'interface' dont j'hérite. Chaque classe apportant par famille son lot de fonctionnalités (services).
[^] # Re: N'importe quoi
Posté par Marc Quinton . En réponse au journal un registrar, hébergeur qui fait du SPAM ?. Évalué à 1.
[^] # Re: N'importe quoi
Posté par Marc Quinton . En réponse au journal un registrar, hébergeur qui fait du SPAM ?. Évalué à 2.
> Le site est géré par XXXXXX dont les serveurs sont chez LDCOM.
comment tu voir ca ? tu veux m'expliquer ?
[^] # Re: Je ne partage pas totalement ton avis....
Posté par Marc Quinton . En réponse à la dépêche Musique ouverte : la philosophie de Steve Coleman. Évalué à 1.
[^] # Re: GMail
Posté par Marc Quinton . En réponse au journal Boîte mail de 2 Go. Évalué à 1.
j'ai tout de meme distribué 6 comptes a mes amis et freres Linuxiens.
a+
[^] # Re: GMail
Posté par Marc Quinton . En réponse au journal Boîte mail de 2 Go. Évalué à 0.
[^] # Re: c'est au tour de idregie.com
Posté par Marc Quinton . En réponse au journal SPAM : a la fosse aux lion : http://www.logoshaker.fr/. Évalué à 1.
domain: moustiq.com
owner-address: b....... p...
owner-address: .............
owner-address: .....
owner-address: .....
owner-address: France
admin-c: VS287-GANDI
tech-c: VS287-GANDI
bill-c: VS287-GANDI
nserver: ns0.moustiq.com 62.93.224.18
nserver: ns.abovenet.de 216.200.116.12
reg_created: 2001-11-03 10:05:34
expires: 2004-11-03 10:05:34
created: 2001-11-03 16:05:35
changed: 2003-09-03 19:27:34
person: V...... s.....
nic-hdl: VS287-GANDI
address: ...........
address: .....
address: ......
address: France
phone: +33 ......
e-mail: ......
lastupdated: 2003-11-19 23:02:58
# c'est au tour de idregie.com
Posté par Marc Quinton . En réponse au journal SPAM : a la fosse aux lion : http://www.logoshaker.fr/. Évalué à 1.
Registrant: Make this info private
S......, D..... R.
(.........)
..............
..............
FR
Phone: .. . .. .. .. ..
Fax: .. . .. .. .. ..
Domain Name: IDREGIE.COM
Administrative Contact :
S......, D..... R.
(.........)
drs@idgroupe.com
..............
..............
FR
Phone: .. . .. .. .. ..
Fax: .. . .. .. .. ..
Record expires on 07-Jan-2006
Record created on 08-Jan-2004
Database last updated on 12-Jul-2004
---
le mail concerne 1001Dessous.com qui doit etre le commenditaire du mail bonmbing. le domaine est hébergé chez gandi. Je vais voir ca ...
# abuse@yesnic.com ne repond pas, que faire ?
Posté par Marc Quinton . En réponse au journal SPAM : a la fosse aux lion : http://www.logoshaker.fr/. Évalué à 1.
dmanager@yesnic.com
[^] # Re: ORDB
Posté par Marc Quinton . En réponse au journal SPAM : a la fosse aux lion : http://www.logoshaker.fr/. Évalué à 2.
# http://sumbux.biz/ebay
Posté par Marc Quinton . En réponse au journal SPAM : a la fosse aux lion : http://www.logoshaker.fr/. Évalué à 1.
merci pour eux de leur délicate intension ...
[^] # Re: encore un dans la fosse aux lions :
Posté par Marc Quinton . En réponse au journal SPAM : a la fosse aux lion : http://www.logoshaker.fr/. Évalué à 1.
j'ai un autre site qui est en .RU, et la c pas gagné. Chasseur de spammeur, c un metier d'avenir non ?