Newsgroup: it.discussioni.geometri
Titolo: Docfa 3 e le Polilinee chiuse viste come aperte

Come la maggior parte di voi ho iniziato a provare il Docfa 3.
Sono rimstao bloccato per qualche giorno sui sull'importazione
dei file .DXF perchè mi compariva il seguente errore:
    Sogei - Gestione Elaborati Grafici
    Polilinea non risulta chiusa
In realtà le polilinee erano tutte chiuse... Ho persino creato un
programmino in Lisp che selezionando una o più polilinee mi dice
quante sono chiuse e quante e quali sono aperte evidenziandole.
Ho girato un pò intorno al problema e ho risolto. Il tutto è dovuto
ad una impostazione sicuramente poco comune (perchè non predefinita)
di AutoCAD, ma può capitare a qualche altro... quindi la posto qui
e tra breve la metto anche nel mio sito :-))
Se su AutoCAD avete impostao la variabile di sistema "PLINEGEN" a "1", per
visualizzare il tipolinea delle polilinee con un tratteggio uniforme, il
Docfa 3.0 non le riconoscerà come "Chiuse".
Questo perchè l'impostazione "PLINEGEN" viene codificata in bit nello
stesso codice DXF (70) che indica se la polilinea è chiusa o aperta,
seguendo questa logica:
LWPOLYLINE:
70 Flag della polilinea (codificato in bit); default è 0:
1 = chiusa
128 = plinegen
70 Flag della polilinea (codificato in bit); default è 0:
1 = Questa è una polilinea chiusa (o una mesh poligonale chiusa verso la
direzione M).
2 = Sono stati aggiunti dei vertici adattati alla curva.
4 = Sono stati aggiunti dei vertici adattati alla spline.
8 = Questa è una polilinea 3D.
16 = Questa è una mesh poligonale 3D.
32 = La mesh poligonale è chiusa verso la direzione N.
64 = Questa polilinea è una mesh poliedrica.
128 = Il modello del tipo di linea è generato in maniera continua attorno al
vertice di questa polilinea.
La "LWPOLYLINE" è come la normale "POLYLINE", solo che occupa meno
spazio e viene visualizzata/rigenerata più velocemente da AutoCAD,
ma non può essere usata (se non ricordo male) per le spline e per
le mesh.
Se impostate "PLINEGEN" su 1, e create una LWPOLYLINE/POLYLINE chiusa,
il valore del codice DXF "70", che vale "1" (perchè è chiusa) viene
incrementato di 128 per indicare che deve essere usata quella particolare
visualizzazione, quindi risulterà 1+128=129.
Il Docfa probabilmente trova un valore diverso da 1 (appunto 129) e
quindi genera l'errore "Polilinea non risulta chiusa".
L'impostazione "PLINEGEN" agiusce sulle nuove Polilinee create e non su
quelle
già create. Ma non occorre ricrearle da zero per modificare
quell'impostazione,
basta usare il comando "AI_PROPCHK" e seleziondo una Polilinea per volta,
togliere il segno di spunta alla voce "Gen. Tlinea".
In alternativa potete scaricare dal mio sito (indirizzo nella Sign) un
piccolo
file in lisp chiamato "Docfa3.lsp" che di una selezione di polilinee vi dice
quante ne ha trovato, quali e quante sono aperte (evidenziandole), quante
sono
chiuse e quante di quelle chiuse avevano l'impostazione "Gen. Tlinea"
attivata
(ovviamente l'impostazione viene eliminata automaticamente).
P.S.
Il programmino in Lisp dovrei mettero nel sito entro un paio di giorni
--
Daniele Pinna  (leva oops. per rispondere) * ICQ 24567484
Sito Web: Il DoCFa in Pillole: 
www.dapinna.too.it

 
Perfetto ! E inoltre non si puo' asociare ai vertici della LWPOLYLINE
diverso valore della coordinata Z.
Non ce ne frega niente per il DocFa, era solo per mettere il "puntino 
sulle i"  :-))
Ciao e grazie per tutte le info che ci dai
Michele
-- 
Posted from 
ppp-64-11.30-151.libero.it
 [151.30.11.64] 
via Mailgate.ORG Server - 
http://www.Mailgate.ORG


Non uso AutoCad,  ma volevo esprimere il mio grazie per la collaborazione e
i cortesi consigli GRATUITI che metti in linea e per le cortesi consulenze
molto semplici e comprensibili a tutti anche a me che di programmazione NON
NE CAPISCO NIENTE!!!!
Grzie ancora.
Maurizio Cerato

 sulle i"  :-))
Invece può essere una informazione utile...
Ormai alcuni di noi usano dei programmi "verticali" per generare
in automatico il 3D e magarli li usiamo anche per creare le planimetrie
catastali... può capitare quindi di fare una polilinea che si trova su
una "Z" diversa da "0".


 Grzie ancora.
Ciao :-))
Come ho già detto qualche altra volta i newsgroup servono proprio
per questo...
Venire a conoscenza di info utili e poi tenersele per se o "dirle"
solo a poche persone è una cosa che non mi è mai piaciuta...
Inoltre anche io attingo molto da questo NG in altri campi o nel
docfa stesso ... ma anche in altri NG, dove dove so che se faccio
una domanda c'è sempre qualcuno che mi risponde risolvendomi il
problema :-)
