chris_mtp Posté(e) le 10 février 2011 Posté(e) le 10 février 2011 Bonjour à tous, Je suis en train de faire une routine pour simplifier le tracé d'un tour d'horizon qui souvent demande du temps, de tracer des cercles, annotations etc....... J'ai un problème avec les gisements, je n'arrive pas dans Autocad à configurer les unités pour que par exemple si j'ai un point avec gisement de 350 gr, la routine me trace un trait du centre de mon tour d'horizon à ce point et donc dans mon quadrant ce trait devrait se trouvait en haut à gauche par rapport au Nord et là il trace le trait en bas à droite donc la valeur de mon angle est complétement erroné. Et même avec une valeur à +/- 200 gr, ca ne correspond pas à l'angle en question que je calcule avec une autre formule de gisement. Il n'y a pas de problème dans mes gisements, j'ai contrôle maintes fois même à la calcultatrice.J'ai l'impression qu'Autocad pour un gisement réel de 331.209 gr trace un angle de 168.259 gr.Pourquoi ??? Voici un bout de mon code qui je pense pose problème pour les parramètres de configuration (command "SCU" "G") (command "-UNITES" 2 4 3 4 300.000g) (setvar "ANGBASE" 300) (setvar "ANGDIR" 1) et la formule pour calculer les points (setq pt_th (polar pt (/ (* gis pi) 200) di)) Il doit y avoir un problème avec le pi, ou autre mais je ne vois vraiment pas.... Merci par avance de votre aide.John
(gile) Posté(e) le 10 février 2011 Posté(e) le 10 février 2011 Salut, La fonction polar ne tient pas compte de la valeur des variables AUNITS, ANGDIR, ANGBASE. Elle fonctionne toujours avec des radians, dans le sens trigonométrique, et le 0 à l'est (axe X). Gilles Chanteau - gileCAD - GitHub Développements sur mesure pour AutoCAD
didier Posté(e) le 10 février 2011 Posté(e) le 10 février 2011 coucou si tu nous disait on tu veux en arriveret surtout de quoi tu pars un fichier excel ?une géobase ?autre ? et quel rendu tu souhaites ? avec ces éléments, et le gisement de cerveaux de CadXPça va le faire les gisements ça me connait (sans forfanterie) amicalement Éternel débutant... Mon site perso : Programmer dans AutoCAD
chris_mtp Posté(e) le 10 février 2011 Auteur Posté(e) le 10 février 2011 Merci d'avance pour vos réponses aussi rapide. Je pense que Gile a trouvé la solution.Didier, moi aussi je suis géomètre. Pour ce lisp, je pars d'un fichier excel, d'une feuille où sont stockées des coordonnées XYZ.A partir de cette feuille, je fais une liste de mes points et je calcule les gisements de la station vers les points rayonnées, jusque là pas de problèmeEnsuite, sous Autocad, je trace plusieurs cercles de rayon différents qui représentent des distances fixes 100m 200m .... jusqu'à 1000m et je trace des polylignes de ma station vers les points calculées. Seulement, je veux pouvoir insérer mon graphe n'importe où dans mon dessin d'où la neccessité de recalculer les gisements pour avoir le même tracé que si le centre de mon graphe correspondait au coordonnées de ma station Je vais voir si je m'en sors sinon je reviens vers vous.Merci encore. John
chris_mtp Posté(e) le 10 février 2011 Auteur Posté(e) le 10 février 2011 J'ai pu trouver une solution avec setq gis (- 500 gis)) et ca marche nickel apparemmentMerci Gile Didier John
didier Posté(e) le 10 février 2011 Posté(e) le 10 février 2011 coucou moi aussi je suis géomètre désolé j'ai pas de vaccin ;) s'il te plaît, passe moi un MP, je te filerai mon mailça m'intéresse de voir le résultat en dwg si jamais je peux apporter mon grain de sel amicalement Éternel débutant... Mon site perso : Programmer dans AutoCAD
lili2006 Posté(e) le 10 février 2011 Posté(e) le 10 février 2011 Bonjour à toutes et tous, Pourquoi ne pas traiter en coordonnées rectangulaires ? De plus, pour le calcul des points rayonnés, le rattachement de ceux-ci se fait depuis le Gom issus des branches encadrantes de la station (en cas de polygonation, ce qui n'est peut-être pas ton cas,...), comment peut-tu faire ça en polaire depuis AutoCAD ? Je pose la question car je serai également intéressé pour montrer à mes étudiants, mais je n'ai pas trouvé de parade "rapidement" exécutable,... Merci d'avance, Civil 3D 2025 - COVADIS_18.3b https://www.linkedin...3%ABt-95313341/
chris_mtp Posté(e) le 10 février 2011 Auteur Posté(e) le 10 février 2011 Bonjour Lilli Je dois recalculer les coordonnées rectangulaires de mes points rayonnés car je veuxinsérer mon graphe n'importe où dans mon dessin d'où la nécessité de recalculer les gisements Les coordonnées rectangulaires des points sont déjà calculés par V0.En polaire avec Autocad, c'est (setq pt_di (polar pt (/ (* (- 500 gis) pi) 200) di)) avec gi le Gisement en grade et di la distance horizontale, le Z ne m'interresse pas dans ce cas de figure. En esperant avoir répondu à tes questions John
chris_mtp Posté(e) le 10 février 2011 Auteur Posté(e) le 10 février 2011 Didier, je suis perducomment on fait pour envoyer un MP dans CAdxp ?Je ne retrouve plus le truc
lili2006 Posté(e) le 10 février 2011 Posté(e) le 10 février 2011 Re, Ok ! Merci de ta réponse, Comment te sers-tu de cette ligne ? Chez moi : Commande: (setq pt_di (polar pt (/ (* (- 500 gis) pi) 200) di)) ; erreur: type d'argument incorrect: numberp: nil Et ne serais-til pas plus intéressant ici de passer par une matrice de changement de base ? (Translations et rotation éventuelle) ? Merci d'avance, Civil 3D 2025 - COVADIS_18.3b https://www.linkedin...3%ABt-95313341/
lili2006 Posté(e) le 10 février 2011 Posté(e) le 10 février 2011 Re, comment on fait pour envoyer un MP dans CAdxp ? Quand le membre en question est en ligne, je passe par la liste des membres en ligne(à droite sur la page d'accueil), puis clic sur le membre et envoyer un message privé. Tu te retrouves alors, par exemple pour Didier, sur cette page Civil 3D 2025 - COVADIS_18.3b https://www.linkedin...3%ABt-95313341/
chris_mtp Posté(e) le 10 février 2011 Auteur Posté(e) le 10 février 2011 Comment te sers-tu de cette ligne ? Il faut une valeur à di, à gis et les coordonnées de la station sous forme de liste de point du type (setq pt (list "X station" "Y station" "Z si nécessaire ou 0")) et le resultat donne les coordonnes de ton point rayonnes. Le changement de base est inutile dans mon cas. [Edité le 10/2/2011 par chris_mtp]
lili2006 Posté(e) le 10 février 2011 Posté(e) le 10 février 2011 Re, insérer mon graphe n'importe où dans mon dessin d'où la nécessité de recalculer les gisements L'idée du changement de base permet d'éviter de recalculer les gisements, non ? Pour le reste, merci je vais regarder dans le WE,.. Civil 3D 2025 - COVADIS_18.3b https://www.linkedin...3%ABt-95313341/
chris_mtp Posté(e) le 10 février 2011 Auteur Posté(e) le 10 février 2011 Oui en effet mais dans mon cas inutiletu y tiens à ton changement de base lilli
lili2006 Posté(e) le 10 février 2011 Posté(e) le 10 février 2011 Re, tu y tiens à ton changement de base lilli Pas du tout, j'essaye juste de comprendre ta démarche et je dois dire que je n'ai pas encore compris, ;) Sur un logiciel de topo comme covadis, lorsque l'on à ce besoin, c'est ce que l'on fait (changement de base en planimétrie) avec un coefficient de mise à l'échelle de 1 si c'est en système local (systèmes de départ et d'arrivée) et un module général de transformation si c'est pour passer sur un système de projection. Ce sont juste des interrogations de ma part afin moi aussi d'élargir les possibilités de répondre à ce besoin,c'est tout ! :P Civil 3D 2025 - COVADIS_18.3b https://www.linkedin...3%ABt-95313341/
(gile) Posté(e) le 10 février 2011 Posté(e) le 10 février 2011 J'ai pu trouver une solution avec setq gis (- 500 gis)) et ca marche nickel apparemmentMerci Gile Didier John (- 100 gis) aurait suffi, il s'agit en fait de soustraire (parce que ANGDIR = 0) l'angle à la valeur de ANGBASE (ici avant conversion en radians). Cette formule ne fonctionnera donc qu'avec le paramètrage des géomètres (AUNITS = 2, ANGDIR = 1, ANGBASE = 100gr ou 0.785398rd). On peut définir une fonction 'polar' spéciale qui prend en compte tous les paramètres angulaires courants avec laquelle l'argument 'angle' est exprimé en unités angulaire courante et qui fonctionne quels que soit ces paramètres : ;; polarSpecial (gile) ;; Comme la fonction native polar mais avec l'angle spécifié en unités angulaires courantes. ;; Prend en compte des valeurs courantes des variables système AUNITS, ANGDIR et ANGBASE. (defun polarSpecial (pt ang dist) (polar pt (angtof (rtos ang 2 16)) dist) ) Gilles Chanteau - gileCAD - GitHub Développements sur mesure pour AutoCAD
chris_mtp Posté(e) le 10 février 2011 Auteur Posté(e) le 10 février 2011 Bon alors on va aller un peu plus loin dans ce cas, cette routine intervient dans le cas d'un releve de maques effectué par la méthode d'horizon. Si par exemple au lieu de mes distances, je désire savoir quels sont les angles d'élevation de mes obstacles et les représenter sur un graphe par exemple, je peux le faire très bien comme çàun graphe circulaire de ce type http:// http://www.cijoint.fr/cjlink.php?file=cj201102/cijM9gjkks.jpg Je parle de graphe pour l'élevation mais je peux aussi faire ce graphe avec des différentes de hauteur ou des distances ou autres............
lili2006 Posté(e) le 10 février 2011 Posté(e) le 10 février 2011 Re, Ah, OK ! J'y vois beaucoup plus clair maintenant,... Merci pour ta réponse chris_mtp Civil 3D 2025 - COVADIS_18.3b https://www.linkedin...3%ABt-95313341/
chris_mtp Posté(e) le 10 février 2011 Auteur Posté(e) le 10 février 2011 Gile je viens d'essayer ta fonction et à vrai dire je ne sais pas comment s'en servirSi je l'utilise tous mes points sont mal orientés.Par contre, si je paramètre le ANGBASE à 300gr ou à 200 ou même à 0j'ai le même resultat Si je mets dans ta fonction un angle en grade comme les unités de mon dessin, le point est erroné.
(gile) Posté(e) le 10 février 2011 Posté(e) le 10 février 2011 Avec polarSpecial, tu spécifies l'angle comme tu l'entrerais en ligne de commande pour entrer des coordonnées polaires. C'est la fonction angtof qui converti l'angle en radian en intégrant les paramètres ANGBASE et ANGDIR. Quelques exemples avec AUNITS = 2, ANGDIR = 1, ANGBASE = 100gr, le point de base à 0,0, une distances de 1 et quelques angles aux valeurs trigonométriques remarquables : _$ (polarspecial '(0. 0. 0.) (/ 100. 3.) 1.)(0.5 0.866025 0.0)_$ (polarspecial '(0. 0. 0.) 50. 1.)(0.707107 0.707107 0.0)_$ (polarspecial '(0. 0. 0.) 100. 1.)(1.0 0.0 0.0)_$ (polarspecial '(0. 0. 0.) 150. 1.)(0.707107 -0.707107 0.0) Gilles Chanteau - gileCAD - GitHub Développements sur mesure pour AutoCAD
chris_mtp Posté(e) le 10 février 2011 Auteur Posté(e) le 10 février 2011 Merci Gileca marche en effet
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