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
 AutoCAD
 Rinomina attributi blocchi
 Nuova Discussione  Rispondi
 Versione Stampabile Bookmark this Topic Aggiungi Segnalibro
I seguenti utenti stanno leggendo questo Forum Qui c'è:
Pagina Successiva
Autore Discussione Precedente Discussione Discussione Successiva
Pagina: di 2

cantacad
Utente Master



662 Messaggi

Inserito il - 16 aprile 2011 : 18:16:57  Mostra Profilo Invia a cantacad un Messaggio Privato  Rispondi Quotando
Salve a tutti!

Breve incipt: una parte purtroppo consistente del mio lavoro consiste (ripurtroppo) nel copiare (come una scimmia) dati tecnici in appositi blocchi all'interno dei miei file perchè gli esecutivi della mia ditta hanno ovviamente uno standard grafico differente da quello utilizzato dai vari studi di progettazione...
Capite facilmente che risparmiare un click per ogni operazione che si ripete millemila volte genererà una fuga dal lavoro anticipata che vorrei concretizzare grazie alla vostra saggezza!
Se sarà il caso, aprirò una discussione per ogni punto affrontato perchè mi rendo conto che chiedo consigli sugli argomenti più disparati...i consigli di cui avrei bisogno sono i seguenti:
1) conoscete un mouse multitasti buono? vorrei settare 2 tasti con i comandi copia e incolla...mi hanno consigliato il logitech MX518...
2) conoscete un lisp che metta in relazione gli attributi di due blocchi differenti? mi spiego meglio, il mio blocco è sempre lo stesso, il blocco da cui attingo è sempre lo stesso per il lavoro in questione, vorrei associare i 2 blocchi in modo che il testo degli attributi del blocco origine finisca nei corrispondenti attributi del mio blocco...mi sono spiegato sufficientemente bene? mah...
3) esiste la maniera per cui nella finestra proprietà si metta direttamente sull'attributo cliccato sul blocco come avviene per l'edito blocchi avanzato? dovendo fare correzioni multiple la finestra proprietà risulta comodissima, se avesse anche questa possibilità sarebbe una gran cosa...

Modificato da - cantacad in Data 20 aprile 2011 18:54:23

Terminator
Utente Master



725 Messaggi

Inserito il - 16 aprile 2011 : 19:56:46  Mostra Profilo Invia a Terminator un Messaggio Privato  Rispondi Quotando
1)Lascio la risposta agli esperti.
2)Puoi ridefinire il blocco di origine da cui attingi in modo che sia come il tuo blocco?
3)Credevo che già la maschera di dialogo potesse bastare all'uopo.

Modificato da - Terminator in data 16 aprile 2011 20:00:14
Torna all'inizio della Pagina

cantacad
Utente Master



662 Messaggi

Inserito il - 17 aprile 2011 : 15:35:00  Mostra Profilo Invia a cantacad un Messaggio Privato  Rispondi Quotando
1)ok
2)...detta così sembra l'uovo di colombo, ma puoi spiegarti meglio?...ti mando un piccolo file dove ho cercato di spiegare quello che dovrei fare:
http://dl.dropbox.com/u/10583980/prova%20ridefinizione.dwg
il blocco "dati tabella" è quello che devo compilare con i dati del blocco origine "DB_SCH_TABELLA_SCHEMI_COMPILAZIONE_2"...seguendo l'ordine delle frecce ho trascritto quale sarebbe la combinazione finale da ottenere in "dati tabella"...
3)perdona ma non ho capito bene a cosa ti riferisci...quando seleziono un blocco cliccando su un attributo, non mi posiziono in automatico sull'attributo stesso nella finestra proprietà già aperta
Ciao!
Torna all'inizio della Pagina

Terminator
Utente Master



725 Messaggi

Inserito il - 17 aprile 2011 : 18:30:41  Mostra Profilo Invia a Terminator un Messaggio Privato  Rispondi Quotando
Chiedo scusa ma non ti seguo. Il blocco origine ha i valori non settati evidentemente, ma allora che attributi copio dal blocco di origine al blocco "dati tabella"?
Torna all'inizio della Pagina

cantacad
Utente Master



662 Messaggi

Inserito il - 17 aprile 2011 : 18:51:36  Mostra Profilo Invia a cantacad un Messaggio Privato  Rispondi Quotando
forse ho voluto semplificare troppo...
praticamente se noti i due blocchi sono inseriti dentro 2 tabelle che fanno la medesima cosa, descrivono dati di circuiti elettrici ma in maniera diversa! quindi ti faccio l'esempio per un solo attributo: sulla tabella gialla, per la riga "lunghezza linea" che nel blocco "dati tabella" è l'attributo con etichetta LINLUNG dovrò copiare il contenuto dell'attributo "LUNGHEZZA" del blocco DB_SCH_TABELLA_SCHEMI_COMPILAZIONE_2 della tabella bianca...

e questo millemilavolte...millemila combinazioni...

nella mia fantasia mi immagino un comando che quando clicco da un blocco all'altro trasferisce gli attributi come io ho prestabilito, es in questo caso LINLUNG=LUNGHEZZA...

prima però te ne sei saltato fuori con il discorso della ridefinizione che magari...

ciao
Torna all'inizio della Pagina

Terminator
Utente Master



725 Messaggi

Inserito il - 17 aprile 2011 : 19:02:42  Mostra Profilo Invia a Terminator un Messaggio Privato  Rispondi Quotando
Messaggio inserito da cantacad

prima però te ne sei saltato fuori con il discorso della ridefinizione che magari...


Non riesco ancora ad entrare nella testa delle persone! Non vedendo i due blocchi, mi sono sbilanciato con una possibile soluzione. E' la prima cosa che mi è venuta in mente, magari con qualche adattamento. Prima di scomodare il lisp vediamo se si trova una soluzione non cruenta!

Modificato da - Terminator in data 17 aprile 2011 19:24:46
Torna all'inizio della Pagina

Terminator
Utente Master



725 Messaggi

Inserito il - 17 aprile 2011 : 21:37:19  Mostra Profilo Invia a Terminator un Messaggio Privato  Rispondi Quotando
Devi cliccare prima la tabella originale e dopo la nuova tabella. Se non viene rispettata la sequenza o i blocchi non sono quelli giusti arriva un messaggio di errore.

Se funziona mi paghi non solo un caffè ma un pranzo!



Scarica allegato:

Rintab.zip
2,34 KB

Torna all'inizio della Pagina

arri
Utente Master


Regione: Lombardia


14951 Messaggi

Inserito il - 18 aprile 2011 : 09:18:13  Mostra Profilo Invia a arri un Messaggio Privato  Rispondi Quotando
Messaggio inserito da Terminator

Scarica allegato:

Rintab.zip
2,34 KB

è un lisp unico, manca il marchio doc by Terminator
Torna all'inizio della Pagina

Terminator
Utente Master



725 Messaggi

Inserito il - 18 aprile 2011 : 09:42:10  Mostra Profilo Invia a Terminator un Messaggio Privato  Rispondi Quotando
Messaggio inserito da arri

è un lisp unico, manca il marchio doc by Terminator


Hai ragione, ecco la nuova versione con qualche aggiustamento minimo.
Anche se chiunque può cancellare il "copyright" e spacciarlo per suo, troppo facile...

Scarica allegato:

Rintab.zip
3,23 KB
Torna all'inizio della Pagina

cantacad
Utente Master



662 Messaggi

Inserito il - 18 aprile 2011 : 19:22:41  Mostra Profilo Invia a cantacad un Messaggio Privato  Rispondi Quotando
WOW!!! FUNZIONA!!! e sicuramente lo utilizzerò in futuro............................però..................................
Ti sei perso un passaggio...la tabella originaria varia a seconda del lavoro...

Il comando ti permetterebbe di fare i miliardi se potesse mettere in relazione una tabella originaria a caso con una destinazione a caso allora potrebbe funzionare per ogni pinco pallino di questo mondo!

Comunque sono veramente sorpreso del mondo LISP...tipo quando mi sono iscritto ad un forum di excel e hanno cominciato a bombardarmi di macro!

Se passi da VR pranzo pagato sicuramente!
Torna all'inizio della Pagina

Terminator
Utente Master



725 Messaggi

Inserito il - 18 aprile 2011 : 19:48:28  Mostra Profilo Invia a Terminator un Messaggio Privato  Rispondi Quotando
Ok, si può anche mettere in relazione una tabella originaria a caso con una di destinazione a caso, però la sequenza degli attributi deve essere la stessa altrimenti casca il palco. Al limite posso mettere in relazione le tabelle che in comune hanno i primi caratteri:

Questo è l'originale dal file rintab.lsp:

(and (= (cdr (assoc 0 (entget nome))) "INSERT")
     (= (strcase (cdr (assoc 2 (entget nome)))) "DB_SCH_TABELLA_SCHEMI_COMPILAZIONE_2")
     (= (cdr (assoc 0 (entget nome2))) "INSERT")
     (= (strcase (cdr (assoc 2 (entget nome2)))) "DATI TABELLA")
)

Una possibile modifica può essere questa:


(and (= (cdr (assoc 0 (entget nome))) "INSERT")
     (wcmatch(strcase (cdr (assoc 2 (entget nome)))) "DB_SCH_TABELLA*")     
     (= (cdr (assoc 0 (entget nome2))) "INSERT")
     (wcmatch(strcase (cdr (assoc 2 (entget nome2)))) "DATI*")
)

In questo modo solo i blocchi che iniziano con DB_SCH_TABELLA e con DATI saranno presi in considerazione.

Modificato da - Terminator in data 18 aprile 2011 22:39:26
Torna all'inizio della Pagina

Terminator
Utente Master



725 Messaggi

Inserito il - 19 aprile 2011 : 09:21:25  Mostra Profilo Invia a Terminator un Messaggio Privato  Rispondi Quotando
Ho ridisegnato completamente il comando di rinomina tabelle, riducendo di brutto le righe di programmazione e usando le funzioni VisualLISP che faccio sempre un po' di fatica ad usare, malgrado siano molto più efficienti delle normali funzioni Lisp.



Scarica allegato:

Rintab.zip
1,78 KB
Torna all'inizio della Pagina

cantacad
Utente Master



662 Messaggi

Inserito il - 19 aprile 2011 : 10:16:02  Mostra Profilo Invia a cantacad un Messaggio Privato  Rispondi Quotando
Ok grazie, oggi la proverò, magari e definitiva...sai una cosa pero? pensavo che se imparassi a modificare la prima versione che hai realizzato in modo tale da salvarla per ogni tipo di schema "input" potrei farmi una raccolta clienti...es: rintab_studio_pinco rin_tab_studio_pallino e così via...cosa ne dici?
tra l'altro forse è il caso di cambiare il titolo della discussione
Torna all'inizio della Pagina

Terminator
Utente Master



725 Messaggi

Inserito il - 19 aprile 2011 : 10:50:24  Mostra Profilo Invia a Terminator un Messaggio Privato  Rispondi Quotando
Se conosci bene la sequenza e il numero degli attributi direi più che fattibile. Ti consiglio di utilizzare l'ultima versione, è anche più semplice per inserire nuove modifiche. L'unico dubbio potrebbe essere il nome del blocco-tabella che, per quanto possa presumere, dato che ci sono più studi tecnici diversi, non è lo stesso ogni volta. Infatti il comando agisce solo con blocchi il cui nome inizia per DB_SCH_TABELLA*.
Torna all'inizio della Pagina

cantacad
Utente Master



662 Messaggi

Inserito il - 19 aprile 2011 : 18:24:34  Mostra Profilo Invia a cantacad un Messaggio Privato  Rispondi Quotando
Ho provato l'ultima versione e purtroppo il risultato è stato

Comando:
RINTAB
Selezionare tabella originale: ; errore: no function definition:
VLAX-ENAME->VLA-OBJECT

Per rispondere al tuo ultimo commento invece direi che la cosa non va bene perchè appunto le tabelle "origine" cambiano a seconda del lavoro ed hanno nome diverso...ciao!
Torna all'inizio della Pagina

Terminator
Utente Master



725 Messaggi

Inserito il - 19 aprile 2011 : 18:26:31  Mostra Profilo Invia a Terminator un Messaggio Privato  Rispondi Quotando
Oops, mi dimentico sempre, aggiungi all'inizio del comando la riga:
(vl-load-com)

Per quanto riguarda la tabella puoi sempre rinominarla come il primo esempio che hai postato.

Modificato da - Terminator in data 19 aprile 2011 18:28:29
Torna all'inizio della Pagina

arri
Utente Master


Regione: Lombardia


14951 Messaggi

Inserito il - 20 aprile 2011 : 07:56:54  Mostra Profilo Invia a arri un Messaggio Privato  Rispondi Quotando
Messaggio inserito da cantacad
tra l'altro forse è il caso di cambiare il titolo della discussione


ti posizioni sul primo messaggio e lo modifichi in
Rinomina attributi blocchi
Torna all'inizio della Pagina

arri
Utente Master


Regione: Lombardia


14951 Messaggi

Inserito il - 20 aprile 2011 : 11:16:24  Mostra Profilo Invia a arri un Messaggio Privato  Rispondi Quotando
Messaggio inserito da Terminator
Anche se chiunque può cancellare il "copyright" e spacciarlo per suo, troppo facile...


possono ingannare il prossimo ma non loro stessi, dentro di loro sanno chi è il vero autore
Torna all'inizio della Pagina

arri
Utente Master


Regione: Lombardia


14951 Messaggi

Inserito il - 20 aprile 2011 : 12:48:48  Mostra Profilo Invia a arri un Messaggio Privato  Rispondi Quotando
Messaggio inserito da Terminator
però la sequenza degli attributi deve essere la stessa altrimenti casca il palco.


cantacad deve stare attento che qualcuno non gli faccia uno scherzo, mischiando le posizioni con il comando BATTMAN
Torna all'inizio della Pagina

Terminator
Utente Master



725 Messaggi

Inserito il - 20 aprile 2011 : 13:19:28  Mostra Profilo Invia a Terminator un Messaggio Privato  Rispondi Quotando
Per risparmiare click rischia di doverne fare mooooooooolti di più!
Torna all'inizio della Pagina

Giuseppe Mauro
Amministratore



Regione: Campania
Prov.: Napoli


2707 Messaggi

Inserito il - 20 aprile 2011 : 14:41:24  Mostra Profilo Invia a Giuseppe Mauro un Messaggio Privato  Rispondi Quotando
Mah, questa problematica sarebbe facilmente aggirabile consegnando ai fornitori il proprio blocco e dicendogli devi compilare questo, altrimenti non accetto il dwg...
Torna all'inizio della Pagina
Pagina: di 2 Discussione Precedente Discussione Discussione Successiva  
Pagina Successiva
 Nuova Discussione  Rispondi
 Versione Stampabile Bookmark this Topic Aggiungi Segnalibro
Vai a:
TuttoCAD Forum © 2001-2010 CADLandia Torna all'inizio della Pagina
Pagina generata in 1,17 secondi.