Aller au contenu

ARTBD


Messages recommandés

Posté(e)

BONSOIR

je cherche a écrire comme ds le temps les donnees de courbe ds un tableau au sommet se cette dernieres. ceci à partir de covadis ou de piste du setra.

angle, rayon ,tengente, bissectrice, développement et les donnees de clothoides.

 

lisp ou n'importe quelle routine fera l'affaire

 

merci

Posté(e)

Coucou

 

je n'ai pas compris la même chose que toi, Lili2006,

comme quoi !!

 

je pense que la solution viendra plutôt en utilisant

la norme allemande dans la cotation de l'axe en plan.

 

cette option n'est accessible que par Autopiste, il me semble

mais j'accepte la contradiction.

 

exemple de cotation entre un AD et une clotho:

 

http://images.imagehotel.net/21zreeyn5a_tn.png

amicalement

Posté(e)

salut a toutes et a tous

 

salut lili

salut didier

 

ARTBD signifie Angle Rayon Tengente Bissectrice et D Developpent

 

voila c'est tout simple. mais je veux les ecrire sur le t plan

 

a+[Edité le 1/11/2009 par haithem]

 

[Edité le 1/11/2009 par haithem]

Posté(e)

salut a toutes et a tous

 

salut didier

 

je n'ai pas autopiste malheureusement et je ne suis pas pas tres fort en lisp

 

alors je vais manuellement le faire en attendant que quelqu'un s'y interresse.

 

merci pour tout a tous les deux didier et lili

 

merci encore

 

a+

Posté(e)

Bonjour,

Pas de Covadis à la maison le week-end donc je ne voulais pas dire de bétises :P

mais il me semblait qu'il y avait quelque chose dans le module "Projet linéaire par profil type"

et c'est "coter l'axe" (_CovaRout2CotaAxe) :)

Ce n'est pas vraiment une cotation de l'épure de l'axe "à l'ancienne" mais ça y ressemble.

Si ça peut t'aider...

Alain.

 

Ily a aussi le listing de l'axe (_CovaRout2InfosAxe)

 

[Edité le 2/11/2009 par kallain]

Posté(e)

Bonsoir a toutes et a tous

 

Bonsoir kallain

 

oui, vous avez trouver le mot juste, c'est une cotation a l'ancienne.

 

j'ai vu la cotation d'axe sur covadis mais c'est insufisant d'autant plus que c'est demander par le bureau d'etude pour lequel je travaille.

 

merci pour tout

 

a+

  • 1 mois après...
Posté(e)

Bonjour,

 

Je réveille ce topic car je viens de répondre à un souhait sur un forum US concernant les paramètres ARTDB.

A= Angle au sommet des tangentes

R= Rayon de l'arc

T= longueur des Tangentes

D= longueur Développée de l'arc

B= longueur de la contre-flèche (bissectrice de l'angle A comprise entre la courbe et le sommet des tangentes

 

Voici le code qui a été proposé (fonctionne avec une collection d'arc/polyarc):

 

(vl-load-com)
(defun c:ARTDB ( / js n AcDoc Space ename obj pr nb typ_obj oldim oldlay a_base a_dir
pt_start pt_end pt_cen rad alpha pt_vtx dist_start dist_end seg_len seg_bulge)
 (defun grdraw-id_arc ( / )
   (grdraw (trans pt_start 0 1) (trans pt_vtx 0 1) 1)
   (grdraw (trans pt_vtx 0 1) (trans pt_end 0 1) 1)
   (grdraw (trans pt_start 0 1) (trans pt_cen 0 1) 3)
   (grdraw (trans pt_cen 0 1) (trans pt_end 0 1) 3)
 )
 (defun add_mt_arc ( / ins_txt h_t)
   (initget 9)
   (setq ins_txt (getpoint (trans pt_cen 0 1) "\nPoint d'insertion des informations de l'arc?: "))
   (initget 6)
   (setq h_t (getdist ins_txt (strcat "\nTaille du texte <" (rtos (getvar "textsize")) ">: ")))
   (if (null h_t) (setq h_t (getvar "textsize")) (setvar "textsize" h_t))
   (vla-addMtext Space
     (vlax-3d-point (trans ins_txt 1 0))
     0.0
     (strcat
       "{\\fArial Narrow|b0|i0|c0|p34;"
       "A = " (angtos (- pi (* 2 alpha)) 0 4) "%%d"
       "\\PR = " (rtos rad 2 3)
       "\\PT = " (rtos (distance pt_start pt_vtx) 2 3)
       "\\PD = " (rtos seg_len 2 3)
       "\\PB = " (rtos (- (distance pt_cen pt_vtx) (abs rad)) 2 3)
       "}"
     )
   )
   (entmod
     (append
     (vl-remove-if
       (function
         (lambda (x)
           (or (member (car x) '(90 63 421 45))
             (< 419 (car x) 440)
           )
         )
       )
       (entget (entlast))
     )
     (list
       '(90 . 1)
       '(63 . 41)
       '(421 . 16770196)
       '(45 . 1.5)
     )
     )
   )
   (entupd (entlast))
 )
 (princ "\nSélectionner des Arcs/PolyArcs .")
 (setq
   js
   (ssget
     '((-4 . "        (-4 . "          (0 . "POLYLINE")
         (-4 . "            (-4 . "&") (70 . 126)
         (-4 . "NOT>")
       (-4 . "AND>")
       (0 . "LWPOLYLINE,ARC")
       (-4 . "OR>"))
   )
   n -1
 )
 (cond
   (js
     (setq
       AcDoc (vla-get-ActiveDocument (vlax-get-acad-object))
       Space
         (if (= 1 (getvar "CVPORT"))
           (vla-get-PaperSpace AcDoc)
           (vla-get-ModelSpace AcDoc)
         )
       nb 0
     )
     (cond
       ((null (tblsearch "LAYER" "Info ARTDB des Arcs"))
         (vlax-put (vla-add (vla-get-layers AcDoc) "Info ARTDB des Arcs") 'Color "5")
       )
     )
     (setq
       oldim (getvar "dimzin")
       oldlay (getvar "clayer")
       a_base (getvar "ANGBASE")
       a_dir (getvar "ANGDIR")
     )
     (setvar "dimzin" 0) (setvar "clayer" "Info ARTDB des Arcs")
     (setvar "ANGBASE" 0) (setvar "ANGDIR" 0)
     (repeat (sslength js)
       (setq
         ename (ssname js (setq n (1+ n)))
         obj (vlax-ename->vla-object ename)
         pr -1
         nb 0
       )
       (setq typ_obj (vla-get-ObjectName obj))
       (if (eq typ_obj "AcDbArc")
         (progn
           (setq
             pt_start (vlax-get obj 'StartPoint)
             pt_end (vlax-get obj 'EndPoint)
             pt_cen (vlax-get obj 'Center)
             rad (vlax-get obj 'Radius)
             alpha (* (vlax-get obj 'TotalAngle) 0.5)
             seg_len (vlax-get obj 'ArcLength)
             pt_vtx (polar pt_cen (+ (vlax-get obj 'StartAngle) alpha) (+ rad (* rad (1- (/ 1 (cos alpha))))))
             nb (1+ nb)
           )
           (grdraw-id_arc)
           (add_mt_arc)
         )
         (repeat (fix (vlax-curve-getEndParam obj))
           (setq
             dist_start (vlax-curve-GetDistAtParam obj (setq pr (1+ pr)))
             dist_end (vlax-curve-GetDistAtParam obj (1+ pr))
             pt_start   (vlax-curve-GetPointAtParam obj pr)
             pt_end (vlax-curve-GetPointAtParam obj (1+ pr))
             seg_len (- dist_end dist_start)
             seg_bulge (vla-GetBulge obj pr)
           )
           (if (not (zerop seg_bulge))
             (progn
               (setq
                 rad (/ seg_len (* 4.0 (atan seg_bulge)))
                 alpha (+ (angle pt_start pt_end) (- (* pi 0.5) (* 2.0 (atan seg_bulge))))
                 pt_cen (polar pt_start alpha rad)
                 pt_vtx (polar pt_start (- alpha (* pi 0.5)) (* rad (/ (sin (* 2.0 (atan seg_bulge))) (cos (* 2.0 (atan seg_bulge))))))
                 alpha (if (< (* 2.0 (atan seg_bulge)) 0) (- pi (* 2.0 (atan seg_bulge))) (* 2.0 (atan seg_bulge)))
                 nb (1+ nb)
               )
               (grdraw-id_arc)
               (add_mt_arc)
             )
           )
         )
       )
     )
     (setvar "dimzin" oldim) (setvar "clayer" oldlay)
     (setvar "ANGBASE" a_base) (setvar "ANGDIR" a_dir)
   )
 )
 (prin1)
)

[Edité le 11/3/2010 par bonuscad]

 

[Edité le 17/1/2011 par bonuscad]

Choisissez un travail que vous aimez et vous n'aurez pas à travailler un seul jour de votre vie. - Confucius

Posté(e)

Bonsoir

 

qu'appelles t-on "polyarc" ?

 

Les arcs créés via la commande "A" de la polyligne ?

Je l'entends comme toi... la routine traitera tous les arcs, et seulement ceux-ci, contenus dans la polyligne.

 

Pourquoi "B" peut avoir une valeur négative ?

En contrôlant tes dires, je me suis aperçu d'un "schisme" sur le calcul de la contre flèche, du certainement à la valeur négative possible du rayon (si inverse au sens trigo).

Je l'ai calculé d'une autre manière plus simple et plus sure.

Code mis à jour.

 

Merci de tes observations.

Choisissez un travail que vous aimez et vous n'aurez pas à travailler un seul jour de votre vie. - Confucius

Posté(e)

Re,

 

quelques tests rapides sur des exos que j'ai calculés à "la main" semble conforme,...

 

a confirmer cependant par d'autres, ;)

 

Merci bonuscad, vraiment une superbe routine,..

 

(Heu je parle de son utilité, je ne suis bien sûr pas encore assez "bien placé" pour juger de l'écriture de celle-ci,... :cool: )

 

"schisme"

 

Qu'est-ce donc ?

Civil 3D 2025 - COVADIS_18.3b

https://www.linkedin...3%ABt-95313341/

Posté(e)

citation extraite du message original:

"schisme"

 

 

 

Qu'est-ce donc ?

 

Le vrai sens de ce mot est "cassure/séparation" concernant des idéologies religieuses.

Je l'ai employé que pour son sens Étymologie grec.

 

Dans mon parlé de tous les jours, c'est quand j'ai une "cassure/séparation" dans la compréhension de mon raisonnement. Mes neurones lâchent.. :P

 

http:// http://fr.wikipedia.org/wiki/Schisme

Choisissez un travail que vous aimez et vous n'aurez pas à travailler un seul jour de votre vie. - Confucius

  • 4 semaines après...
  • 1 mois après...
Posté(e)

Salut

j ai utilisé ton lisp, c est super cool sauf que la valeur de l angle est erronée ou bien je ne sais pas!! :angel:

 

quand je la cote ca donne un truc different!!

Posté(e)

sauf que la valeur de l angle est erronée

 

Effectivement avec les arc de polylignes l'angle des tangentes au sommet est faux :(

 

Si je décompose la polyligne et ré-applique la routine aux arcs les angles deviennent bon.

 

Je tâcherai de corriger ce bug dès que j'aurais un moment

 

Merci du retour.

 

Choisissez un travail que vous aimez et vous n'aurez pas à travailler un seul jour de votre vie. - Confucius

Posté(e)

Voilà c'est fait, le code ci-dessus a été mis à jour.

 

D'après mes tests cela à l'air correct, cela n'empêche pas de vérifier les résultats, c'est comme ça qu'on découvre les bugs ;)

 

Merci encore à toi gaara et bon usage!

Choisissez un travail que vous aimez et vous n'aurez pas à travailler un seul jour de votre vie. - Confucius

Posté(e)

Bonjour, J'utilise jamais les lisp et là je voudrais essayé.

J'ai enregistré le code dans le bloc note et enregistré celui ci en cotaxe.lsp

Seulement je connais pas le nom pour lancer le lisp dans autocad

comment dois je faire

 

Merci

Autocad Map 3D 2018

Covadis Autopiste version 17.0e

Mensura Génius V8

Posté(e)

Bonjour,

 

Menu Outils/charger une application

 

tu charges ton lsp

 

puis au clavier tu tapes

 

ARTDB

 

Cordialement

Thierry Garré

 

Géorail-Covadis-Autopiste-Autocad-Autocad Map-Infraworks 360- Navisworks -Recap

Posté(e)

Bonsoir Bonuscad

Pur ma part j'utilise ce lisp depuis peu et je l'ai adapté selon mes besoins.

Faut dire que je travaille en degré.

 

 (strcat
"{\\fComic Sans Ms|b0|i0|c0|p34;"
;"\\PPI = " (no)
"\\PAngle = " (angtos ( / seg_len rad) ( getvar "AUNITS")  4 )
"\\PRay = " (rtos rad 2 3)
"\\PTg = " (rtos (distance pt_start pt_vtx) 2 3)
"\\PLc = " (rtos seg_len 2 3)
"\\PFL = " (rtos (- (distance pt_cen pt_vtx) (abs rad)) 2 3)
"\\PCorde = "(rtos ( distance pt_start pt_end) 2 3)
"}"

 

Toutes fois je demandais si ce serait possible de reduire quelque peu la garndeur de l'estompage arrière des données et d'y introduire un rectangle pour clôturer les données?

 

Merci de ton attention.

A+

Acadnadien

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 compte

Se connecter

Vous avez déjà un compte ? Connectez-vous ici.

Connectez-vous maintenant
×
×
  • Créer...

Information importante

Nous avons placé des cookies sur votre appareil pour aider à améliorer ce site. Vous pouvez choisir d’ajuster vos paramètres de cookie, sinon nous supposerons que vous êtes d’accord pour continuer. Politique de confidentialité