Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

VBA

0 views
Skip to first unread message

Gabriele Monti

unread,
Jul 1, 2005, 4:37:54 AM7/1/05
to

Salute a tutti!

Vorrei cimentarmi a giochicchiare con VBA per autocad (2002).
Ho trovato e stampato il tutorial che e' allegato con l'help.
Premetto che non conosco VB [!!] pero' leggendo qua e la', provando una
istruzione alla volta, chiedendo, riesco ad arrangiarmi.
C'e' una cosa che non capisco, e chiedo se qualcuno di voi ha tempo e voglia
per spiegarmela...
La differenza degli oggetti:
1.Blocks
2.Block
3.BlockReference.

Da quello che ho capito, 1. e' la collezione dei tipi di blocchi (ovvero se
nel disegno ho inserito i blocchi pippo e pluto, questa collection mi
restituisce pippo e pluto).
3. dovrebbe essere il codice di riferimento restituito da VBA quando
inserisco uno dei blocchi della collezione 1.
2. che cosa e'?

Il mio fine sarebbe di poter trovare tutte le corrispondenze del blocco
pippo sul disegno (modelspace).
Riesco ad ottenere la lista dei blocchi da 1., ma non riesco, con questo a
dire "individua il blocco pippo sul disegno".
Chiedo troppo ?

Saluti, Lele


Urali Polari

unread,
Jul 1, 2005, 9:29:30 AM7/1/05
to

la cosa è un po complessa da spiegare se non conosci la programmazione ad
oggetti.
Comunque considera che ogni entità è decrivibile nel codice come un oggetto,
in questo caso Block è un "tipo di oggetto" messo a disposizione dalle
librerie di Autocad; per crearne uno da codice devi "istanziare l'oggetto",
ossia definire un oggetto di quel tipo e poi crearlo. Mi spiego meglio:

Dim MioBlocco As Block 'definizione di una variabile di tipo blocco

....
....

Set MioBlocco = New Block 'creazione dell'istanza del blocco


a questo punto hai una variabile MioBlocco che ha tutte le caratteristiche
dei un blocco di Autocad, e quindi puoi da codice eseguire tutte le
operazione che normalmente fai con il cad.

Esistono poi particolari "contenitori" di oggetti che sono appuntoi le
collection che per convenzione hanno lo stesso nome dell'oggetto piu una s
(Blocks)
Puoi inserire il tuo od altri oggetti bella collezione (che è anch'essa un
ooggetto).

Ti consiglio comunque di leggere qualcosa sul VB prima di passare al VBA di
Autocad

0 new messages