Newsgroup: it.comp.lang.visual-basic
Titolo: Profilo esterno di un file DXF

Ho un file DXF contenente linee, archi e cerchi che sono tutti sullo stesso
livello.
Da questo DXF ottengo il tipo di linea ( LINE, ARC o CIRCLE) ed i relativi
dati (X0, Y0, X1, Y1, R0,...).
Qualcuno puņ aiutarmi a trovare le linee che compongono solo il profilo
esterno?

 esterno?
Presumo che tu conosca già come leggere ed interpretare i dati di un 
file .DXF
Tempo fa mi sono posto anche io il problema ... e mi sa tanto che lo
scopo sia lo stesso (piano quotato? ;-)) ) ma non sono mai andato
oltre che degli appunti su carta per cui ora non saprei dove cercarli.
Dovresti prima leggere il file .DXF e creare un Database degli oggetti
dove memorizzi il tipo di oggetto e le coordinate.
Il mio ragionamento presume che più che linee, archi e cerchi, si tratti
di Punti (POINT)
Dovrai passare tutte le coordinate cercando quelle che hanno, ad
esempio, il valore più basso di X. Ti ritrovi ora con il punto più a
Sinistra.
Cerca ora fra tutte i punti rimanenti, quelli che risultano più vicini
(magari mettili tutti in ordine di distanza dal punto corrente) e 
seleziona il "secondo punto" cercando quello che si trova più a sinistra
e più in alto. E così via. Chiaramente la ricerca dei punti che si 
trovano più a sinistra o più in alto ad un certo punto dovrà cambiare
e quindi dovrei impostare un ordine di ricerca, se non funziona uno
passi al successivo:
- quello più a sinistra e più in alto
- quello più a destra e più in alto
- quello più a destra e più in basso
- quello più a sinistra e più in basso
Chiaramente questo metodo di ricerca vale se parti da un punto che si 
trova a sinistra.
Altra cosa (anche se è ovvia) è che ogni volta che confermi un nuovo
punto dovresti toglierlo dall'elenco dei punti da cercare.
Buon lavoro :-)))
Spero che dopo avrai sviluppato questo algoritmo lo invierai al sito 
comune :-)))
-- 
Daniele Pinna  (leva oops. per rispondere) * ICQ "chiedilo"
Sito Web: Il DoCFa in Pillole: 
www.dapinna.com

 comune :-)))
io sarei interessato alla semplice lettura del DXF invece, ne sto provando
molti di ocx free, per caso qualcuno usa una lettura via codice dei file dxf
? Notizie ? Info ? Cosa vi piace utilizzare e che possibilmente sia royalty
free o totalmente free ?
PS: per l'algoritmo non dovrebbe essere un problema.
io disegnerei il mio DXF e mentre disegno memorizzo i massimi per le 4
coordinate ( 00,0x,0y,xy ) che compongono il mio "bordo esterno",
chiaramente questo metodo prevede degli assiomi da rispettare :
1) non puo' eistere un punto esterno al perimetro
2) non possono esistere + perimetri sullo stesso layer
3) i punti dovrebbero essere legati tra loro senza intersecarsi con altri
oggetti
4) dovrebbe essere un rettangolo ortogonale.
Dato questo l'algoritmo e' semplice:
1) consideriamo il primo punto che troviamo nel dxf e assegnamolo ai 4 punti
:
(00) = p0
(x0) = p0
(0y) = p0
(xy) = p0
2) scorriamo tutti i punti e valorizziamo i 4 massimi
a questo punto abbiamo i 4 lati del nostro disegno
-----------------------
Lo so che e' troppo ristretto ma e' velocissimo come algoritmo e nella
maggioranza dei casi basta e avanza.
-- 
-Gigio@Work(?)-

 maggioranza dei casi basta e avanza.
Se, come penso, serve per un piano quotato, è troppo risretto :-))
