Autore |
Discussione |
cantacad
Utente Master
662 Messaggi |
Inserito il - 16 aprile 2011 : 18:16:57
|
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
|
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 |
|
|
cantacad
Utente Master
662 Messaggi |
Inserito il - 17 aprile 2011 : 15:35:00
|
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! |
|
|
Terminator
Utente Master
725 Messaggi |
Inserito il - 17 aprile 2011 : 18:30:41
|
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"?
|
|
|
cantacad
Utente Master
662 Messaggi |
Inserito il - 17 aprile 2011 : 18:51:36
|
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 |
|
|
Terminator
Utente Master
725 Messaggi |
Inserito il - 17 aprile 2011 : 19:02:42
|
| 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 |
|
|
Terminator
Utente Master
725 Messaggi |
Inserito il - 17 aprile 2011 : 21:37:19
|
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
|
|
|
arri
Utente Master
Regione: Lombardia
14951 Messaggi |
Inserito il - 18 aprile 2011 : 09:18:13
|
Messaggio inserito da Terminator
Scarica allegato:
Rintab.zip 2,34 KB
è un lisp unico, manca il marchio doc by Terminator
|
|
|
Terminator
Utente Master
725 Messaggi |
Inserito il - 18 aprile 2011 : 09:42:10
|
| 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 |
|
|
cantacad
Utente Master
662 Messaggi |
Inserito il - 18 aprile 2011 : 19:22:41
|
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! |
|
|
Terminator
Utente Master
725 Messaggi |
Inserito il - 18 aprile 2011 : 19:48:28
|
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 |
|
|
Terminator
Utente Master
725 Messaggi |
Inserito il - 19 aprile 2011 : 09:21:25
|
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 |
|
|
cantacad
Utente Master
662 Messaggi |
Inserito il - 19 aprile 2011 : 10:16:02
|
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 |
|
|
Terminator
Utente Master
725 Messaggi |
Inserito il - 19 aprile 2011 : 10:50:24
|
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*. |
|
|
cantacad
Utente Master
662 Messaggi |
Inserito il - 19 aprile 2011 : 18:24:34
|
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! |
|
|
Terminator
Utente Master
725 Messaggi |
Inserito il - 19 aprile 2011 : 18:26:31
|
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 |
|
|
arri
Utente Master
Regione: Lombardia
14951 Messaggi |
Inserito il - 20 aprile 2011 : 07:56:54
|
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
|
|
|
arri
Utente Master
Regione: Lombardia
14951 Messaggi |
Inserito il - 20 aprile 2011 : 11:16:24
|
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
|
|
|
arri
Utente Master
Regione: Lombardia
14951 Messaggi |
Inserito il - 20 aprile 2011 : 12:48:48
|
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 |
|
|
Terminator
Utente Master
725 Messaggi |
Inserito il - 20 aprile 2011 : 13:19:28
|
Per risparmiare click rischia di doverne fare mooooooooolti di più!
|
|
|
Giuseppe Mauro
Amministratore
Regione: Campania
Prov.: Napoli
2707 Messaggi |
Inserito il - 20 aprile 2011 : 14:41:24
|
Mah, questa problematica sarebbe facilmente aggirabile consegnando ai fornitori il proprio blocco e dicendogli devi compilare questo, altrimenti non accetto il dwg... |
|
|
Discussione |
|