Newsgroup: it.comp.software.cad
Titolo: [LISP]scrivere un testo dentro una polilinea

dovrei creare un lisp che scriva dentro la polilinea (lowpoly) selezionata
un testo prestabilito.
Come far si che questo testo venga adattato "dentro" la polilinea?
Non è che mi servono andamenti del testo particolari, l'importante è che sia
tutto contenuto all'interno della polilinea e più grosso è scritto, meglio
è.
Da dove parto?
La prima cosa che mi viene in mente è usare le x e y di tutti i vertici
della polilinea, farne le differenze parziali e trovare in qualche modo i
vertici più distanti e che formano un area più ampia.....bah.....neanche a
parole sono ancora riuscito a trovare un algoritmo adatto. Anche perchè un
area più ampia non sempre vuol dire una scritta più grossa (magari è un area
molto lunga ma alta pochissimo).
Avete idee?Righe di codice?
Nel caso esista un lisp già fatto, vorrei comunque trovare delle linee di
codice, poichè comunque questo è il primo passaggio di un lisp molto più
complesso.
--
Studio geometra MIRANO Dario
www.studiomirano.it
Progettazione - Direzione lavori - Catasto terreni e fabbricati -
Cartellonistica - Grafica 2D e 3D

 ha scritto nel messaggio
news:K4yzf.51993$eD5.8...@twister2.libero.it...





 è.
Il problema non è di facile soluzione soprattutto se il testo deve
adattarsi alla polilinea è quindi essere ruotato per ottenere
l'altezza maggiore possibile.
Ad esempio in un rettangolo alto, stretto e ruotato.
In altre parole, occorre trovare il miglior rettangolo
(che corrisponde alla "BoundingBox" del testo) che si
inserisca all'interno della Poly.
-- 
----------------------------------------------------------
Marc'Antonio Alessi - 
http://xoomer.virgilio.it/alessi
Per AutoCAD:
- Travi 2D: disegno automatico travi e pilastri in C.A.
  a 99€
- Elaborazione dati from/to Excel
- Librerie manufatti in assonometria
- Autolayers: gestione automatica dei layers
- Elaborazioni e stampe multiple e automatiche
- Parametrico 2D, Viterie 2D/3D, Esplosi 2D/3D
- AutoGroups: gestione automatica gruppi di layers
- SetUp del disegno con gestione automatica DimStyles
- Conversione automatica files Inventor a DWG e viceversa
  anche senza avere Inventor installato
- ...
----------------------------------------------------------


già, proprio questo.....diciamo che io posso semplificare dicendo che il
testo deve essere orizzontale. Eppure se ci pensiamo è più o meno la stessa
cosa che fa autocad quando inserisce una quota e decide se il testo deve
essere interno o esterno alla linea di quota .....chissà quanto codice c'è
dietro!

a pensarci un pò potrei anche provare una soluzione dove autocad prova a
inserire dentro la polilinea un quadrato sempre più grosso con origine in un
suo vertice, e così via per gli altri vertici. Alla fine il quadrato più
grosso è quello giusto.....dite che è una soluzione geometricamente
valida?Oppure ci sono altre possibilità di quadrati più grossi?
Per capire se il quadrato sborda dalla polilinea potrei dire al lisp di
fermarsi se il quadrato non viene più selezionato usando come poligono di
selezione la polilinea stessa in modalità NON crossing.....

 wrote in message
news:muSzf.53445$eD5.8...@twister2.libero.it...



hai dei siti o dei link utili dove potrei vedere come sviluppare
l'argomento?Credo sia una cosa piů di siti di matematica e geometria che non
di autocad.....magari anche siti di scienza delle costruzioni costruzioni

 di autocad.....magari anche siti di scienza delle costruzioni costruzioni
i siti  certamente nn mancano e anche io sono dell'opinione che sia
prevalentemente una questione di geometria. Penso che una ricerca su google
con "computational geometry" possa darti un valido punto di partenza.

proverò a fare un pò di ricerca, intanto sto cercando di semplificare un pò,
tipo dare al testo una dimensione minima e/o massima, fare in modo che debba
solo essere orizzontale,ecc..... vedremo. Intanto grazie dei tuoi pareri.
