Aller au contenu

sechanbask

Membres
  • Compteur de contenus

    1 013
  • Inscription

  • Dernière visite

Tout ce qui a été posté par sechanbask

  1. sechanbask

    Plans trop lourds

    je ne sais pas si mon outil peut te servir mais http://www.cadxp.com/XForum+viewthread-fid-114-tid-18505-page-2.html Une version plus évolué sera bientôt disponible avec : - suppression des Xref même s'il sont imbriqués dans des blocs - suppression des objets contenus dans des calques geler (voire si je peux le faire pour les objet cacher dans les blocs) -aplanissement (je ne promets rien) -purger par Wbloc bon courage
  2. sechanbask

    Réaliser du Calorifuge

    tu veux la marche à suivre pour faire ton code en utilisant le mien ? Si c'est le cas, il faut avant toute chose définir les besoins : quelle est la ou les versions d'autocad ? si plusieurs faire un teste sur les versions (si tu as une 2007, je ne peux pas insérer de blocs) est-ce les utilisateurs travaillent dans les SCU ou toujours dans le SCG ? pour un même diamètre de tube ou de gaine, la taille du calorifuge est-elle toujours la même ? si non, il faut demander à l'utilisateur de la saisir ou lui demander de choisi dans un tableau... saisi dynamiques des points ? oui mais dans quel ordre ? je vois ça comme ça point 1 = debut du calo sur axe, point 2 = fin du calo sur l'axe, point 3 = bord de la gaine. avec VBA beaucoup de chose sont possibles et la prise de tête en fait parti si on ne définit pas le sens des choses. Défini tes envies en commençant par tes besoins les plus primaires. P.S. tu as testé mon code, tu as compris ou pas, tu arrives à le faire fonctionner ? Si tu veux de l'aide vu le peut de temps que j'ai en ce moment, faut pas hésiter, et être réactif. On est sur internet, la timidité n'existe pas pas. Alors soit ça bouge, ça c'est mort. Car j'ai de l'huile sur le feu avec le nettoyeur, avec la charte graphique de mon BE, et en plus je suis en train de monter une association (voir ma signature)... Si tu veux t'investir dans le calorifuge, et m'y faire participer, faut que ça bouge !! si oui contacte moi par MP je te filerai mon adresse persos pour que nos échange soient plus vifs.
  3. Attention, l'argument de la fonction SaveAs attend un variant pour la protection. Voir la copie de l'aide juste en dessous : Je sais c'est pas toujours clair mais l'aide apporte très souvent la réponse. donc ça marche en faisant : Sub enre() Dim var_protection As Variant ThisDrawing.Application.ActiveDocument.SaveAs "C:\MyDrawing.dwg", , var_protection End Sub Attention, mon code n'est pas très propre car j'ai utilisé une variable variant sans l'initialiser car je ne sais pas comment on peut la "vider", pour être sûr qu'elle n'est pas allouée par erreur.
  4. sechanbask

    Problème avec le handle

    à ta place je mettrais un Xdata sur les objets pour pouvoir les réutiliser comme je veux... car d'après plusieurs sujet sur le handle, il n'est pas fixe d'une utilisation sur l'autre du plan... Mais bon ça peut ne pas te convenir.. Bon courage
  5. la seule erreur que j'arrive à réproduire c'est : -2145320851 'jeu de sélection dupliqué donc je ne peux pas t'aider dis nous en plus.. chez moi la macro ne sélectionne qu'un seul point alors que j'ai plusieurs point plusieur polyligne , lignes etc..
  6. sechanbask

    Réaliser du Calorifuge

    Ici, le premier problème n'est pas la programmation mais la facilité de trouver un algorithme avec les arguments que tu souhaites. Je m'explique, je ne vois pas comment en se repérant de manière géométrique/mathématiquement il est possible de donner un résultat avec les points que tu fournis à autocad. Je pense que la manière la plus simple c'est de considérer les points le long de l'axe. Ça fait longtemps que je ne me suis pas pencher sur un problème graphique (problème vraiment très compliquer si l'on ne programme pas à plein temps et si on est une buse comme moi on math matricielle) : Je te propose donc un bout du code vraiment brute sans commentaire, mais je pourrais te fournir tous les explications que tu souhaites : Sub PVC() Dim pt As Variant Dim pt1 As Variant Dim ligne As acadline Dim ptAvt As Variant Dim teta As Double Dim deltX As Double Dim strReduc As String Dim strCoude As String Dim blockObj As AcadBlockReference Dim strpropo As String Dim keywordList As String Dim ptgarde As Variant Dim offsetvar As Variant Dim VarpinsTr As Variant Dim strMonG As String Dim strEntree As String Dim strTaille_reduc As String Dim strCalquecourant As String strCalquecourant = ThisDrawing.ActiveLayer.Name calque_units sngDiametre = ThisDrawing.Utility.GetReal("sngDiametre du pvc en mm : ") sngDiametre = sngDiametre * coef pt = ThisDrawing.Utility.GetPoint(, "Point de départ :") 'garder ce pt ptgarde = pt Do pt1 = ThisDrawing.Utility.GetPoint(pt, "Extrémité :") Set ligne = ThisDrawing.ModelSpace.AddLine(pt, pt1) offsetvar = ligne.Offset(sngDiametre / 2) offsetvar = ligne.Offset(-sngDiametre / 2) With ligne .layer = actlayer & "-A" End With On Error Resume Next 'faire un getpoint mais avec choix du texte et si le getpoint echoue faire une 'selection du texte sinon ajouter au segment la ligne 'Définition des mots-clés keywordList = "Keyword1 Keyword2" ThisDrawing.Utility.InitializeUserInput 128, keywordList pt = ThisDrawing.Utility.GetPoint(pt1, "té Droite/té Gauche/Monter/Descendre/Texte diamètre/Clore") 'récupère ce que l'itulisateur a rentré grâce à 'on error resume next strEntree = ThisDrawing.Utility.GetInput strMonG = VBA.Left(ThisDrawing.Utility.GetInput, 1) Select Case Err.Numbertu veux Case "-2147352567" 'l'utilisateur à fait "Échap" On Error GoTo 0 'le calque courant avant la commande et rendu actif ThisDrawing.ActiveLayer = ThisDrawing.layers(strCalquecourant) 'l'utilisateur est informé de son annulation ThisDrawing.Utility.Prompt " Annulée par l'utilisateur." 'le programme est arrété Exit Sub Case "-2145320928" 'l'utilisateur a entré un mot clé On Error GoTo 0 'Debug.Print strMonG & "strMonG" 'test du mot clé Select Case strMonG Case "" Debug.Print "l'utilisateur vient de rentrer un espace" Exit Sub Case "d", "D" 'insérer une culotte à direction à droite ThisDrawing.Utility.Prompt "insérer une culotte à direction à droite" & teta Exit Sub Case "g", "G" 'insérer une culotte à direction à gauche ThisDrawing.Utility.Prompt "insérer une culotte à direction à gauche" & teta '************** strReduc = "nettoy_culotte_bt14_back.dwg" Set blockObj = ThisDrawing.ModelSpace.InsertBlock(pt1, strReduc, 1#, 1#, 1#, teta) Exit Sub Case "c", "C" strpropo = ThisDrawing.Utility.GetString(False, "Monter") Select Case strpropo Case "m", "M" Insertion_coude90_montant End Select Case "r", "R" 'lancer la funciton ou sub pour faire une réduction 'Insertion_reduction 'faire procédure pour le calcul du dblModule strTaille_reduc = ThisDrawing.Utility.GetString(False, "donner le diamètre réduit : ") Dim dblModule As Double dblModule = Sqr((pt1(0) - pt(0)) ^ 2 + (pt1(1) - pt(1)) ^ 2) deltX = pt1(0) - pt(0) Debug.Print deltX Dim deltY As Double deltY = pt1(1) - pt(1) Debug.Print deltY If deltX = 0 And deltY > 0 Then teta = ArcCos(deltX / dblModule) End If If deltX = 0 And deltY < 0 Then teta = -ArcCos(deltX / dblModule) End If If deltX > 0 And deltY > 0 Then teta = ArcCos(deltX / dblModule) End If If deltX < 0 And deltY > 0 Then teta = ArcCos(deltX / dblModule) End If If deltX > 0 And deltY < 0 Then teta = -ArcCos(deltX / dblModule) End If If deltX < 0 And deltY = 0 Then teta = -ArcCos(deltX / dblModule) End If If deltX < 0 And deltY < 0 Then teta = -ArcCos(deltX / dblModule) End If '************** strReduc = "Rcc_" & sngDiametre & "-" & strTaille_reduc & ".dwg" Set blockObj = ThisDrawing.ModelSpace.InsertBlock(pt1, strReduc, 1#, 1#, 1#, teta) 'blockObj.GetXData = If blockObj.ObjectName = "AcDbBlockReference" Then 'enregistrer l'entité en tant que IAcadBlockReference2 Dim oBkRef As IAcadBlockReference Dim varAttributes As Variant 'On Error GoTo gestion Set oBkRef = blockObj Debug.Print oBkRef.Name On Error GoTo 0 If oBkRef.HasAttributes Then 'hasattribut 'Debug.Print oBkRef.Name varAttributes = oBkRef.GetAttributes Dim n As Integer 'pour chaque attribut For n = LBound(varAttributes) To UBound(varAttributes) 'si l'étiquette de l'attribut est coordonnees If varAttributes(n).TagString = "HAUTEUR_TRAPEZE" Then Dim sngLongueur As Single Debug.Print varAttributes(n).TextString 'sngLongueur = End If 'varAttributes(n).TagString = "HAUTEUR_TRAPEZE" Then Next n 'pour chaque attribut End If 'hasattribut End If 'blockObj.ObjectName = "AcDbBlockReference" Then pt(1) = pt1(1) + sngLongueur * Sin(teta) pt(0) = pt1(0) + sngLongueur * Cos(teta) 'pt = pt1 sngDiametre = strTaille_reduc sngDiametre = sngDiametre * coef Case Else End Select Case Else ptgarde = pt deltX = pt1(0) - pt(0) deltY = pt1(1) - pt(1) 'Debug.Print deltY dblModule = Sqr((pt1(0) - pt(0)) ^ 2 + (pt1(1) - pt(1)) ^ 2) If deltX = 0 And deltY > 0 Then teta = ArcCos(deltX / dblModule) End If If deltX = 0 And deltY < 0 Then teta = -ArcCos(deltX / dblModule) End If If deltX > 0 And deltY > 0 Then teta = ArcCos(deltX / dblModule) End If If deltX < 0 And deltY > 0 Then teta = ArcCos(deltX / dblModule) End If If deltX > 0 And deltY < 0 Then teta = -ArcCos(deltX / dblModule) End If If deltX < 0 And deltY = 0 Then teta = -ArcCos(deltX / dblModule) End If If deltX < 0 And deltY < 0 Then teta = -ArcCos(deltX / dblModule) End If Dim strTeta As String strTeta = teta If VBA.Left(strTeta, 15) = "1,5707963267949" Or VBA.Left(strTeta, 15) = "-1,570796326794" Then strCoude = "C-90d_" & sngDiametre & "_c.dwg" End If Set blockObj = ThisDrawing.ModelSpace.InsertBlock(pt1, strCoude, 1#, 1#, 1#, teta) Set ligne = ThisDrawing.ModelSpace.AddLine(pt1, pt) offsetvar = ligne.Offset(sngDiametre / 2) offsetvar = ligne.Offset(-sngDiametre / 2) With ligne .layer = actlayer & "-A" End With 'calculer langle entre la droite tracée et le point pt 'si l'angle est remarquable, insérer l coude qu'il faut pour le diamètre et l'angle 'str = "C-" & sngAngle & "d_" & sngDiametre & "_c" End Select Loop Until strReduc = "n" End Sub Je fais cette demande, mais normalement, je ne suis pas du genre à réclamer : Comme tu peux le voir, on bosse plus ou moins dans le même domaine, j'avais commencé ce code pour dessiner de la gaine galva, des réseaux d'évacuation PVC...etc ça n'a pas pu aboutir car j'ai eu beaucoup d'autre occupation et surtout parce que je me suis découragé devant le problème de l'orientation secondaire des blocs pour les coudes, culotte etc... Si jamais, tu as l'intention de poursuivre un tel projet, tu pourras compter sur moi pour l'aide mais j'aimerais que ton code soit libre comme ceux que j'ai posté afin que les vendeurs de logiciel souvent mal fini arrête de VOLER de l'argent au BE. Merci de ta compréhension. [Edité le 20/5/2009 par sechanbask]
  7. voilà comment je procède Je tente de renommer le bloc, si j'ai une erreur, je la gère en entrant dans une boucle " Do... Loop Until Err.Number <> "-2145386405" ",. Dans cette boucle je renomme le bloc de manière incrémentielle et hop le tour est jouer. Je te laisse le code qui est contenu dans mon nettoyeur (à tester si tu ne le connais pas encore, hop un peu de promotion !!). En espérant que cela puisse t'aider. Function modifier_nom_bloc() Dim objBlock As AcadBlock Dim IntN As Integer Dim intI As Integer Dim intJ As Integer Dim strNom_bloc_ini As String Dim strDebut As String Dim strPrefixe As String Dim strPremiere_lettre As String 'si erreur aller dans la partie gestion : On Error GoTo gestion 'Demande à l'utilisateur le nom pour le préfixe du bloc strPrefixe = Nparametres.TB_nom_bloc.Text If strPrefixe = "" Then 'ne rien faire Else 'compter le nombre de lettre du préfixe intJ = VBA.Len(strPrefixe) 'faire une boucle dans la collection des blocs For Each objBlock In ThisDrawing.Blocks 'test pour savoir si le bloc est un Xref If objBlock.IsXRef Then 'Debug.Print "objBlock.Name", objBlock.Name, "objBlock.IsXRef", objBlock.IsXRef Else strNom_bloc_ini = objBlock.Name 'si les 12 permiers caractères du nom du bloc commence par... Select Case VBA.Left(strNom_bloc_ini, 12) '"*model_space ou "*paperspace" Case "*Model_Space", "*Paper_Space" 'ne rien faire ce ne sont pas des blocs 'si non Case Else 'récupérer le prefixe du bloc de la longueur du préfixe indiqué par l'utilisateur strDebut = VBA.Left(strNom_bloc_ini, intJ) 'tester si le bloc possède déjà le préfixe If strDebut <> strPrefixe Then 'si erreur lire la ligne suivante On Error Resume Next 'Ajouter le préfixe au nom du bloc objBlock.Name = strPrefixe & strNom_bloc_ini 'Si un bloc porte dejà ce nom bis If Err.Number = "-2145386405" Then 'Effacement de l'enregistrement de l'erreur 'Err.Clear 'initialiser la variable pour le suffixe variable IntN = 0 'Faire ça jusqu'à ce que ... Do 'Effacement de l'enregistrement de l'erreur Err.Clear IntN = IntN + 1 'Ajouter le préfixe au nom du bloc + un suffixe incrémentiel pour éviter l'erreur si un bloc porte le nom du nom + le préfixe + intN-1 objBlock.Name = strPrefixe & strNom_bloc_ini & "_" & IntN '...l'erreur enregistré sous "-2145386405" soit invalidée Loop Until Err.Number <> "-2145386405" End If 'Si un bloc porte dejà ce nom bis Else 'DP "ne rien faire" End If 'tester si le bloc possède déjà le préfixe End Select End If Next objBlock End If Exit Function gestion: Debug.Print Err.Number, Err.Description End Function Bon courage [Edité le 12/5/2009 par sechanbask]
  8. je t'encourage à lire ceci : http://www.cadxp.com/sujetXForum-23259.htm Bon courage dans ta recherche
  9. perso, j'envisage de faire migrer une partie de mon bureau sous bricscad... Des applicatifs existent pour dessiner de la gaine, des tubes etc... Je vais tenter de l'utiliser pour bien le tester, c'est prometteur. Voilà ce que j'ai pu obtenir en faisant le tour du propiétaire : Version testée 9.2.15.1 en US : -J'ai remarqué que l'ouverture de beaucoup de plan fonctionne plus rapidement sous bricscad que sous notre version vieillissante autocad 2006. Les plans architectes et gros oeuvre sont souvent fait avec le même moteur d'enregistrement que bricscad. J'ai même pris l'habitude d'ouvrir les plans récalcitrants avec bricscad pour les ré-enregistrer en .dwg 2004. Car son moteur d'enregistrement retire les problème des AutoCAD proxy et objets AEC. Je pense notament au problème lié au plan ou le copié collé n'est pas possible avec le plan enregistré en 2004 avec autocad, après un passage sous bricscad, le copié collé marche comme si de rien n'était... -Les options générales sont mieux ordonnées que sous autocad, de plus, la gestion du SCU, des calques, des types de lignes ... sont centralisées, mais accessible avec des allias séparés !! ça c'est le pied !! -L'impression avec l'ordre de tracé est respectée, la visibilité courante des blocs dynamiques est respectée : du bon boulot ! -J'ai remarqué un bug : le texte multiligne ne s'écrit pas dans le SCU courant mais dans le SCG... un bug déjà corrigé en interne. -De plus, il se propose de migrer les macro vba d'autocad. C'est pas un mal car apparemment autocad va passer au VB.net donc de toute façon va falloir changer une bonne partie du code... -Par contre, les actions paramétriques des blocs dynamiques ne sont gérés, on voit la visibilité courante mais pas la changer. -Je n'ai testé bricscad que sur un vieux PC, j'avais du clipping (le plan disparait un millième de seconde et réapparait = y'a pas de continué de visibilité du plan lorsqu'on se déplace) lors de mes déplacements sur le plan mais bon franchement, ça m'a trop géné, par contre en production...C'est aussi un avantage, car ça permet de moins consommer de ressource à mon avis. j'avoue que ça peut-être un bug ou une limitation de la version de démo... Barbu comme je suis, j'avoue que l'existence d'une version linux est un réel plus pour moi peut-être un jour migrerons nous !! Voilà, je vous encourage à tester par vous même et à nous faire partager vos impressions. P.S. j'ai pas d'action chez eux mais il est vrai que ça marche plutôt bien. Et vu le prix avec l'environnement de développement, et la mise à jour version la prochaine version majeure. [Edité le 16/4/2009 par sechanbask]
  10. sechanbask

    Problème sur routine

    désolé, je n'ai pas acess sinon j'aurais tenté ma chance
  11. sechanbask

    Nettoyeur

    Dans le cadre de l'amélioration du nettoyeur, j'ai besoin d'un coup de main. Je n'arrive pas à supprimer proprement les objets attributs(je parle pas de la valeur qu'ils contiennent mais bien de l'objet). Je les supprime mais je ne peux pas faire de "attsync" ou "battman" pour qu'il n'apparaisse plus dans le bloc... Dim objatt As AcadAttribute Dim entint As AcadEntity Set objatt = entint If objatt.Invisible = True And Nparametres.ChB_Supprimer_Att_vides.Value = True Then entint.Delete End If If IsNumeric(Nparametres.TB_att_hauteur.Text) Then If objatt.Height > Nparametres.TB_att_hauteur.Text Then 'And Nparametres.ChB_Supprimer_Att_hauteur.Value = True Then entint.Delete End If End If Merci de m'aider et je mettrais comme toujours la nouvelle version de mon nettoyeur..
  12. tu ne trouves pas d'exemple dans l'aide de catia ? tu peux également t'aider des méthodes et des propriétés des objets accessible dans VBA en faisant "F2". Désolé de ne pas pouvoir d'aider mais je ne connais pas catia...
  13. 2 méthodes : soit tu nommes la bibliothèque d'objet et donc tu fais for each obj in biblothèque _d_objet exemple sous autocad : for each bloc in blocks ou tu fais un compteur d'objet de ta bibliothèque : for 1 to biblothèque _d_objet.count Je ne sais pas si je suis clair mais ta ligne : dim hybridShapeCurveExplicit1 As hybridBodies1.Item("Desassemblage") se transformerait certainement en dim hybridShapeCurveExplicit1 As hybridBodies1 que ça ne m'étonnerait pas..
  14. je problème des langages intégrés c'est qu'il dépende du logiciels et comme il aime changer de système de programmation plutôt que de faire évoluer le langage : c'est la merde. Mais c'est compressible, ça évite d'avoir de problème lors des mise à jour avec un langage qui change légèrement, mais du coup gros problème lors du changement global du système de programmation. Le mieux quitte à tout reprogrammer dans dans VB.net,il faut passer au python car lui évolue doucement, il ne dépend pas de la platforme (pour le jour ou autocad passera sous linux) et ne dépend pas de la version d'autocad car les objet restent les mêmes... Mais vive la conversion !!
  15. je fais un ThisDrawing.SelectionSets.Add("S1").Clear ThisDrawing.SelectionSets.Add("S1").Delete ThisDrawing.SelectionSets.Add("S1").Update Mais ça ne marche pas, je ne vois pas où est mon erreur mais avec le code que j'ai trouvé sur intenet et posté le 20/1/2009 à 13:35, ça marche alors comme je n'ai ni le temps ni la patience de trouver d'où vient mon erreur...
  16. ben si tu ne connais pas le lisp ou le VBA, lève les manches, prends de bonnes baskettes et cours charger un bon ouvrage sur la programmation sous autocad et écume les forums developpez.com, augi etc... Rien de compliquer, tout est histoire de temps, de bon sens et de fourberies ! j'ai la méthode : elle vaut ce qu'elle vaut. Les programmateur d'autocad n'ont pas jugé utile de faire des sous "object" pour lire les définitions des cylindres de manière simple et toujours vérifié avec VBA. Donc le plus simple comme le DWG est un format non libre et donc illisible, c'est de transformer ton fichier en dxf. puis de lire les lignes une à une pour trouver les réponses à tes questions. Je suis prêt à t'aider mais, comme je n'ai pas le temps et encore moins le besoin de faire cette application (je ne dessine pas en 3D), je n'ai pas de temps à consacrer à cette application. Néanmoins, comme j'aime les défi, je suis prêt à t'épauler lorsque tu auras appris les prémices du VBA ou du lisp (je pense qu'ici tu auras plus d'aide des lispeurs et le brassage des données des drapeaux DXF doit être plus facile sous lisp (sans passer pas la case exportation de ton fichier en dxf)) Mon code est libre et le restera ainsi que les dérivés Sub Recuperation_des_longueurstest() 'Debug.Print "on rentre dans lecture" 'initialisation des variables contenues dans fichiers Dim MyString As String Dim MyString2 As String Dim strfin As String Dim dblongueur As String Dim n As Integer Dim IntN As Integer Dim strChemFichdxf As String 'le chemin du fichier DXF que l'on doit lire strChemFichdxf = "D:\Add on\dessin2.dxf" booBoucle = False 'rechercher ce qu'il y a dans le fichier... 20 Close #1 40 Open strChemFichdxf For Input As #1 'initialise le nombre de ligne du fichier IntN = 1 50 n = 0 60 Do While Not EOF(1) ' Effectue la boucle jusqu'à la fin du fichier. 70 Line Input #1, MyString 'incrémente le nombre de ligne 80 n = n + 1 If MyString = "AcDbShCylinder" Then 'DP MyString booBoucle = True IntN = n Else End If 'ici faut faire une boucle avec un tableau à 2 directions redimensionnable à chaque passage pour récupérer les longueur en fonction du diamètre If IntN <> n And booBoucle = True Then 'DP MyString Select Case n Case IntN + 6 'DP MyString 'dblLongueur = MyString Case IntN + 8 DP MyString 'dblLongueur = MyString 'strfin = strfin + MyString End Select End If Loop 'Debug.Print dblongueur End Sub ta fourberie de faire des échelles sur tes objets pourrait être une bonne idée, après il faudrait voir si on peut récupérer les échelles simplement sur un objet 3D... affaire à voir [Edité le 3/2/2009 par sechanbask] [Edité le 3/2/2009 par sechanbask]
  17. J'ai jamais eu l'envie de pourrir la vie de quelqu'un. Je n'ai pas les compétences de faire un site qui tient le route mais moi, je ne l'ai pas pris en charge ! Si les utilisateurs ne s'étaient jamais plein de leur outil, on écrirait, non pas sur un ordinateur, mais on taillerait encore des pierres (et encore, je ne suis même pas sûr que l'écriture existerait puisque personne ne se serait plaint de ne pas pouvoir faire de trace de communication). Je sais reculer devant les choses que je ne sais faire, mais en informatique, les choses impossibles sont souvent liées à la volonté humaine. On a même appris l'ordinateur à "compter" en base 10 ! Alors à quand la prochaine version du site ? Je n'en veux à personne seulement aux moyens humains et stratégiques déployés ! P.S. Ce ne sont pas mes desiderata, mais seulement le bon sens qui impose que les fonctions implantées fonctionnent. [Edité le 3/2/2009 par sechanbask] [Edité le 4/2/2009 par sechanbask]
  18. merci beaucoup, je l'ai mis dans mon nettoyeur de plan mais même si ça change l'option, la première fois que je supprime toutes les présentation, dans la première présentation qu'autocad crée automatiquement, il me fait une fenêtre mais après, pour les prochaine fois, ça fonctionne comme sur des roulettes merci
  19. sechanbask

    Forcer couleur Xréf

    personnellement, j'utilise le nettoyeur de plan (que j'ai créé) mais ça oblige à modifier le Xref et à l'enregistrer..
  20. bonjour, je cherche le nom de l'option ou variable pour que lorsque je créée une nouvelle présentation, autocad ne me crée pas de fenêtre dans cette présentation. je sais ou ce trouve l'option (Menu "Outils"-"Options"- Onglet "Affichage"- Créer une fenêtre dans les nouvelles présentations") mais le nom de la variable associée ?? C'est pour l'automatiser avec VBA Merci d'avance
  21. 50 000 membres, moi j'en ai 4 faut-il faire la division par 4 pour trouver le nombre d'inscrit actif ? Puisqu'il faut être inscrit pour lire les réponses au sujet, doit y avoir une sacrée quantité de personne qui n'écrit jamais et qui ne répond jamais (même au problème qu'il savent résoudre). Enfin bon tout ça pour en revenir au sujet bouillant : Aurons nous, un jour, un site mis à jour avec les fonctions primaires essentielles qui fonctionneront convenablement ? [Edité le 25/1/2009 par sechanbask]
  22. sechanbask

    Windows 7 arrive

    Pour avoir un système d'exploitation puissant est stable sans consommation de ram pour rien : Passer à linux. Les versions alphas, betas et finales sont gratuites dans 85 % des cas, et pour les 15 % qu'il reste, il reste des distributions qui les copient légalement les payantes et qui sont gratuites leur seule différence c'est qu'elle n'ont pas le support. Mon j'utilise une FEDORA10 (pourtant déconseillé pour un poste de travail (pourtant très très stable sauf pour le son, pour un poste de travail on s'en fout un peu, non)) + virtualbox et windowsXP dans cette virtualbox + autocad2006, je n'ai jamais eu un PC aussi rapide depuis que c'est linux qui gère le matériel !!! On verra pour W7, mais à mon avis, encore une fois cette version ne sera pas aboutie avant le SP2, de plus je parie que le système de fichiers est encore cette abominable NTFS qui fragmente tout ce qu'il trouve !! Quand on vois qu'il a fallut attendre le SP3 pour que les options de glisser-déplacer sur un serveur de fichier windows serveur 2003 SP1 soient de nouveau active pour interdire le glisser déplacer sur cette espace disque !!!) Je souhaite bon courage à ceux qui vont devoir essuyer les plâtres et sortir leur portefeuille pour devoir le faire. Vivement qu'un logiciel DAO pour les plans fasse son apparition nativement sur linux pour que ma boîte bazarde ces OS là !
  23. c'est une propiété alors normalement, il suffit de traduire l'algorithme : Mettre la propriété visible de l'application à "non" Mettre la propriété visible de l'application à "oui" Désolé, je ne peux pas t'en dire plus, je ne connais rien au lisp et mon livre de programmation (ou j'ai quelques notions de lisp dedans et au bureau) et vu le temps de ce WE.... j'ai déjà eu toutes les peines du monde pour prendre mon courage et ouvrir les volets, alors aller au boulot pour cherche un livre... Si tu ne trouves pas, envoie moi un MP et lundi je verrais si je peux le trouver dans mon livre. ou autre solution: Moi j'utilise le lisp pour lancer mes programmes VBA, pourquoi ne pas utiliser le VBA pour cacher autocad depuis un lisp ? Bon courage [Edité le 24/1/2009 par sechanbask]
  24. j'ai trouvé une solution VBA pour mon problème comme pour le tien peut-être : sur mes traitement long j'ai placé ça au début : AutoCAD.Visible = False à la fin et dans la gestion d'erreur : AutoCAD.Visible = True En espérant que ça te plaise autant qu'à moi... P.S. j'ai bien peur qu'autocad regen toujours son application et donc perd du temps CPU alors que l'application est invisible pour l'utilisateur. P.S. je cherche donc toujours comme couper plus raisonnablement le regen de l'application. [Edité le 24/1/2009 par sechanbask]
  25. voir http://www.cadxp.com/modules.php?op=modload&name=XForum&file=post.reply&fid=100&tid=22239 Bon courage
×
×
  • 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é