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

Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > Изменение команды NUM (автоматическая нумерация)

Изменение команды NUM (автоматическая нумерация)

Ответ
Поиск в этой теме
Непрочитано 31.01.2012, 17:13 #1
Изменение команды NUM (автоматическая нумерация)
ПроектантБС
 
Симферополь
Регистрация: 04.11.2008
Сообщений: 50

Помогите изменить код

http://www.caduser.ru/forum/index.php...&TID=29902

(defun c:num (/ oldPref oldSuf oldStart curStr newNum
actDoc actSp oldEcho oldSize *error*)
(defun *error* (msg)
(setvar "CMDECHO" oldEcho)
(princ)
); end *error*
(vl-load-com)
(if(not num:Size)(setq num:Size(getvar "DIMTXT")))
(if(not num:Pref)(setq num:Pref ""))
(if(not num:Suf)(setq num:Suf ""))
(if(not num:Num)(setq num:Num 1))
(setq oldPref num:Pref
oldSuf num:Suf
oldStart num:Num
oldSize num:Size
actDoc(vla-get-ActiveDocument
(vlax-get-acad-object))
oldEcho(getvar "CMDECHO")
); end setq
(setvar "CMDECHO" 0)
(if(= (vla-get-ActiveSpace actDoc) 1)
(setq actSp(vla-get-ModelSpace actDoc))
(setq actSp(vla-get-PaperSpace actDoc))
); end setq
(setq num:Size
(getreal
(strcat "\nSpecify text size <"(rtos num:Size)">: ")))
(if(null num:Size)(setq num:Size oldSize))
(setq num:Pref
(getstring T
(strcat "\nType prefix: <"num:Pref">: ")))
(if(= "" num:Pref)(setq num:Pref oldPref))
(if(= " " num:Pref)(setq num:Pref ""))
(setq num:Suf
(getstring T
(strcat "\nType suffix: <"num:Suf">: ")))
(if(= "" num:Suf)(setq num:Suf oldSuf))
(if(= " " num:Suf)(setq num:Suf ""))
(setq num:Num
(getint
(strcat "\nEnter start number <"(itoa num:Num)">: ")))
(if(null num:Num)(setq num:Num oldStart))
(while T
(setq curStr(strcat num:Pref(itoa num:Num)num:Suf)
newNum(vla-AddText actSp
curStr (vlax-3d-point
'(0.0 0.0 0.0)) num:Size))
(vla-put-Alignment newNum acAlignmentMiddleCenter)
(command "_.copybase"(trans '(0.0 0.0 0.0)0 1)(entlast)"")
(command "_.erase" (entlast) "")
(command "_.pasteclip" pause)
(setq num:Num(1+ num:Num))
); end while
(princ)
); end of c:num


так чтобы вместо нумерации
1 2 3 ... 9 10 и т.д. было:
01 02 03 ... 09 10

Последний раз редактировалось ПроектантБС, 31.01.2012 в 17:23.
Просмотров: 5231
 
Непрочитано 31.01.2012, 18:09
1 | #2
VVA

Инженер LISP
 
Регистрация: 11.05.2005
Минск
Сообщений: 6,992


Дальнейшее развитие NUM см. NumA и RenumA lisp want for increment
см так же Incremental Numbering Suite
__________________
Как использовать код на Лиспе читаем здесь
VVA вне форума  
 
Автор темы   Непрочитано 01.02.2012, 10:51
#3
ПроектантБС


 
Регистрация: 04.11.2008
Симферополь
Сообщений: 50


Спасибо! то что надо было
ПроектантБС вне форума  
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > Изменение команды NUM (автоматическая нумерация)

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как вставить лист в середину проекта, чтоб автоматическая нумерация листов обновилась (СПДС GraphiCS) Sanechek ПО от CSoft 1 20.06.2011 06:42
автоматическая нумерация в атрибутах блока Michael-- AutoCAD 4 29.11.2010 21:24
Нумерация дин.блоков "тыкая" мышью gizmo_zx Программирование 14 02.04.2009 11:44
Изменение UCS через прозрачные команды. kosmi Программирование 10 19.10.2007 09:50
Автоматическая нумерация текстов dorofei Программирование 8 18.01.2007 09:31