| Правила | Регистрация | Пользователи | Сообщения за день |  Справка по форуму | Файлообменник |

Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > Express

Express

Ответ
Поиск в этой теме
Непрочитано 18.10.2004, 20:03 #1
Express
Ден
 
Сообщений: n/a

В экспрессе есть команды: extrim и команда для нумерации текста.Подскажите пожалуйста, как сделать так, чтобы эти команды работали отдельно от Express.
Просмотров: 3406
 
Непрочитано 18.10.2004, 22:30
#2
vk

сисадмин
 
Регистрация: 26.08.2003
Самара
Сообщений: 1,022
<phrase 1=


Можно то оно можно.... Наковырять нужные файлы (кроме основого Лисп-файла нужны еще какие то файлы вспомогательных функций) из папки Экспрессов и подгружать их по мере необходимости... Ну, потратите час или два, а может быть пять, чтоб найти именно нужные файлы (необходимомые и достаточные для работы)... А смысл? Экспресс то ставится за три минуты в полном объеме.
vk вне форума  
 
Непрочитано 18.10.2004, 22:34
#3
Джек

Строительство
 
Регистрация: 03.09.2003
Нижний Новгород
Сообщений: 81
<phrase 1=


Ден, а зачем это нада? :?:
Джек вне форума  
 
Непрочитано 19.10.2004, 23:09
#4
Лентяй


 
Сообщений: n/a


Ден,
лови лиспу, я не жадный.
Код:
[Выделить все]
;MTNUM.LSP
;Author: Larry Travis
;To start this routine, type "MTNUM" at the command prompt
;
;
;Requirements:
;    For circled notes, this routine looks for a drawing called "c:\notecir" which should
;         contain one attribute definition.  Feel free to modify this to reflect the 
;         location of the block you wish to use as the note circle.
;    The routine looks at the text height of the current text style to determine the size
;         of the note numbers.  Therefore, the current style should not be defined with
;         a height of 0.



(defun c:mtnum (/ os sss ht par parget lst lin pip x skip ip len typenum
)
  (setq 	cmd (getvar "CMDECHO")
	os (getvar "osmode")
	atr (getvar "ATTREQ")
	clr (getvar "CLAYER")
  );setq
  (setvar "CMDECHO" 0)
  (setvar "osmode" 0)
  (setvar "ATTREQ" 1)
  (setq sss (ssadd))
  (INITGET "Text Circle")
  (SETQ TYPENUM (GETKWORD "\n[Text/Circled text]: <C> "))
  (if (null typenum) (setq typenum "Circle"))
;  (if (= typenum "Circle")
  (runit)
;  );if
)  
  (defun runit ()
  (setq 	smt (car (entsel))
	ht (cdr (assoc 40 (entget smt)))
	lr (cdr (assoc 8 (entget smt)))
	par smt
	parget (entget par)
  );setq
 ;_______________________________________________________________
;4 lines below make the paragraph the last entity in the drawing
    (entdel par)
    (entmake parget)
    (setq 	parget (entget (entlast))
    	par (cdr (assoc -1 parget))
    );setq
 ;_______________________________________________________________
    (setq lst (entlast))
    (setq lin lst)
    (setq pip (cdr (assoc 10 (entget lin))))
    (setq x 1)
    (initget "Yes No")
    (setq skip (getkword "\nSkip 1st line? [Yes/No]? <Y>"))
    (if (null skip) (setq skip "Yes"))
    (command ".explode" par)
    (SETQ IP (CDR (ASSOC 10 (ENTGET (ENTNEXT LST)))))
    (setq len 0)
    (while (setq lst (entnext lst)) (setq len (1+ len)))
    (if	(/= skip "Yes")
     (progn (setq x (getreal "\nEnter 1st number: <1> "))
     (insertit)
     )
     (setq x 0)
      ) 
    (repeat len
      (setq lin (entnext lin))
      (setq ip (cdr (assoc 10 (entget lin))))
      (if (> (abs (- (cadr pip) (cadr ip))) (* HT 2.5))
	(progn
	  (setq x (1+ x))
	  (insertit)
	)
      )
      (setq pip ip)
      (ssadd lin sss)
    );repeat
    (command ".erase" sss "")
    (entmake parget)
    (setvar "CMDECHO" cmd)
    (setvar "osmode" os)
    (setvar "ATTREQ" atr)
    (setvar "CLAYER" clr)
  );runit
;)

(DEFUN INSERTIT	()
(setvar "CLAYER" lr)
  (IF (= TYPENUM "Text")
    (COMMAND "TEXT"
	     (LIST (- (CAR IP) (* HT 2.5)) (CADR IP))
	     ht		
	     0
	     (STRCAT (RTOS X 2 0) ".")
    )
    (command ".insert"
	     "SPN004"
	     (LIST (- (CAR IP) (* HT 2.5)) (+ (CADR IP) (/ HT 2.0)))
	     (* 10.67 ht)
	     ""
	     ""
	     (rtos x 2 0)
    )
  )
)
 
 
Непрочитано 19.10.2004, 23:11
#5
Лентяй


 
Сообщений: n/a


Да, совсем забыл. Замени "SPN004" на имя своего блока-номератора.
 
 
Непрочитано 25.10.2004, 22:57
#6
ден


 
Сообщений: n/a


спасибо большое
 
 
Непрочитано 29.10.2004, 13:57 Express
#7
Nike


 
Сообщений: n/a


По ошибке грохнул Экспресс, повторно не ставится, говорит типа "Уже стою. До свиданья."
Что делать?
 
 
Непрочитано 29.10.2004, 20:09
#8
vk

сисадмин
 
Регистрация: 26.08.2003
Самара
Сообщений: 1,022
<phrase 1=


>Nike
Грохнул... КАК?

Удалил через "установку и удаление программ" или просто швырнул папку с Экспрессом в корзину?

Имхо: в первом случае скорей всего потребуется чистка реестра, возможно, ручками (хотя, с чего бы?), а во втором - два варианта - либо удалить через "установку-удаление.." и снова ставить, либо просто притащить файлы с другой машины.
vk вне форума  
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > Express

Размещение рекламы