Calcolo orientamento superfici

athanatos

Utente Junior
professione: Ingegnere
software: Autocad (LT o FULL) da 2000 in avanti
regione: Italia
Buongiorno a tutti!
Sono un vecchio/nuovo utente del forum: vecchio perchè seguo i vostri thread da molto tempo (e devo ringraziarvi perchè mi hanno aiutato molto); nuovo perchè esco dal lurk per postare un quesito.

In questo periodo (all'inizio della mia professione) mi sto occupando di certificazioni energetiche di edifici: partendo dalle planimetrie scansionate o dwg devo calcolare le superfici in pianta e i volumi lordi e netti. Questa parte la risolvo con gli hatch.

Vorrei sapere se esiste un lisp / vba che selezionata una linea (e impostata un'altezza interpiano) mi calcola la superficie VERTICALE e crea una tabella con le superfici suddividendole per orientamento (nord sud ovest est). Il passo successivo sarebbe poi esportarla in excel per metterla nel mio programma per le certificazioni, ma quello credo di poterlo risolvere con altri codici trovati in rete.

Posto la mia domanda qui perchè ho una modestissima esperienza in vba, al contrario del lisp che mi è completamente alieno...

Grazie mille a chi potrà aiutare

Saluti
 
Ultima modifica:

rpor66

Utente Standard
professione: Programmatore
software: Lisp, Vba per Autocad, BricsCad e GstarCAD, CadWorx
regione: Sicilia
Il file allegato è in excel con macro, con autocad avviato, clicca sul pulsante e seleziona in ordine da nord in senso antiorario (nord, ovest, sud, est) le linee che rappresentano le superfici da calcolare; estrae le lunghezze e le moltiplica per l'altezza impostata in cella B1 riportando il risultato in colonna B.
E' fatto per funzionare con autocad versione 2011÷2013, io ho il 2013, se il vba ti da errore, ricordati di selezionare la giusta libreria in RIFERIMENTI (lo trovi sotto vba di excel).

bye
 

Allegati

  • ESP.zip
    33.4 KB · Views : 40

athanatos

Utente Junior
professione: Ingegnere
software: Autocad (LT o FULL) da 2000 in avanti
regione: Italia
Ciao, sei stato gentilissimo! Domani mattina lo provo sul pc dell'ufficio e faccio sapere come va. Anche io in ufficio uso Autocad 2013 quindi non dovrei avere problemi.

Grazie mille
e
Buon week end

Saluti
 

athanatos

Utente Junior
professione: Ingegnere
software: Autocad (LT o FULL) da 2000 in avanti
regione: Italia
Ciao, ho provato a farlo girare e ho incontrato un errore causato dal fatto che ho autocad architecture 2013. Ho quindi deciso di anteporre un apice (') alla funzione relativa alle versione di autocad (il select case per intenderci) per farla diventare una nota e... funziona benone!

Ho in mente qualche piccola modifica che farò non appena avrò un attimo di tempo (che avrò cura di postare qui).

Ti ringrazio perchè da solo non ci sarei riuscito!

Grazie e buon lavoro
 

athanatos

Utente Junior
professione: Ingegnere
software: Autocad (LT o FULL) da 2000 in avanti
regione: Italia
Buonasera a tutti! Continuo questa discussione per portarvi all'attenzione un piccolo software che può aiutare chi, come me, effettua certificazioni energetiche.

Nel corso degli ultimi mesi ho effettuato alcune certificazioni energetiche e, a causa del software di calcolo in dotazione, mi sono reso conto che la maggior parte del tempo viene persa nel calcolo della geometria dell'edificio (escludendo il sopralluogo e la ricerca dei dati sugli impianti... che non si trovano MAI!).

Il problema ha avuto una piccola soluzione con il foglio di calcolo gentilmente fornito dall'utente rpor66: ho però deciso di creare un codice in ambiente autocad perchè può risultare più semplice per chi non possiede Excel ma Open Office (alcuni comandi vba non sono implementati).

Il software che vi propongo permette di:
- selezionare i lati di un edificio
- spostarli in layer dedicati in funzione dell'esposizione (nord, sud, ovest, est, nord-ovest, etc...)
- scrivere un testo al centro del lato considerato con il codice assegnato e un numero progressivo
- riunire tutti i dati raccolti in una lista box
- esportare il contenuto in formato *.csv liberamente apribile da Excel o Open Office.

A questo punto è possibile, da parte dell'utente, moltiplicare le lunghezze dei lati per l'altezza trovando così le superfici disperdenti che si intendono inserire nel software di calcolo per la creazione dell'ACE (nella mia regione ce n'è uno dato dall'Amministrazione Regionale, unico nel suo genere perchè le software house non hanno ancora prodotto il modulo dedicato al metodo di calcolo introdotto - vedi Ediclima etc).

Il software è stato realizzato a partire dai codici PickPoints002, PickPoints004 e Numbering002 creati dall'utente Afazio (che ringrazio). Ammetto di essere un ingegnere piuttosto pigro, ragion per cui ho deciso di prendere questi codici pregevoli e modificarli per le mie esigenze.

Ho deciso di chiamare il software FrankenACE dall'unione del nome Frankenstein (a causa dei copia / incolla dei codici) e con l'acronimo ACE (il cui significato è indicato nel titolo della discussione). Il software è in versione beta (1.01) perchè fa quello che voglio ma è ancora abbastanza rozzo. Nella scheda sviluppi ho indicato alcune modifiche che vorrei fare anche con l'aiuto degli utenti di questo forum e di quello baringegneria (visto che sono utente da entrambe le parti, sempre che non sia un problema per gli amministratori). In effetti ho postato sia qui che su baringegneria per evitare di spostare l'attenzione da un forum ad un altro.

Il software è incorporato all'interno di un file di autocad. Per farlo funzionare assicuratevi di avere installato il vba enabler di autocad (nuove versioni): a questo punto potete accedere al codice premendo la combinazione di tasti ALT F11 oppure andando nel menu Strumenti, Macro, Gestione VBA. Arrivati nella finestra di VBA premete il tasto F5 per attivare il progetto.

Il file di autocad contiene la planimetria di un edificio random su cui potete esercitarvi. Nell'archivio *.zip potete anche trovare il risultato dell'esportazione dei due esempi di cui trovate l'effetto nello stesso file di autocad.

Spero che sia utile anche ad altre persone e che gli utenti mi diano pareri/consigli e qualche aiutino per migliorare il codice.

Ringraziando tutti per la cortesia e l'attenzione

Saluti

PS rimango a disposizione per eventuali chiarimento. Chiedo solo di avere pazienza perchè, come tutti, in settimana sono molto impegnato. :(
Potete trovarmi anche sul forum ingegneriaforum oltre a qui e baringegneria (nome utente athanatos o Bruno Palmero)
 

Allegati

  • Macro CAD.zip
    227 KB · Views : 30

vitto_86

Utente poco attivo
professione: ingegnere
software: autocad
regione: lombardia
vi linko un lavoro che ho fatto un pò di mesi fa e ho pubblicato sul mio blog, ho preso spunto anche dall'idea sulla quale si basa "calcolo orientamento superfici".
In sintesi:
INZIO DA EXCEL:
-scrivo per ciascuna cella il nome di un layer che voglio creare;
-automaticamente cliccando "get layer" copio i nomi dei layer che verrano creati su un file autocad;
-cliccando "open .dwg" si aprirà automaticamente il file .dwg scelto con i nuovi layer definiti in excel, a questo punto si lavora in autocad;
DA AUTOCAD:
-seleziono uno dei layer che ho creato precedentemente e ci disegno sopra, disegno linee/polilinee/testo;

-->posso disegnare quante linee/polilinee/testo che voglio con un qualunque file .dwg anche molto complesso<----

RITORNO SU EXCEL:
-dopo aver disegnato tutte le linee/polilinee/testo che voglio ritorno su excel e seleziono il foglio dove voglio che le proprietà vengono importate;
-cliccando selezionando uno tra "lines/polylines/text" e successivamente "get properties" importerò automaticamente, per ciascuna riga sul foglio selezionato, le proprietà di ciascuna linea o polilinea o testo.

E NON E' TUTTO!

dopo aver importato le proprietà su excel è possibile aggiornare in un secondo momento il foglio con l'elenco di tutte le proprietà (come se fosse un database aggiornabile)--->se modifico una linea, aggiungo una linea, aggiungo testo, nel .dwg con tale nome, in un secondo momento se si clicca su "get properties" si aggiornerà automaticamente il computo delle linee di quel file!
In questo modo è possibile gestire il computo di più file .dwg contemporaneamente in un unico foglio excel!

http://adtabe.blogspot.it/2013/11/excel-vba-computator-11-automatic.html
 

Statistiche forum

Discussioni
59,371
Messaggi
505,788
Utenti registrati
111,046
Ultimo utente registrato
Rossano Espa

Utenti online

Top