Aller au contenu

Messages recommandés

Posté(e)

Bonjour,

 

j'aimerais savoir s'il est possible de créer un rectangle de longueur variable, contenant deux rangées de perçages espacées de 32mm en X et 256mm en Y.

 

Il faudrait que ce groupe de perçages augmente en fonction de la longueur et qu'il reste centré, avec une cote mini du bord du rectangle.

 

Voilà ce que je souhaite réaliser( pour le moment mon problème est le centrage de la batterie de trous)

 

http://images.imagehotel.net/?oevhjpgnhn.jpg

 

Cordialement:

 

Nicolas.

 

[Edité le 2/4/2008 par nicoping28]

Posté(e)

Bon, je récapitule,

 

je souhaite faire un réseau dynamique, dans un rectangle dynamique, et que le réseau soit centré dans la longueur du rectangle.

 

 

ps:

(si quelqu'un sait comment lier une fonction mathématique à une commande)

 

Par avance merci,

 

Nicolas.

Posté(e)

Re,

 

voici le code.

Il n utilise que des "inputbox" pour les paramètres, mais cela peut_être mis dans un formulaire.

Il positionne le panneau horizontalement en mm depuis le point 0,0

Je suis peut-être passé à côté de ton besoin.

Il est perfectible suivant nécessité.

Retours et remarques souhaitées ici.

 

 'NAZEMRAP
'8 Avril 2004
'perçage de panneaux

Dim longueur As Double
Dim largeur As Double
Dim poshb As Double
Dim pospar As Double
Dim ecart As Double

Dim rec As AcadLWPolyline
Dim pt_rec(0 To 7) As Double
Dim trou As AcadCircle
Dim rayon As Double
Dim centre(0 To 2) As Double

Dim posdep As Double
Dim nbcol As Integer
Dim reseau As Variant

Public Sub perçage_panneau()

longueur = InputBox("Longueur du panneau")
largeur = InputBox("largeur du panneau")
poshb = InputBox("Distance minimum à respecter en haut et en bas du panneau")
pospar = InputBox("Distance du perçage par rapport au bord de référence")
rayon = InputBox("Rayon du perçage ")
ecart = 256

pt_rec(0) = 0: pt_rec(1) = 0
pt_rec(2) = longueur: pt_rec(3) = 0
pt_rec(4) = longueur: pt_rec(5) = largeur
pt_rec(6) = 0: pt_rec(7) = largeur

Set rec = ThisDrawing.ModelSpace.AddLightWeightPolyline(pt_rec)
rec.Closed = True

'calcule la position de départ

posdep = (longueur - (2 * poshb))
nbcol = Int(posdep / 32)
posdep = ((longueur) - (nbcol * 32)) / 2

centre(0) = posdep: centre(1) = pospar: centre(2) = 0

Set trou = ThisDrawing.ModelSpace.AddCircle(centre, rayon)

reseau = trou.ArrayRectangular(2, nbcol + 1, 1, ecart, 32, 1)

End Sub

Posté(e)

Merci, c'est tout à fait ça.

 

Seulement je préfère le bloc dynamique, pour ensuite extraire les attributs et établir ma fiche de débit.

 

Voilà le pourquoi du comment, mais je trouve dommage qu'Acad2009 soit si beau ,mais que l'on ait toujours pas la possibilité ,(sans être programmeur) d'appliquer une simple division ou soustraction en fonction d'une longueur.

 

A moins que j'ai manqué un épisode.

 

Encore merci à toi nazemrap .

Posté(e)

Soit je ne l'ai pas bien fais, soit ça n'a pas fonctionné.

 

C'est peut être dû au fait que la longueur est inconnue.

Pourquoi, tu as réussi ?

 

Bon, je vais m'y remettre ce soir.

 

Merci à vous

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

Bonjour,

 

je reviens vers vous pour ce problème.

 

Voilà, je me demandais s'il est possible de créer un bloc pour le réseau, et de centrer celui ci dans un autre bloc ?(l'autre bloc étant étirable suivant x et y)

 

Merci à vous.

Posté(e)

Salut,

 

Tu peux centrer un objet dans un autre cet autre étant étirable sur X et Y, si tu mets des actions de déplacement sur les paramètres linéaires, et des actions de déplacement avec des variateurs de distance de 0.5 en sélectionnant l'objet centre, celui ci restera centré quand tu étireras l'autre.

 

Mais si tu imbriques un bloc dynamique dans un autre bloc dynamique, le premier perdra ses propriétés dynamiques.

 

[Edité le 15/7/2008 par (gile)]

Gilles Chanteau - gileCAD - GitHub
Développements sur mesure pour AutoCAD

Posté(e)

Merci (gile),

 

voilà qui n'est pas une très bonne nouvelle.

Les machines à commandes numériques que j'utilise, fonctionnent sous windows 95, et il est possible de faire un réseau centré dans un rectangle étirable, avec aux extrémités une cote mini.

 

Je trouve dommage que la version 2008 ainsi que la 2009 d'autocad ne disposent pas de tels outils.

Mais peut être que ce type de fonction, est trop proche des softs de meca ?

 

Merci.

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é