VDH-Bruno Posté(e) le 20 février 2012 Posté(e) le 20 février 2012 Bonsoir, Je voulais juste faire remarquer aux CADXPIEN(NE) du forum qui souhaiteraient comme moi combler quelques lacunes ou dépoussiérer des notions scolaires qui dates.. <_< Qu’il y a actuellement en librairie le hors série n°44 du magasine Tangente qui traite du sujet, voilà je pense que pour des utilisateurs d’un logiciel de DAO ce n’est pas inintéressant de se réconcilier même tardivement avec la géométrie, les espaces vectoriels et le calcul matriciel. :) A+(Ps : J’ai pas fait de lien sur leur site, ce dernier n’étant pas à jour). Apprendre => Prendre => Rendre
Tramber Posté(e) le 20 février 2012 Posté(e) le 20 février 2012 On va faire une commande groupée du numéro ;) Tu l'as lu je suppose ? Je suis justement en train de me mettre à TransformBy tout doucement !J'ai manipulé pas mal de matrices pendants mes études mais appris tout sauf des applications géométriques (sauf un peu en méca)... et depuis tellement oublié et tellement peu pratiqué ! C'est pas inaccessible du tout. Bureau d'études dessin. Spécialiste Escaliers Développement - Formation ./__\. (.°=°.)
(gile) Posté(e) le 21 février 2012 Posté(e) le 21 février 2012 Salut, Sujet passionnant et fondamental.J'avais essayé de faire un petit topo sur l'utilisation des vecteurs et du calcul vectoriel en LISP (ici) et pensait le continuer avec les matrices qui en serait la suite naturelle. Extrait du Dictionnaire des sciences (Flammarion) :"La notion de matrice permet de ramener les opérations sur les applications linéaires à des opérations sur les nombres, comme les notions de base et de coordonnées permettent de ramener les opérations sur les vecteurs à des opérations sur des nombres." Je suis justement en train de me mettre à TransformBy tout doucement !La méthode COM TransformBy illustre parfaitement les pitoyables lacunes de l'API COM AutoCAD (plus je traduit du VBA, plus je trouve cette interface mal foutue). Elle est certes puissante et permet d'appliquer des transformations à des entités, mais ne s'accompagne d'aucune autre méthode pour construire et combiner des matrices. Et pour cause, il n'existe pas de structure (ou de classe) avec des méthodes et des propriétés pour traiter les points et les vecteurs (ce qui me semble aberrant pour une interface de programmation dédiée à un logiciel de dessin). Points, vecteurs et matrices ne sont que des tableaux de nombres tellement laborieux à manipuler !Je plains sincèrement les programmeurs VBA qui ont à se confronter à ça... Heureusement en LISP on peut plus aisément manipuler des listes et avec quelques petites routines faire tout ce qui est nécessaire pour construire et manipuler ces matrices qu'on pourra utiliser avec vla-TransformBy après les avoir transformée en variants avec la fonction vlax-tmatrix. Les routines incontournables :;; vxv ;; Retourne le produit scalaire de deux vecteurs (defun vxv (v1 v2) (apply '+ (mapcar '* v1 v2))) ;; TRP ;; transpose une matrice -Doug Wilson- (defun trp (m) (apply 'mapcar (cons 'list m))) ;; MXV ;; Applique une matrice de transformation à un vecteur -Vladimir Nesterovsky- (defun mxv (m v) (mapcar (function (lambda (r) (vxv r v))) m) ) ;; MXM ;; Multiplie (combine) deux matrices -Vladimir Nesterovsky- (defun mxm (m q) (mapcar (function (lambda (r) (mxv (trp q) r))) m) ) Une routine pour définir une transformation entre deux systèmes de coordonnées qui utilise la fonction trans, laquelle n'est jamais que l'application d'une matrice à un vecteur.;; gc:TMatrixFromTo ;; Retourne la matrice de transformation (4x4) d'un système de coordonnées ;; vers un autre (mêmes types d'arguments que trans) (defun gc:TMatrixFromTo (from to) (append (mapcar (function (lambda (v o) (append (trans v from to T) (list o)) ) ) (list '(1. 0. 0.) '(0. 1. 0.) '(0. 0. 1.)) (trans '(0. 0. 0.) to from) ) (list '(0. 0. 0. 1.)) ) ) Gilles Chanteau - gileCAD - GitHub Développements sur mesure pour AutoCAD
Patrick_35 Posté(e) le 21 février 2012 Posté(e) le 21 février 2012 Bonjour (gile) avait déjà traité le sujet ici @+ Les Lisps de PatrickLe but n'est pas toujours placé pour être atteint, mais pour servir de point de mire.Joseph Joubert, 1754-1824
Tramber Posté(e) le 21 février 2012 Posté(e) le 21 février 2012 Pour ceux que ca intéressse il y a donc de la bonne doc ici, doc dont l'auteur est assez connu (il a son nom entre parenthèses.) Bureau d'études dessin. Spécialiste Escaliers Développement - Formation ./__\. (.°=°.)
VDH-Bruno Posté(e) le 21 février 2012 Auteur Posté(e) le 21 février 2012 Bonjour, Personnellement si j’ai cité ce numéro c’est parce que je le trouve pas trop mal foutu, pour accéder à de nouvelles connaissances il faut pouvoir rattacher le sujet à quelque chose de concrets ou des à connaissances proches, et je pense qu’ils ont réussi dans leurs numéro. De plus un magazine c’est souvent bien plus digeste qu’un livre pour commencer, après à chacun d’approfondir suivant ses besoins, cerise sur le gâteau c’est en kiosque sans obligation d’achat, alors à feuilleter pour ce faire une idée en fonction de son cas (et pas besoin de commander). Tu l'as lu je suppose ?Tramber c’est en cours de lecture, à la base c’est un sujet dont j’en connais plus le nom qu’autre chose, je sais qu’à une époque leurs méconnaissances m’ont empêché d’accéder à la maîtrise des milieux continues en RDM.il y a donc de la bonne doc ici, doc dont l'auteur est assez connu (il a son nom entre parenthèses.)Oui c’est vrai on a beaucoup de chance il est très généreux pour ça, c’est bien de le rappeler (gile) Merci pour test codes et d’avoir fait les liens (notamment celui sur les vecteurs qui est, je pense un bon préalable avant les Matrices) je pensais les rajouter par la suite si le sujet avait de l’écho. Patrick_35 Merci également pour le lien depuis la refonte du site je n’arrivais plus à remettre la main dessus. A+ Apprendre => Prendre => Rendre
Messages recommandés
Créer un compte ou se connecter pour commenter
Vous devez être membre afin de pouvoir déposer un commentaire
Créer un compte
Créez un compte sur notre communauté. C’est facile !
Créer un nouveau compteSe connecter
Vous avez déjà un compte ? Connectez-vous ici.
Connectez-vous maintenant