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

参考文献

  • Thread starter Thread starter blubossa
  • Start date Start date

blubossa

Guest
ho bisogno di utlizzare da lisp il refedit
in pratica seleziono un numero n di blocchi a cui voglio fare un refedit quindi fare delle operazioni, salvare e chiudere, e quindi passare all'altro blocco.

ho qui tre righe di codice per testare il refedit, ma sembra che non funzioni e che voglia per forza una selezione del blocco da parte dell'operatore.

consigli in merito??

(setq aa (ssget))
(setq e_dima (ssname aa 0))
(command "_-refedit" e_dima "" pause pause)
 
credo che refedit pretenda un punto di selezione e non il nome dell'oggetto, prova così:

(setq aa (ssget))
(setq e_dima (ssname aa 0))
(setq p_ins (cdr (assoc 10 (entget e_dima))))
(command "_-refedit" p_ins "" ............... )

il comando seleziona l'oggetto sul punto d'inserimento del blocco appena calcolato, visto che in teoria potrebbero esserci altri oggetti selezionabili tramite quel punto ti conviene inserire una condizione
(if (= (cdr (assoc 0 (entget e_dima))) "insert") --->>>
e meglio ancora un draworder (davanti) di e_dima
 
credo che refedit pretenda un punto di selezione e non il nome dell'oggetto, prova così:

(setq aa (ssget))
(setq e_dima (ssname aa 0))
(setq p_ins (cdr (assoc 10 (entget e_dima))))
(command "_-refedit" p_ins "" ............... )

il comando seleziona l'oggetto sul punto d'inserimento del blocco appena calcolato, visto che in teoria potrebbero esserci altri oggetti selezionabili tramite quel punto ti conviene inserire una condizione
(if (= (cdr (assoc 0 (entget e_dima))) "insert") --->>>
e meglio ancora un draworder (davanti) di e_dima

avevi ragione gp richiede proprio un punto, l'ho testato e funziona, ecco qui l'ultima stringa comnpleta:

(command "_-refedit" p_ins "" "" "_ok" p_ins "" "").

sinseramente non ho capito la seconda parte del suggerimento quella relativa al draworder.
me la chiarisci??

e poi ho una bella difficoltà, quella di avere tanti blocchi il cui punto di inserimento è nel mezzo della figura (polilinewa chiusa) quindi su quel punto non trovo nessun oggetto da selezionare.

mi è venuta in mente di far partire una linea che parte dal punto d'inserimento del blocco verso sinistra, e ricavare il primo punto di interesezione che incontra, quello sarà il mio punto per il refedit.

che ne pensi??

però non so come trovare il punto di intersezione.
hai qualche suggerimento?

grazie
 

Attachments

credo di si, ma prima dimmi una cosa, non puoi utilizzare -bedit e bclose visto che autolisp accetta il nome del blocco da modificare?

attualmente sto lavorando con la versione 2002 e questi comandi non esistono.
 

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