TuttoCAD Forum

TuttoCAD Forum
[ Home | Registrati | Discussioni Attive | Discussioni Recenti | Segnalibro | Msg privati | Sondaggi Attivi | Utenti | Album Fotografico | Download | | Cerca | FAQ ]
Nome Utente:
Password:
Salva Password
Password Dimenticata?

 Tutti i Forum
 1 - TuttoCAD Software
 AutoLISP
 elenco file

Nota: Devi essere registrato per poter inserire un messaggio.
Per registrarti, clicca qui. La Registrazione è semplice e gratuita!

Larghezza finestra:
Nome Utente:
Password:
Modo:
Formato: GrassettoCorsivoSottolineatoBarrato Aggiungi Spoiler Allinea a  SinistraCentraAllinea a Destra Riga Orizzontale Inserisci linkInserisci EmailInserisci FlashInserisci Immagine Inserisci CodiceInserisci CitazioneInserisci Lista
   
Icona Messaggio:              
             
Messaggio:

  * Il codice HTML è OFF
* Il Codice Forum è ON

Faccine
Felice [:)] Davvero Felice [:D] Caldo [8D] Imbarazzato [:I]
Goloso [:P] Diavoletto [):] Occhiolino [;)] Clown [:o)]
Occhio Nero [B)] Palla Otto [8] Infelice [:(] Compiaciuto [8)]
Scioccato [:0] Arrabbiato [:(!] Morto [xx(] Assonnato [|)]
Bacio [:X] Approvazione [^] Disapprovazione [V] Domanda [?]
Seleziona altre faccine

    
 
   

V I S U A L I Z Z A    D I S C U S S I O N E
blubossa Inserito il - 04 dicembre 2010 : 11:42:58
ciao a tutti,
sto scrivendo un lisp che deve leggere i file .dwg presenti in una directory per poi eseguire delle operazioni su ognuno di essi ad esempio

apri, zoom estensioni, stampa e chiudi file

ho iniziato a scrivere
(SETQ PERCORSO "C:\\pippo\\pluto\\Desktop\\test\\")
(setq elencofile (vl-directory-files PERCORSO nil 1))

il mio problema è quello di voler filtrare solo i file con estensione .dwg

c'è qualche funzione che lo fa?
grazie
bb
9   U L T I M E    R I S P O S T E    (in alto le più recenti)
Terminator Inserito il - 06 gennaio 2011 : 19:07:03
Piccola errata corrige al post precedente:

(vla-close nn :vlax-true)
;;; il file viene chiuso e salvato

(vla-close nn :vlax-false)
;;; il file viene chiuso e non salvato

Se devi solo zoomare e stampare, meglio la seconda scelta.

Terminator Inserito il - 06 gennaio 2011 : 10:37:56
Uno dei metodi che risolve la situazione, è il seguente:

(defun c:st_el ()
 (vl-load-com)
 (setq percorso (getstring "immetti percorso: "))
 (setq lista_dwg (vl-directory-files percorso "*.dwg" 1))
 (foreach disegno lista_dwg
  (setq	nn (vla-open (vla-get-Documents (vlax-get-acad-object))
		     (strcat percorso "\\" disegno)
	   )
  )
  (vla-close nn :vlax-true)
 )
)


Poi crei un lisp con i comandi che desideri:

(defun C:PIPPO ()
 (command "_zoom" "e" "_plot" .....)
)


Carichi questo file con il comando APPLOAD --> gruppo di avvio e successivamente fai partire il lisp ST_EL. In ogni file aperto della cartella dei disegni partiranno i comandi specificati in PIPPO.LSP.
Ricordati alla fine di rimuovere il file PIPPO.LSP dal gruppo di avvio, altrimenti ogni file aperto subirà lo stesso trattamento.

Il metodo non è il massimo dal punto di vista estetico ma funziona.
blubossa Inserito il - 06 gennaio 2011 : 00:55:45
ho letto gli allegati di Joseph e sono utilissimi, ma non riesco ancora ad inquadrare la soluzione. qualcuno di Voi ci ha provatro?

grazie
bb
Giuseppe Mauro Inserito il - 31 dicembre 2010 : 14:28:50
grazie josh
joseph Inserito il - 29 dicembre 2010 : 21:18:35
Messaggio inserito da Giuseppe Mauro

Termi, dove posso trovare tutte le funzioni VL e VLAX?
Nei doc che ho non se ne fa menzione


Guarda anche questi 2 files.
Scarica allegato:

Elenco-VisualLISP_Functions.zip
172,29 KB

Scarica allegato:

VLR-VLA-VLAX-Implemented.zip
14,07 KB
blubossa Inserito il - 29 dicembre 2010 : 16:30:58
ciao a tutti,

ho scritto questa routine che deve aprire, zommare e stampare i tutti i file dwg presenti in una directory, però c'è qualcosa che non mi funziona correttamente chi mi aiuta?

(vl-load-com)
(defun c:st_el ()

(setq percorso (getstring "immetti percorso: ")

(setq Lista_dwg (vl-directory-files PERCORSO "*.dwg" 1))

(setq conta 0)

(foreach aa lista_dwg

(setq aa (vla-open (vla-get-documents (vlax-get-acad-object)) aa))
(vla-activate aa)

(command "_zoom" "_e")
;;; (command "_plot" .......)

(command "_close" "_y")

(setq conta (+ conta 1))
)

);def


grazie
bb
Terminator Inserito il - 04 dicembre 2010 : 18:07:02
Messaggio inserito da Giuseppe Mauro

Termi, dove posso trovare tutte le funzioni VL e VLAX?
Nei doc che ho non se ne fa menzione


Dovresti trovare il tutto nell'help della documentazione per sviluppatori, almeno nella versione AutoCAD 2007-2008. Nella 2011 è questa:

http://docs.autodesk.com/ACD/2011/ITA/landing.html
Giuseppe Mauro Inserito il - 04 dicembre 2010 : 18:02:47
Termi, dove posso trovare tutte le funzioni VL e VLAX?
Nei doc che ho non se ne fa menzione
Terminator Inserito il - 04 dicembre 2010 : 17:19:50
(vl-directory-files PERCORSO "*.dwg" 1)

TuttoCAD Forum © 2001-2010 CADLandia Torna all'inizio della Pagina
Pagina generata in 0,14 secondi.