PDA

Visualizza Versione Completa : RISOLTO: Elevazione di punti relativa a superficie 3D



emigrato
04.10.2011, 08:34
In riferimento a questo (http://novara.orangespace.pl/civil3d/quota_relativa.zip) modello, mi e' stato chiesto di calcolare la quota dei punti rossi rispetto alla sottostante superficie TIN: non avendo in mente un automatismo, giro il problema qua nel forum.

Faccio notare che i punti nell'esempio sono una quarantina, ma potrebbero essere 400, 4000 o 40000...

http://sieradz.orangespace.pl/civil3d/smile.gif

guido.bonin
07.10.2011, 19:38
Questa la so...


In Civil 3D devi prima convertire in punti COGO (Civil 3D) i punti che stai considerando (da punti Autocad, nel file che hai dato):
Consiglio di disattivare la richiesta Nomi punto, per non dover dare il nome di ogni punto (si può comunque premere invio dalla linea di comando...)
Converti punti Autocad:
Si selezionano i punti:
Selezioni tutti i punti nella Toolspace (area strumenti):
Tasto destro del mouse, esporta:
Scegli un formato cvhe abbia la quota (Z) e il nome del punto (P) (Ma che template hai usato, quello cinese..??)):
(io salvo in csv, che lo trovo più comodo per excel, che uso in seguito)
Riselezioni tutti i punti, tasto destro -> Quote altimetriche da superficie:
Selezioni la superficie:
Rivai nella lista punti ed esporti di nuovo (noterai che sono cambiate le quote):
Ovviamente un altro nome del file:
Vai su excel e apri entrambi i file, poi copi uno dei due a fianco dell'altro (verifica che l'ordine dei punti sia lo stesso)
Ora ti basta mettere la formula per fare la difefernza tra le quote e sei a posto.

spero di averti aiutato stavolta,


(Ps: avevo fatto tutte le immagini, ma me le ha cancellate in fase di rigenerazione della pagina..se ti serve o non capisci ti rifaccio l'esercizio)
ciao

Guido

emigrato
10.10.2011, 08:51
Grazie Guido,
purtroppo non mi sono spiegato bene, e di questo chiedo venia.
Non si tratta di calcolare la differenza di quota in un programma esterno, bensi' di associare ad ogni punto (in Autocad) l'elevazione relativa alla superficie, o come attributo o come Object_data.
In altre parole, cliccando sulle proprieta' di un punto qualsiasi, dovrebbe potersi leggere quella quota relativa, oltre ovviamente all'elevazione assoluta rispetto al piano XY...
http://sieradz.orangespace.pl/civil3d/smile.gif

guido.bonin
10.10.2011, 12:07
quindi l'inverso del tool che sta in Civil 3D che legge gli attributi (o la scritta) di un blocco e la assegna come quota a un nuovo punto?

Si può fare, credo, ma in due parti: prima usi Civil 3D per proiettarli su una superficie (leggi la quota, così) e poi fai questa cosa (magari devi ritrasformarli in punto Autocad base?).

mi mancano sicuramente un paio di passaggi, ma con un programmino in VBA/Lisp si fa sicuramente (non so se esiste un comando diretto).

ciao

Guido

melo
10.10.2011, 15:56
Da quel che ho capito tu vorresti scrivere sul punto l'informazione della quota dello stesso e la differenza che lo stesso ha rispetto ad una superficie sottostante?

Potresti fare così:


guido.bonin
Questa la so...
In Civil 3D devi prima convertire in punti COGO (Civil 3D) i punti che stai considerando (da punti Autocad, nel file che hai dato):
Consiglio di disattivare la richiesta Nomi punto, per non dover dare il nome di ogni punto (si può comunque premere invio dalla linea di comando...)
Converti punti Autocad:
Si selezionano i punti:
Selezioni tutti i punti nella Toolspace (area strumenti):
Tasto destro del mouse, esporta:
Scegli un formato cvhe abbia la quota (Z) e il nome del punto (P) (Ma che template hai usato, quello cinese..??)):
(io salvo in csv, che lo trovo più comodo per excel, che uso in seguito)
Riselezioni tutti i punti, tasto destro -> Quote altimetriche da superficie:
Selezioni la superficie:
Rivai nella lista punti ed esporti di nuovo (noterai che sono cambiate le quote):
Ovviamente un altro nome del file:
Vai su excel e apri entrambi i file, poi copi uno dei due a fianco dell'altro (verifica che l'ordine dei punti sia lo stesso)
Ora ti basta mettere la formula per fare la difefernza tra le quote e sei a posto.

Arrivato a questo punto avrai un file così strutturato

id est nord quota diff_quota

reimporti il file in civil, facendo attenzione ad importare la colonna diff_quota come "commento o descrizione".

Poi crei l'etichetta in cui farai comparire quello che ti serve.

L'unico inconveniente è che il tutto non è dinamico, e quindi se varia la superficie base o la posizione (est,nord) del punto dovrai rifare il processo.

Saluti.



Oppure (non ho sperimentato se funziona):
Crei la superficie di riferimento (quella a cui riferire le quote), poi crei una superficie con i punti che vuoi quotare, dopodichè crei una superficie volumetrica come differenza delle due.
Dovresti poter associare al punto la quota della superficie volumetrica, ma non ho ancora sperimentato come fare. anzi addirittura potresti inserire la quota relativa alla prima superficie e la quota relativa alla seconda...

emigrato
10.10.2011, 16:33
facendo attenzione ad importare la colonna diff_quota come "commento o descrizione"
Bravo, ecco l'anello mancante: crearsi un file in formato PENZD.

Ringrazio entrambi, e' stato un onore poter contare sulla sinergia del forum.

http://sieradz.orangespace.pl/civil3d/smile.gif

P.S.
Caro Guido, puoi aggiungere il prefisso "RISOLTO" al titolo della discussione.

guido.bonin
10.10.2011, 18:15
fatto, effettivamente è utile aggiungere lo stato "RISOLTO"...

ciao

Guido