Aller au contenu

CADarome

Membres
  • Compteur de contenus

    51
  • Inscription

  • Dernière visite

Tout ce qui a été posté par CADarome

  1. Bonjour à tous. j'essai de voir comment récupérer la derniere valeur du nombre de copies fait avec la derniere impression. (setq actdoc (vla-get-activedocument (vlax-get-acad-object))) (setq plotdoc (vla-get-plot actdoc )) (setq #PlotCopy (vla-get-NumberOfCopies plotdoc)) Ce code ci-haut me retourne toujours 1 j'ai noté que le nombre de copies n'est pas sauvegardé dans les mises-en pages... donc, j'ai beau fouiller....je ne trouve pas où AutoCAD store cette variable. qq1 peut-il m'aider ? Merci à l'avance.
  2. Tu as raison.. Je m'excuse...je ne suis pas toujours claire....Il faut que j'apprenne à extérioriser mes pensées. ;-) l'utilité..: Dévier certaines valeurs d'une programmation existante et Patcher le reste.. dont je n'ai pas le code. Donc, aucune utilité comme tel. ;-)
  3. Merci Bred,... que penses-tu de ceci ? (setq str (getstring "\nEntrez le numéro de la Métavue à rechercher: ")) (setq MVsel (ssget "_X" '((0 . "VIEWPORT")))) (if (eq (sslength MVsel) 1) (alert " Aucune Métavue dans ce dessin.") (progn (setq sscount (sslength MVsel)) (setq val1 (- sscount 2)) (repeat (1- sscount) (setq MVname (cdr (assoc 69 (entget (ssname MVsel val1))))) (if (eq (itoa MVname) str) (alert (strcat "Métavue no: " (itoa MVname) " Trouvé")) ) (setq val1 (1- val1)) ) ) )
  4. Bonjour à tous.. J'essai de trouver un moyen de sélectionner la méta-vue numéro 16 Ce code...fonctionne bien pour une méta-vue standards. (ssget "X" (list '(0 . "VIEWPORT") (cons 69 16) ) ) Cependant, la méta-vue en question était une poliligne fermé et transformé en métavue par la suite... donc,.. (0 . "LWPOLYLINE") comment selons-vous, devrais-je filter ma demande ? ya-t-il plus simple ?
  5. CADarome

    ObjectDbx

    oh !...... résultats..: ; IAxDbDocument: Interface IAxDbDocument ; Valeurs de propriétés: ; Application (RO) = Une exception s'est produite ; Blocks (RO) = # ; Database (RO) = # ; Dictionaries (RO) = # ; DimStyles (RO) = # ; ElevationModelSpace = 0.0 ; ElevationPaperSpace = 0.0 ; FileDependencies (RO) = # ; Groups (RO) = # ; Layers (RO) = # ; Layouts (RO) = # ; Limits = (0.0 0.0 420.0 297.0) ; Linetypes (RO) = # ; Materials (RO) = # ; ModelSpace (RO) = # ; Name = "c:/test.dwg" ; PaperSpace (RO) = # ; PlotConfigurations (RO) = # ; Preferences (RO) = # ; RegisteredApplications (RO) = # ; SectionManager (RO) = Une exception s'est produite ; SummaryInfo (RO) = # ; TextStyles (RO) = # ; UserCoordinateSystems (RO) = # ; Viewports (RO) = # ; Views (RO) = # ; Méthodes prises en charge: ; CopyObjects (3) ; DxfIn (2) ; DxfOut (3) ; HandleToObject (1) ; ObjectIdToObject (1) ; Open (2) ; Save () ; SaveAs (2) le ACTIVEDOCUMENT offre ceci.. ; Méthodes prises en charge: ; Activate () ; AuditInfo (1) ; Close (2) ; CopyObjects (3) ; EndUndoMark () ; Export (3) ; GetVariable (1) ; HandleToObject (1) ; Import (3) ; LoadShapeFile (1) ; New (1) ; ObjectIdToObject (1) ; Open (2) ; PurgeAll () ; Regen (1) ; Save () ; SaveAs (3) ; SendCommand (1) ; SetVariable (2) ; StartUndoMark () ; Wblock (2) Merci les gars.. donc si je comprend bien... On peut effacer des entitiés....mais non les purger ? hhmm..
  6. CADarome

    ObjectDbx

    Bonjour,... Petite question ici.. est-ce que ceci.. (setq Dbx (vla-get-activedocument (vlax-get-acad-object))) est exactement le même type que... (setq Dbx (ouvrir_dessin_dbx "c:/test.dwg")) si oui... Pourquoi (vla-purgeall Dbx) et (vla-AuditInfo Dbx :vlax-true) ne sont pas reconnues ?? font-ils partie de (vl-load-com) ? j'ai un peu de misère à saisir... :P
  7. CADarome

    ObjectDbx

    HA HA !! j'ai ajouté effectivement (vla-saveas Dbx "c:/test.dwg") Merci beaucoup. ;-)[Edité le 19/9/2007 par CADarome] [Edité le 19/9/2007 par CADarome]
  8. CADarome

    ObjectDbx

    ok..j'ai modifié mon lisp.. (defun Ouvrir_dessin_dbx(dwg / dbx) (if (< (atoi (substr (getvar "ACADVER") 1 2)) 16) (setq dbx (vlax-create-object "ObjectDBX.AxDbDocument")) (setq dbx (vlax-create-object (strcat "ObjectDBX.AxDbDocument." (substr (getvar "ACADVER") 1 2)))) ) (vla-open dbx dwg) dbx ) (defun BATCH_BLKREM (bloc / dbx) (setq Dbx (ouvrir_dessin_dbx "c:/test.dwg"));;# (setq blk (vla-get-blocks Dbx)) (vlax-for bl blk (vlax-for ent bl (if (eq (vla-get-objectname ent) "AcDbBlockReference") (if (eq (strcase (vla-get-name ent)) (strcase bloc)) (vla-delete ent) ) ) ) ) (vlax-release-object dbx) ) Je n'ai plus d'erreur....mais il n'enfface rien.. ;-\
  9. CADarome

    ObjectDbx

    Salut Pat ! Vraiment cool tes post ! j'ai fais quelques tests pour effacer un block spécifique dans tous les layouts (defun Ouvrir_dessin_dbx(dwg / dbx) (if (< (atoi (substr (getvar "ACADVER") 1 2)) 16) (setq dbx (vlax-create-object "ObjectDBX.AxDbDocument")) (setq dbx (vlax-create-object (strcat "ObjectDBX.AxDbDocument." (substr (getvar "ACADVER") 1 2)))) ) (vla-open dbx dwg) dbx ) (defun BATCH_BLKREM (block /) (setq Dbx (ouvrir_dessin_dbx "c:/test.dwg")) (vlax-for bdb Dbx (vlax-for item bdb (if (eq (vla-get-objectname ent) "AcDbBlockReference") (if (eq (strcase (vla-get-name item)) (strcase block)) (vla-delete item) ) ) ) ) ) cependant je recois un message d'erreur... que fais-je de pas normal ?
  10. Bonjour les CADxpéains ! Petite remarque... Lorsque l'application PUBLISH est exécuté.... celui-ci exécute en même temps tous les lisp et programmes inclus dans le startup suitcase AutoCAD.. sûre qu'il va falloir créer un DWF......et alors ? vos fichiers seront à jours et le tout se fait en transparence.. ;-) bonne journée
  11. bonjour à tous... j'aimerais savoir si il serait possible de faire un vla-dump-object d'un fichier externe ..? en fait, j'essai d'aller chercher une information dans un autre fichier DWG qui n'est pas ouvert. est-ce possible ? Merci.
  12. Bonjour à tous, Ceci est tout simplement pour vous aviser que ObjectDCL 2007 7.0 est maintenant disponible ICI. Merci.
  13. Salut GEGE.. tous les programmeurs ont des retissances face au changement,....en plus d'apprendre d'autres type de programmation......c'est tout a fait normal. j'ai 26 ans d'expérience avec AutoCAD (version 2.0 dos). et je dois dire que j'ai touché pas mal a différent types de programmations. Il est vraie que VBA est inclus dans AutoCAD, cependant, tu remarquera AutoCAD à été créé en en C++ et que ses fonctions ne l'utilise pas VBA et pour cause. VBA est utilisé par plusieurs logiciels, entre autre MSoffice, qui, lors d'une installation ÉCRASE les DLL requis pour les mises-a-jours. Or, nous savons ici que ces DLL seront utilisé par AutoCAD cependant, ayant fait plusieurs tests, les versions de MSoffice ne sont pas tous compatible avec AutoCAD. Je travaille présentement pour une grosse firme d'ingénierie en tant que support technique DAO je fait l'installation et configuration de PC pour plusieurs types de logiciels entre-autre AutoCAD et j'ai remarqué que si AutoCAD est installé AVANT MSoffice, Il faut ré-installer AutCAD. Pire encore les types de langage sont incompatibles (anglais/français). Dans la pluspart des programmes en VBA ceux-ci demeurent un risque pour les firmes d'ingénieries et donc, bani de notre façon de faire et ayant fait l'acquisision de plusieurs programme AutoCAD en VBA....Je peu vous assurer que le LISP demeure encore le meilleur type de programmation pour AutoCAD.........je peu en conter sur ce sujet. c'est pour cette seule et bonne raison que je me suis concentré sur le langage de progrmmation LISP......sûr, il y a c# ou c++...mais bon,...ont peut pas tout savoir.. ;-) Sur ce, je vous invite donc à visiter mon site DuctiSOFT car nous offrons présentement un spécial... je profites aussi de l'occasion pour vous annoncer qu'il y aura un module de déployement pour les créateurs de logiciels utilisant ObjectDCL. Merci et bonne journée. [Edité le 24/6/2007 par CADarome]
  14. désolé Tramber.. Il était... www.ductisoft.com
  15. Bonjour à tous,. Vous pouvez maintenant téléchargé la nouvelle version d'ObjectDCL ici n'hésitez pas à me contacter. bonne journée. Andrea.
  16. Bonjour,... Je cherche le moyen de trouver le centre d'un polyline fermé. des suggestions ?
  17. CADarome

    ObjectDCL Online

    Bonjour, Ceci est pour vous aviser que la sectino ObjectDCL de www.ductisoft.com est maintenant ONLINE. Présentement il n'y a pas grand chose à télécharger, mais je vous invites à y jetter un p'tit coup d'oeuil. Merci. [Edité le 12/4/2007 par CADarome]
  18. c'est fou Pat.... tes code je les admires.. ;-) Cependant avec ton zip file... il ne va pas chercher les Xrefs,..comme e-transmit. facile a coder..mais bon, à titre d'information. ;-)
  19. CADarome

    ObjectDCL 2007 s\'en vient

    Salut Didier,... Pour Information, Martin Leduc est un ingénieur remarquable et à été le seul à rendre compatible ObjectDCL avec AutoCAD 2007 et ce, plusieurs mois avant tout le monde. OpenDCL est donc apparut APRÈS l'achat des droits d'auteurs du produit ObjectDCL. Donc pour ce qui est trop tard, je ne crois pas,....car la seul différence entre notre version et la leurs.....c'est que les usagers ne voient pas l'évolution de notre produit. Or, la demande d''achat des droits d'auteurs du produit à été faite en même temps que son apparition sur source forge. La transaction s'est donc allongé un peu pour étude des contrats signé entre les parties et de la licence GPL qui à été soigneusement étudié par nos avocats. Sinon,...Pourquoi aurions-nous achetés les droits d'auteurs si nous ne pouvions pas ? Je ne peu malheureusement pas me prononcer sur ce qu'il en ai concernant Open......mais une chose est sûre.....c'est qu'ils enfraignent plusieurs lois....entre-autre celle de la licence GPL elle même. ObjectDCL....Un produit plus stable ? Une valeur sûre ? Un produit rentable?....... Oui c'est certains car le code à été étudié et repensé....et non "patché " comme ont dit. Malgré plusieurs programmeurs et plusieurs béta-tester....Open... est remplis de " BUG "... et ce ne sont pas les dires qui manquent. De plus, nous parlons français, donc oui, ....il y aura éventuellement des projets futurs pour de la doc et version française. Bref, ce ne sont pas les projets qui manquent. j'aimerais aussi vous dire que vos commentaires,...bons ou mauvais sont grandement appréciées et sont une source d'énergie pour le développement d'ObjectDCL. j'ai présentement certains béta-tester en vue,...et j'aimerais savoir si vous aimeriez faire partie de la liste. Vous pouvez vous inscrire ici. support@ductisoft.com et indiquer votre expérience actuelle avec ObjectDCL. Merci. [Edité le 26/3/2007 par CADarome]
  20. pour info... j'ai trouvé ceci.... ;;liste des page setup (defun get_page_setup (doc func / lst) (vlax-map-collection (vla-get-plotconfigurations doc) '(lambda (x) (setq lst (cons ((eval func) x) lst))) ) (reverse lst) ) (setq adoc (vla-get-activedocument (vlax-get-acad-object))) (setq page_setups (get_page_setup adoc 'vla-get-name)) ;;pagesetup (defun getPageSetupName (/ laydict psn) (setq dn (cdr (assoc -1 (dictsearch (namedobjdict) "ACAD_LAYOUT")))) (setq laydict (dictsearch dn (getvar "CTAB"))) (setq psn (member '(100 . "AcDbPlotSettings") laydict)) (if (= (caadr psn) 1) ; Page Setup Name exist (setq psn (cdadr psn)) ) ) ;-)
  21. Salut Patrick.. Merci.... Voici une liste de commande...que j'essai de comprendre.. (setq lay (vla-get-activelayout (vla-get-activedocument (vlax-get-acad-object)))) (vla-refreshplotdeviceinfo lay) ;;Nom de l'imprimante (vla-get-ConfigName lay) ;;liste Imprimantes (setq x (vlax-safearray->list (vlax-variant-value (vla-GetPlotDeviceNames lay)))) ;;format de papier (vla-get-canonicalmedianame lay) ;;liste des formats de papier disponibles (setq paps (vlax-safearray->list (vlax-variant-value (vla-GetCanonicalMediaNames lay)))) ;;Origine (setq x (vlax-safearray->list (vlax-variant-value (vla-get-PlotOrigin lay)))) ;;Paper UNITS (vla-get-PaperUnits lay) ;;Échelle standard ??? (vla-get-StandardScale lay) ;;HIDDEN (vla-get-PlotHidden lay) ;;ROTATION (vla-get-PlotRotation lay) ;;PLOTTYPE ???? (vla-get-PlotType lay) ;;Border (vla-get-PlotViewportBorders lay) ;;Plot Viewport First (vla-get-PlotViewportsFirst lay) ;;LINEWEIGHT (vla-get-PlotWithLineweights lay) ;;Impression avec PLotstyles (vla-get-PlotWithPlotStyles lay) ;;Échelle épaisseur de lignes (vla-get-ScaleLineweights lay) ;;Show PLot Styles (vla-get-ShowPlotStyles lay) ;;????????? (setq x (vlax-safearray->list (vlax-variant-value (vla-GetPlotStyleTableNames lay)))) ;;Style Sheet ?? (vla-get-StyleSheet lay) ;;Échelle Standard ?? (vla-get-UseStandardScale lay) ;;Centré (vla-get-CenterPlot lay) ;;Layout (vla-get-name lay) Dans cette liste.....certaines me laisse bouche bé... Mais je n'arrive toujour pas à mettre le doigt sur le nom de la mise-en-page courante.... :o j'avais pensé que..... vla-get-LayoutShowPlotSetup aurai fait l'affaire....mais bon...ya qqchose qui cloche.. j'aimerais aussi savoir si tu connais un site où ils expliquent en détail toutes ces commandes.. j'aimerrais ça moi aussi être bon comme toi ! ..;-)
  22. en fait j'essai de savoir quel est la mise-en-page courante de l'impression de l'onglet courant. car j'aimerai associer ce nom à une base de donné. Pour ce qui est des "Sheetset".....non merci.. Dans tous les domaines que j'ai touché....et dans toutes les cies... je n'ai vue aucune firme d'ingénierie et contracteurs qui utilisent les "SHEETSET" et personellement,..,..je les comprend. ;-)
  23. Merci beaucoup Pat... Je ne sais pas où tu es aller chercher ces nouvelles commandes.. mais c'Est vraiment interressant,, J'essai justement de faire de même avec les mises-en-pages... (vl-load-com) (setq lst () curdwg (vla-get-ActiveDocument (vlax-get-Acad-Object)) pslayout (vla-get-Layout (vla-get-PaperSpace curdwg)) ) ;; Appèle RefreshPlotDeviceInfo Avant GetPlotDeviceNames (vla-RefreshPlotDeviceInfo pslayout) (setq x (vlax-safearray->list (vlax-variant-value (vla-get-Plotconfigurations curdwg)))) (foreach n x (setq lst (append lst (list (vla-get-Plotconfigurations curdwg n)))) ) mais je ne sais pas trop pourquoi la valeur lst ne retourne rien.. :casstet:
  24. CADarome

    ObjectDCL 2007 s\'en vient

    c'est ok Patrick,.. En effet,....tu as parfaitement raison, rien de mieux qu'une sécurité. Par contre notre but n'est pas vrament de faire de l'argent,... mais aumoins de rembourser les dépenses. ;)
  25. Pat,.. J'essai de comprendre un peu mieux....mais je n'y arrive pas. (if (zerop (getvar "tilemode")) (setq esp (vla-get-paperspace (vla-get-ActiveDocument (vlax-get-acad-object)))) (setq esp (vla-get-modelspace (vla-get-ActiveDocument (vlax-get-acad-object)))) ) (setq lay (vla-get-layout esp)) (setq paps (vlax-safearray->list (vlax-variant-value (vla-GetCanonicalMediaNames lay)))) Donne le même résultat... J'ai pensé à extracter la mise-en-page courante avec.. (defun c:CPage () (vl-load-com) (setq curdwg (vla-get-ActiveDocument (vlax-get-Acad-Object)) pslayout (vla-get-Layout (vla-get-PaperSpace curdwg)) ) (cdr (assoc 3 (entget (vlax-vla-object->ename (vla-get-Plotconfigurations curdwg))))) ) Mais il me retourne toujour le premier de la liste et non celle qui est courante.... ;-(
×
×
  • 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é