CADxp: Comment faire pour dessiner un escalier - CADxp

Aller au contenu

  • 2 Pages +
  • 1
  • 2
  • Vous ne pouvez pas commencer un sujet
  • Vous ne pouvez pas répondre à ce sujet

Comment faire pour dessiner un escalier

#1 L'utilisateur est hors-ligne   jifi 

  • ceinture noire 1er dan
  • Groupe : Membres
  • Messages : 570
  • Inscrit(e) : 22-mars 05
  • LocationLausanne

Posté 09 septembre 2005 - 07:29

Salut,

Dans le cadre du cours AutoCAD que je suis entrain de préparer, j'aimerais intégrer le dessin d'un escalier.

N'étant pas dessinateur en bâtiment, j'ignore les méthodes et les règles à respecter.

Quequ'un pourrait-il me renseigner sur les différentes méthodes à adopter.

Existe-t-il des documents sur le web ?

Merci d'avance

A+
Jean-Philippe - Formateur / Dessinateur sur AutoCAD et MEP http://www.git-cad.ch
0

#2 L'utilisateur est hors-ligne   (gile) 

  • ceinture rouge et blanche 8em dan
  • Groupe : Moderateurs
  • Messages : 9652
  • Inscrit(e) : 02-septembre 05

Posté 09 septembre 2005 - 08:04

Salut,

Je n'ai pas beaucoup de temps aujourd'hui, mais voici quelques" règles" d'usage :

Sur la ligne de foulée (au milieu de l'emmarchement en général) le giron (distance en plan d'un nez de marche à l'aplomb du nez suivant) est régulier.

Pour le rapport entre giron (G) et hauteur (H) suivant les auteurs :

410 mm < G+H < 470 mm
ou
600 mm < G+2H < 650 mm

Les valeurs inférieures sont choisies pour les escaliers dits "de service" les supérieures pour les grands escaliers plus confortables, les hauteurs de marches n'excédant généralement pas un maximum de 200 mm pour les premiers et un minimum de 150 pour les seconds.

Ce ne sont que des "règles", et il en existe sûrement d'autres, que les circonstances amènent parfois à transgresser.

Pour les escaliers balancés le tracé se fait par la jonction des points représentants les girons réguliers sur la ligne de foulée avec ceux placés sur une parallèle à cette ligne (contre un limon) divisée suivant une progression arithmétique qui d'inverse au niveau de la marche servant au réglage du balancement. On le trace traditionnellement par la méthode du trapèze de proportion.

Je suis en train de peaufiner un petit LISP pour faire cette division, le voici dans son état actuel (nouvelle version):

;;; Balancement - Gilles Chanteau 10/09/05

;;;

;;; Application de la méthode graphique dite du trapèze de proportions.

;;;

;;; Place des points espacés suivant deux progression arthmétiques inversées sur une

;;; polyligne, arc ou spline (une parallèle de la ligne de foulée) en fonction :

;;; - de la distance entre le début et la fin de la partie de l'objet à diviser

;;;  (de la première marche balancée à la dernière)

;;; - d'une largeur définie (le giron moyen)

;;; - du nombre de divisions (le nombre de marches a balancer) de part et d'autre

;;;   du point d'inversion.

;;; Le point d'inversion est spécifiez par l'utilisateur ou calculé automatiquement

;;; en proportion du nombre de marches balancées de part et d'autre de ce point.



(vl-load-com)


;;; bal_err Redéfinition de *error*


(defun bal_err (msg)

  (if (or

	(= msg "Fonction annulée")

	(= msg "quitter / sortir abandon")

      )

    (princ)

    (princ (strcat "\nErreur: " msg))

  )

  (vla-endundomark AcDoc)

  (setq	*error*	m:err

	m:err nil

  )

  (princ)

)


;;; Fonction principale


(defun c:balancement

		     (/	     AcDoc  ModSp  obj	  pt1	 pt2	gir

		      nb1    nb2    dist1  dist2  rais1	 rais2	count

		      d_pt1  d_pt2  pt_inv d_pti

		     )

  (setq	AcDoc	(vla-get-ActiveDocument (vlax-get-acad-object))

	ModSp	(vla-get-ModelSpace AcDoc)

	m:err	*error*

	*error*	bal_err

  )

  (vla-StartUndoMark AcDoc)

  ;; Entrées utilisateurs

  (while

    (or

      (not obj)

      (not

	(member

	  (vla-get-ObjectName (setq obj (vlax-ename->vla-object obj)))

	  (list	"AcDbArc" "AcDbPolyline" "AcDbSpline" "AcDbEllipse")

	)

      )

    )

     (setq obj (car

		 (entsel

		   "\nSélectionnez le segment à diviser: "

		 )

	       )

     )

  )

  (while

    (not

      (setq

	d_pt1 (vlax-curve-getDistAtPoint

		obj

		(setq

		  pt1 (getpoint "\nPoint de départ du balancement: ")

		)

	      )

      )

    )

  )

  (initget 7)

  (setq	nb1

	 (getint

	   "\nNombre de marches jusqu'au point d'inversion: "

	 )

  )

  (while (not

	   (setq d_pt2 (vlax-curve-getDistAtPoint

			 obj

			 (setq

			   pt2 (getpoint "\nPoint de fin du balancement: ")

			 )

		       )

	   )

	 )

  )

  (if (equal pt1 pt2)

    (progn

      (princ

	"\nErreur: Le point de départ et le point de fin ne peuvent être confondus."

      )

      (exit)

    )

  )

  (initget 7)

  (setq

    nb2	(getint

	  "\nNombre de marches depuis le point d'inversion: "

	)

  )

  (initget 7)

  (setq gir (getdist "\nGiron moyen: "))

  ;; Redéfinition des variables suivant le sens de création de l'objet à diviser

  (if (< d_pt2 d_pt1)

    (setq temp	pt1

	  pt1	pt2

	  pt2	temp

	  temp	d_pt1

	  d_pt1	d_pt2

	  d_pt2	temp

	  temp	nb1

	  nb1	nb2

	  nb2	temp

	  temp	nil

    )

  )

  ;; Positionnement du point d'inversion (spécifié par l'utilisateur ou

  ;; calculé proportionnellement au nombres de marches spécifiés)

  (if

    (setq

      pt_inv (getpoint

	       "\nPoint d'inversion du balancement ou < Automatique >: "

	     )

    )

     (while (not (setq d_pti (vlax-curve-getDistAtPoint obj pt_inv)))

       (setq pt_inv

	      (getpoint

		"\nLe point doit être situé sur l'objet à diviser.\nEssayez encore: "

	      )

       )

     )

     (setq pt_inv

		  (vlax-curve-getPointAtDist

		    obj

		    (+ d_pt1 (* (/ (float nb1) (+ nb1 nb2)) (- d_pt2 d_pt1)))

		  )

	   d_pti  (vlax-curve-getDistAtPoint obj pt_inv)

     )

  )

  ;; Calculs des longueurs à diviser et des raisons respectives

  (setq	dist1 (- d_pti d_pt1)

	dist2 (- d_pt2 d_pti)

  )

  (if (or (<= (/ (+ gir dist1) (1+ nb1)) (/ gir 2))

	  (<= (/ (+ gir dist2) (1+ nb2)) (/ gir 2))

      )

    (progn

      (princ

	"\nErreur: Disproportion dans les données."

      )

      (exit)

    )

  )

  (setq	rais1 (/ (- gir (/ (+ gir dist1) (1+ nb1))) (/ nb1 2.0))

	rais2 (/ (- gir (/ (+ gir dist2) (1+ nb2))) (/ nb2 2.0))

	count 0


  )

  ;; Création des points

  (vla-addPoint

    ModSp

    (vlax-3d-point pt1)

  )

  (repeat nb1

    (setq count	(1+ count)

	  d_pt1	(+ d_pt1 (- gir (* count rais1)))

    )

    (vla-addPoint

      ModSp

      (vlax-3d-point (vlax-curve-getPointAtDist obj d_pt1))

    )

  )

  (setq count nb2)

  (repeat count

    (setq d_pt1 (+ d_pt1 (- gir (* count rais2))))

    (vla-addPoint

      ModSp

      (vlax-3d-point (vlax-curve-getPointAtDist obj d_pt1))

    )

    (setq count (1- count))

  )

  (vla-EndUndoMark AcDoc)

  (setq	*error*	m:err

	m:err nil

  )

  (princ)

)

 

Suit un petit dessin explicatif.[Edité le 10/9/2005 par (gile)]

:exclam: [surligneur]Erratum : [/surligneur]

À la place de :

Citation

600 mm < G+2H < 650 mm

Lire : 600 mm < G+2H < 640 mm [Edité le 12/9/2005 par (gile)][Edité le 29/11/2005 par (gile)]

[Edité le 29/11/2005 par (gile)]
0

#3 L'utilisateur est hors-ligne   (gile) 

  • ceinture rouge et blanche 8em dan
  • Groupe : Moderateurs
  • Messages : 9652
  • Inscrit(e) : 02-septembre 05

Posté 09 septembre 2005 - 08:15

Voilà le dessin (nouvelle version):

Image IPB

Encore une fois, il s'agit là d'une méthode plus que d'une "règle", on est la plupart du temps amené à "tricher" la vue en plan pour optimiser le tracé des limons qui en dépend.

Petite précision, comme sur cet exemple, on peut donner un peu de progressivité aux premières marches pour le confort (ici les 3 premières)

En espérant avoir répondu à ta demande.

A plus.

[Edité le 10/9/2005 par (gile)]
0

#4 L'utilisateur est hors-ligne   jifi 

  • ceinture noire 1er dan
  • Groupe : Membres
  • Messages : 570
  • Inscrit(e) : 22-mars 05
  • LocationLausanne

Posté 09 septembre 2005 - 12:28

Salut (gile)

Merci déjà pour ces informations,

Je vais regarder ça de plus près ce week-end.

A+
Jean-Philippe - Formateur / Dessinateur sur AutoCAD et MEP http://www.git-cad.ch
0

#5 L'utilisateur est hors-ligne   willfrca 

  • ceinture verte
  • Groupe : Membres
  • Messages : 97
  • Inscrit(e) : 23-octobre 03

Posté 09 septembre 2005 - 13:23

Bjr ,

Autre methode assez simple et efficace ( a l'ancienne ) :

Lorsque l emprise au sol de l'escalier est dessinée , copier la ligne de foulee a 10 cm de l interieur de l'escalier . Diviser les 2 lignes de foulee de la largeur de marches souhaitées puis relier les points obtenus entre eux .

Et voilouuuuuuuu un beau escalier balancé .

Bon week end

Will

0

#6 L'utilisateur est hors-ligne   (gile) 

  • ceinture rouge et blanche 8em dan
  • Groupe : Moderateurs
  • Messages : 9652
  • Inscrit(e) : 02-septembre 05

Posté 10 septembre 2005 - 00:14

Re,

À propos du balancement des escaliers, willfrca, en donnant une autre méthode, montre bien qu'il n'y a pas de règles définitives. Chaque méthode a ses défaut et ses qualités et en fin de compte c'est souvent un mélange d'empirisme et de feeling qui met fin aux hésitations.

De toutes façons, le résultat du balancement n'apparait pas toujours clairement sur la vue en plan. C'est en traçant les élévations que l'on voit l'incidence du balancement sur les courbes des limons qui, en général doivent suivre celles des nez et des fonds de marche, et c'est souvent là que de manière "dialectique" on retouche l'un et/ou l'autre. le tout bien sûr sans oublier les contraintes de fabrication.

Par exemple, la méthode proposée par willfrca (si je l'ai bien comprise), outre le fait qu'elle est plus facile à mettre en oeuvre, présente l'avantage de générer des limons intérieurs quasiment rectilignes (économie de matière), mais ce, à condition que (presque) toutes les marches soient balancées. Si elle est utilisée en continuité d'une série de marches droites elle peut provoquer une "cassure" disgracieuse dans la ligne des limons (à essayer).

Celle que je proposais est loin d'être sans défaut. Elle est ancienne aussi, sans le LISP pas très pratique à mettre en oeuvre et ne donne pas toujours des résultats immédiatement satisfaisant. Ce qui me plait dans cette méthode c'est que c'est un bon exemple de résolution graphique.

Illustration :
Image IPB

Jifi, si tout çà t'inspire d'autres questions, n'hésite pas...

[Edité le 10/9/2005 par (gile)]
0

#7 L'utilisateur est hors-ligne   (gile) 

  • ceinture rouge et blanche 8em dan
  • Groupe : Moderateurs
  • Messages : 9652
  • Inscrit(e) : 02-septembre 05

Posté 10 septembre 2005 - 11:43

Pour ne pas rendre ce fil plus long que de raison, j'ai édité mes premiers messages en changeant le LISP pour une version plus aboutie (division de toute la partie balancée en une seule commande et controle des entrées utilisateur) ainsi que le dessin explicatif.

Aplus
0

#8 L'utilisateur est hors-ligne   rebcao 

  • ceinture rouge et blanche 8em dan
  • Groupe : Membres
  • Messages : 5963
  • Inscrit(e) : 25-août 04
  • LocationColmar

Posté 11 septembre 2005 - 12:02

Merci à tous,

un peu de technique ça fait du bien, ça pourra me servir également pour compléter mon catalogue d' exercices.

Christian
Formateur, Consultant Expert AutoCAD Indépendant, Formation AutoCAD, télécharger des Supports de Cours AutoCAD, des Outils AutoCAD...
cad123 @ wanadoo.fr (enlever les espaces de part et d'autre de @)
0

#9 L'utilisateur est hors-ligne   (gile) 

  • ceinture rouge et blanche 8em dan
  • Groupe : Moderateurs
  • Messages : 9652
  • Inscrit(e) : 02-septembre 05

Posté 11 septembre 2005 - 17:07

La suite ...

Image IPB

Après avoir ajouté sur la vue en plan les saillies de nez (recouvrement généralement autour de 40 mm) et l'épaisseur de contre-marches (absentes sur le dessin), le tracé des limons en élévation se fait par rabattement des marches (et contre-marches) auxquelles on donne leurs hauteurs respectives et leur épaisseur.

Les rives des limons se tracent en menant une parallèle à la ligne des nez de marches (ou des fonds de marches) à une distance de 40 à 50 mm (le bandeau).

C'est là qu'intervient la "bidouille" : en trichant sur le balancement et/ou sur le paraléllisme du bandeau on va pouvoir "optimiser" la ligne des limons soit pour des raisons esthétiques, soit pour des raisons plus triviales. Dans l'exemple du petit dessin, il n'y aurait pas grand chose à modifier pour que les limons intérieurs soient rectilignes (donc leurs mains courantes aussi), ce qui présenterait un intérêt éconmique évident (matière et main d'oeuvre).

Je pense que tu peux en tirer un exercice assez complèt, tant du point de vue de l'apprentissage d'AutoCAD que de celui du dessin technique et de la vision dans l'espace tout en faisant appel au sens pratique et esthétique de chacun.

A plus.

[Edité le 11/9/2005 par (gile)]
Gilles Chanteau - gileCAD -
Développements sur mesure pour AutoCAD
Image IPB
0

#10 L'utilisateur est hors-ligne   (gile) 

  • ceinture rouge et blanche 8em dan
  • Groupe : Moderateurs
  • Messages : 9652
  • Inscrit(e) : 02-septembre 05

Posté 12 septembre 2005 - 16:58

Et ensuite,

Contour, Extruder, Déplacer, Rotation3D, Aligner, Vuedyn ....

Mais çà, vous connaissez par coeur !

Image IPB
Gilles Chanteau - gileCAD -
Développements sur mesure pour AutoCAD
Image IPB
0

#11 L'utilisateur est hors-ligne   jifi 

  • ceinture noire 1er dan
  • Groupe : Membres
  • Messages : 570
  • Inscrit(e) : 22-mars 05
  • LocationLausanne

Posté 12 septembre 2005 - 20:09

Salut (gile)

Merci encore pour toutes ces précisions :P

Même si je ne comprends pas tous les termes, tout ça est bien détaillé.

C'est excellent pour mon support de cours.

A bientôt.
Jean-Philippe - Formateur / Dessinateur sur AutoCAD et MEP http://www.git-cad.ch
0

#12 L'utilisateur est hors-ligne   (gile) 

  • ceinture rouge et blanche 8em dan
  • Groupe : Moderateurs
  • Messages : 9652
  • Inscrit(e) : 02-septembre 05

Posté 12 septembre 2005 - 20:29

Citation

Même si je ne comprends pas tous les termes


N'hésite pas, demande.
Gilles Chanteau - gileCAD -
Développements sur mesure pour AutoCAD
Image IPB
0

#13 L'utilisateur est hors-ligne   nazemrap 

  • ceinture marron
  • Groupe : Membres
  • Messages : 201
  • Inscrit(e) : 25-septembre 05

Posté 25 septembre 2005 - 19:28

Bonjour.

Répondre sur un forum est une expérience nouvelle pour moi.
Je voulais simplement signaler également la méthode de la herse de balancement souvent pratiquée aussi.
Elle amène à faire les mêmes constats qui sont déjà ennoncés dans les autres réponses.
Il y a souvent besoin de corriger les imperfections (arrivées sur les poteaux) et de vérifier la courbe développée afin de constater qu'il n'y a pas de cassures dans celle-ci.
Toutefois si l'objectif n'est pas la fabrication, cela s'avère suffisant.
Cela me parait un peu long à exposer ici.
J'ai tenté (modestement) de mettre tout cela dans un site, technologie, terminologie, didacticiel, y compris commande vba qui permet de tracer directement un escalier 1/4 tournant balancé en 2D avec ses herse.
Je ne sais pas si j'ai le droit de communiquer cela ici.
Je m'abstiendrais donc, sauf avis contraire.

nazemrap.

0

#14 L'utilisateur est hors-ligne   Patrick 

  • Oeil de lynx
  • Groupe : Moderateurs
  • Messages : 5366
  • Inscrit(e) : 06-novembre 02
  • LocationLyon

Posté 25 septembre 2005 - 19:35

Mais non, il ne faut pas s'abstenir, donne nous l'adresse de ton site!
Image IPBImage IPB
0

#15 L'utilisateur est hors-ligne   (gile) 

  • ceinture rouge et blanche 8em dan
  • Groupe : Moderateurs
  • Messages : 9652
  • Inscrit(e) : 02-septembre 05

Posté 26 septembre 2005 - 20:41

Salut nazemrap,

Je suis vivement intéressé par la manière dont tu as automatisé une herse de balancement. Je ne connais pas le VBA (si ce n'est à travers le peu que je connais de VisualLISP) mais c'est une bonne occasion d'essayer.

En attendant l'adressse de ton site, pour ceux qui ne savent pas ce que c'est, la herse de balancement est une méthode graphique de calcul du balancement des escaliers (comme le trapèze de proportion décrit plus haut). On peut en trouver un exemple ici.
Gilles Chanteau - gileCAD -
Développements sur mesure pour AutoCAD
Image IPB
0

#16 L'utilisateur est hors-ligne   nazemrap 

  • ceinture marron
  • Groupe : Membres
  • Messages : 201
  • Inscrit(e) : 25-septembre 05

Posté 26 septembre 2005 - 21:08

Bonsoir.

Attention !
Mes compétences sont balbutiantes.
La macro est prévue pour une unité d'écran métrique, uniquement un quart tournant.
http://www.premiumwa...om/technaulogis
0

#17 L'utilisateur est hors-ligne   (gile) 

  • ceinture rouge et blanche 8em dan
  • Groupe : Moderateurs
  • Messages : 9652
  • Inscrit(e) : 02-septembre 05

Posté 27 septembre 2005 - 08:18

Super ton site,

Il me semble que çà répond exactement à la demande première de ce fil.

jifi, Christian (rebcao), il est déjà tout prêt votre cours sur le dessin d'un escalier ;)
Gilles Chanteau - gileCAD -
Développements sur mesure pour AutoCAD
Image IPB
0

#18 L'utilisateur est hors-ligne   jifi 

  • ceinture noire 1er dan
  • Groupe : Membres
  • Messages : 570
  • Inscrit(e) : 22-mars 05
  • LocationLausanne

Posté 27 septembre 2005 - 12:36

Salut nazemrap,

Ton site est vraiment SUPER TOP :hallucine: :thumbup:

Merci pour ce lien :heartpump:

Je crois qu'avec tout ça je n'ai effectivement plus de problème pour mon sujet de cours sur les escaliers.

A+
Jean-Philippe - Formateur / Dessinateur sur AutoCAD et MEP http://www.git-cad.ch
0

#19 L'utilisateur est hors-ligne   esbe 

  • ceinture noire 4em dan
  • Groupe : Membres
  • Messages : 2086
  • Inscrit(e) : 21-octobre 04

Posté 27 septembre 2005 - 15:31

Bravo il est super,ton site, trés clair

J 'espère que tu vas le complèter

a bientôt
0

#20 L'utilisateur est hors-ligne   (gile) 

  • ceinture rouge et blanche 8em dan
  • Groupe : Moderateurs
  • Messages : 9652
  • Inscrit(e) : 02-septembre 05

Posté 27 septembre 2005 - 15:49

Il y a un lexique du vocabulaire spécifique aux escalier assez exhaustif ici

Voilà un LISP qui place les points suivant la méthode de la herse de balancement :

Nouvelle version

;;; H_BAL place des points déterminant les collets suivant la méthode de la herse de balancement


(vl-load-com)


;;; bal_err Redéfinition de *error*


(defun bal_err (msg)

  (if (or

	(= msg "Fonction annulée")

	(= msg "quitter / sortir abandon")

      )

    (princ)

    (princ (strcat "\nErreur: " msg))

  )

  (vla-endundomark AcDoc)

  (setq	*error*	m:err

	m:err nil

  )

  (princ)

)


;;; hers_bal Création des points sur un côté


(defun hers_bal	(pt ang col / ptf)

  (setq	l1    (vla-addLine

		ModSp

		(vlax-3d-point pt)

		(vlax-3d-point (polar pt (+ ang (/ pi 2)) 1))

	      )

	ptf   (vlax-safearray->list

		(vlax-variant-value

		  (vla-IntersectWith obj l1 acExtendOtherEntity)

		)

	      )

	ptf   (list (car ptf) (cadr ptf) (caddr ptf))

	d_pt  (vlax-curve-getDistAtPoint obj ptf)

	d_pt0 (vlax-curve-getDistAtPoint obj pt0f)

	foul  (abs (- d_pt d_pt0))

	dist  (distance pt pt0c)

	alpha (atan foul dist)

	beta  (- pi (* 2 alpha))

	compt 1

  )

  (while (< (* compt gir) foul)

    (setq alpha	(atan (* compt gir) dist)

	  d_pt	(/ dist

		   (+ (/ (* (cos alpha) (sin beta)) (sin alpha)) (cos beta))

		)

	  compt	(1+ compt)

    )

    (vla-addPoint ModSp (vlax-3d-point (polar pt ang d_pt)))

    (vla-put-color (vlax-ename->vla-object (entlast)) col)

  )

  (vla-delete l1)

)


;;; Fonction principale


(defun c:h_bal (/ AcDoc	 ModSp	obj    d_pt1  pt1f   d_pt0  pt0f

		  pt1c	 pt2c	pt0c   dist   ang    gir    foul

		  alpha	 beta	compt  d_pt   l0     l1

		 )

  (setq	AcDoc	(vla-get-ActiveDocument (vlax-get-acad-object))

	ModSp	(vla-get-ModelSpace AcDoc)

	m:err	*error*

	*error*	bal_err

  )

  (vla-StartUndoMark AcDoc)

  ;; Entrées utilisateurs

  (while

    (or

      (not obj)

      (not

	(member

	  (vla-get-ObjectName (setq obj (vlax-ename->vla-object obj)))

	  (list	"AcDbArc" "AcDbLine" "AcDbPolyline" "AcDbSpline"

		"AcDbEllipse")

	)

      )

    )

     (setq obj (car

		 (entsel

		   "\nSélectionnez la ligne de foulée: "

		 )

	       )

     )

  )

  (initget 1)

  (setq pt1c (getpoint "\nPoint au premier collet balancé: "))

  (initget 1)

  (setq pt0c (getpoint pt1c "\nPoint à l'angle des limons: "))

  (initget 1)

  (setq pt2c (getpoint pt0c "\nPoint au dernier collet balancé: "))

  (initget 7)

  (setq gir (getdist "\nSpécifiez le giron: "))

  ;; Calculs

  (foreach pt '(pt1c pt2c pt0c)

    (set pt (trans (eval pt) 1 0))

  )

  (setq	ang1 (angle pt1c pt0c)

	ang2 (angle pt2c pt0c)

	bis  (/ (+ ang1 ang2) 2.0)

	l0   (vla-addLine

	       ModSp

	       (vlax-3d-point pt0c)

	       (vlax-3d-point (polar pt0c bis 1))

	     )

	pt0f (vlax-safearray->list

	       (vlax-variant-value

		 (vla-IntersectWith obj l0 acExtendOtherEntity)

	       )

	     )

  )

  (cond

    ((equal ang1 ang2 1e-009)

     (cond

       ((equal pt1c pt2c 1e-009)

	(hers_bal pt1c ang1 256)

       )

       (T

	(hers_bal pt1c ang1 1)

	(hers_bal pt2c ang2 3)

       )

     )

    )

    (T

     (hers_bal pt1c ang1 256)

     (hers_bal pt2c ang2 256)

    )

  )

  (vla-delete l0)

  (vla-EndUndoMark AcDoc)

  (setq	*error*	m:err

	m:err nil

  )

  (princ)

)

Avec son petit dessin explicatif :
Image IPB.
À plus ...[Edité le 27/9/2005 par (gile)][Edité le 30/11/2005 par (gile)]

[Edité le 1/12/2005 par (gile)]
Gilles Chanteau - gileCAD -
Développements sur mesure pour AutoCAD
Image IPB
0

Partager ce sujet :


  • 2 Pages +
  • 1
  • 2
  • Vous ne pouvez pas commencer un sujet
  • Vous ne pouvez pas répondre à ce sujet

1 utilisateur(s) en train de lire ce sujet
0 membre(s), 1 invité(s), 0 utilisateur(s) anonyme(s)