• このフォーラムは、www.cad3d.it/forum1 - イタリアのデザインコミュニティの機械翻訳です。いくつかの用語は正しく翻訳されていません。

↓ の complesi プログラミング

Lucacr88

Guest
ciao a tutti, da qualche giorno sto sbattendo la testa per creare degli script complessi per realizzare disegni in autocad, si tratta di un infinita di comandi gestiti da excel.
mi sono appunto creato il mio bel foglio excel che seguendo logiche di progettazione del componente mi calcola in automatico tutto ciò che desidero, con trigonometria e funzioni vado forte quindi posso stabilire alla grande ogni coordinata senza problemi.... ed ora vorrei sfruttare il tutto per crearmi il disegno in autocad con due clicks!!

non sono un grande esperto della codifica con gli scripts ma ho imparato le basi ed ho già fatto buoni passi in avanti!
il mio più grande problema per il momento è l impossibilità di creare tramite script smussi e/o archi di circonferenza cosi come di tagliare curve segmenti e via dicendo...
ho provato a risolvere il problema creando cerchi per poi tagliarne le parti che non desidero ed ottenere appunto il raccordo desiderato ma il comando taglia non mi funziona sempre al 100% e dipende molto dalle cifre decimali delle coordinate che calcolo...

ho anche provato ad usare il comando arco, sapendo sempre e cmq calcolare almeno 3 punti dello stesso pensavo avrebbe funzionato senza problemi ed invece si blocca sempre!
eseguo il comando, accetta il primo punto.... e poi si pianta li, non accetta il secondo punto e la finestra di dialogo dice che ha bisogno di coordinate 2d.... le ho provate tutte, coordinate di numeri interi o decimali, ho provato a non specificare la coordinata z=0, a fargli cambiare il riferimento tra (primo,secondo,fine) (primo,centro,secondo) ecc ecc ecc ma niente da fare :(

non è un problema di zoom o di codifica dei comandi, direi più che altro che non so simulare bene il pick e che mi sfugge qualcos altro :(

qualcuno di voi mi sa aiutare per risolvere il problema?

faccio un esempio banale casomai qualcuno avesse voglia di rispondermi con un esempio pratico:
ho due linee:
2,0,0 10,0,0
0,2,0 0,10,0
(quindi due linee lunghe 8 perpendicolari tra loro)

tramite calcoli so facilmente le coordinate di 3 punti che appartengono all arco:
0,2
2,0
0.586,0.586

e nel caso serva anche le coordinate del centro:
2,2

sapreste scrivermi lo script in grado di creare questo disegno?
preciso che io uso autocad 2013!
 
grazie mille dieva, alla fine sono riuscito a risolvere andando a tentativi :finger:

provo a chiedere un altro consiglio visto che mi sono bloccato su un altra stupidata....
come faccio a cambiare colore alle linee?

ho provato cambiando layer, usando il comando "color" ed usando il comando _amlayer_hatc ma non ne sono ancora uscito :(
lo scopo è di creare una serie di linee e curve bianche per poi disegnarne anche una serie di rosse, l idea che volevo seguire era di attivare il colore rosso dove serve per poi riattivare il bianco e viceversa, sarebbe un po scomodo avere 1500linee di comando "bianche" e 1500 "rosse" separate tra loro in blocchi perché spesso i due tipi di linee appartengono allo stesso componente e separarle creerebbe non poca confusione :/

oltre al colore c è la differenza di spessore linea, per questo usare layer standard di autocad coi comandi _amlayer_"" sarebbe star molto comodo!

qualche suggerimento? :)
 
mi sa che l'unica soluzione è con i layer .
o ne crei 2, uno con colore bianco ed uno con colore rosso e di volta in volta li rendi correnti tramite il comando _amlayer oppure, se vuoi tenere gli oggetti tutti su un unico layer al fine di sottolineare l'appartenenza ad uno stesso componente, ti servirà solo cambiare colore alle linee di colore diverso da quello del layer di appartenenza. le altre 1500 naturalmente avranno il colore del layer.
quindi ad esempio se il layer corrente ha colore bianco devi solo cambiare colore alle linee di colore rosso. utilizzerai il comado _color prima di disegnare la liena o _change dopo averla disegnata.
un'altra alternativa più elegante potrebbe essere quella di disegnare gli oggetti di colore rosso con delle polilinee in maniera da poterle selezionare con una istruzione autolisp da passare al comando cambia alla fine dello script velocizzando tutta la procedura:
;inizio script
_change
(ssget "x" '((0 . "polyline")))

_p
_c
1

;fine script
 
grazie ancora per la risposta!
in realtà i colori non servono ad identificare diversi componenti tra di loro ma a identificare parti di ogni singolo componente non fondamentali oppure proiezioni ecc.

con _colore pensavo di aver risolto ma si blocca sempre sulla finestra di dialogo e non riesco ad aitomatizzarlo, mi piace l idea dei layer ma non so gestirla per niente, non so i comandi per crearne uno nuovo e per poi intercambiarli tra loro :/

col comando _amlayer_hatc si imposta sull utilizzo di un layer colore rosso con spessore linea 0,25 (che è ciò che voglio per quel tipo di linee) ma poi.... anche se i comandi successivi dicono di disegnare linee archi ecc li disegna sempre e solo bianchi!
ho controllato che le linee prendono il colore da "layer" e provando a tracciare linee e quant altro manualmente col layer hatc attivo effettivamente me le disegna rosse...

non so proprio come uscirne, saresti cosi infinitamente gentile da scrivermi uno script (non lips ma un semplice foglio di testo) di uno script che da solo disegna una linea bianca poi una rossa ed infine un altra bianca?
magari inserendomi anche le righe di comando che creano i layers che poi verranno usati per disegnare?

in ogni caso grazie per l aiuto, sei il numero uno :)
 

Forum statistics

Threads
46,674
Messages
380,976
Members
2
Latest member
loop80
このフォーラムは、www.cad3d.it/forum1 - イタリアのデザインコミュニティの機械翻訳です。いくつかの用語は正しく翻訳されていません。

Members online

No members online now.
Back
Top