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

Вернуться   Форум DWG.RU > Программное обеспечение > AutoCAD > Каким образом сделать чтобы размерная линия показывала размер 200х4, вместо 800

Каким образом сделать чтобы размерная линия показывала размер 200х4, вместо 800

Ответ
Поиск в этой теме
Непрочитано 27.10.2020, 09:39 #1
Каким образом сделать чтобы размерная линия показывала размер 200х4, вместо 800
dextron3
 
проектировшик
 
СССР
Регистрация: 01.01.2007
Сообщений: 5,143

Всем привет, хотел поинтересоваться есть ли такая опция в автокаде чтобы размерная линия выдавала вместо обычного числа, число формата 200х5, где к примеру 200 константа, то есть интеллектуальный размер, это нужно к примеру показывать ступени если в архитектуре, или количество стержней арматуры в стенах и плитах, то есть размер автоматом считал количество, поделив общую длину на константу (шаг),

в данный момент ставлю размер и вручную прописываю, надеюсь есть решение.

заранее благодарен

Миниатюры
Нажмите на изображение для увеличения
Название: Захват68.jpg
Просмотров: 174
Размер:	69.1 Кб
ID:	231316  

__________________
инженер проектировшик с опттом программа авто гад образование высшие
Просмотров: 4160
 
Непрочитано 27.10.2020, 09:43
#2
v.psk

конструктор
 
Регистрация: 14.08.2014
Псков
Сообщений: 7,096


тема обсуждалась
вот например решение
v.psk вне форума  
 
Автор темы   Непрочитано 27.10.2020, 09:57
#3
dextron3

проектировшик
 
Регистрация: 01.01.2007
СССР
Сообщений: 5,143


Спс, то что нужно!

VVA отдельное спасибо!
__________________
инженер проектировшик с опттом программа авто гад образование высшие
dextron3 вне форума  
 
Непрочитано 27.10.2020, 10:08
| 2 #4
AMDen

Инженер-проектировщик
 
Регистрация: 07.07.2016
Санкт-Петербург
Сообщений: 723


А зачем так сложно, через лисп?
В размере прописать префикс 200 и масштаб линейных размеров 0.005.
Или я не понял задачу?
AMDen на форуме  
 
Непрочитано 27.10.2020, 11:36
#5
mainevent100

конструктор
 
Регистрация: 15.05.2009
Сообщений: 6,059


Цитата:
Сообщение от AMDen Посмотреть сообщение
и масштаб линейных размеров 0.005.
а зачем масштаб менять? прописать префикс "200х19="
или в текстовой строке "200х5=<>"
mainevent100 вне форума  
 
Непрочитано 27.10.2020, 13:06
#6
Oleg T


 
Регистрация: 27.12.2011
Сообщений: 1,458


Может, кому пригодится. Делает то же самое, что и в #2, но еще вычисляет остаток
Но размеры выбираются по одному (правда, конкретно в автокаде не проверял)

Код:
[Выделить все]
 ;Программа изменения текста размера по заданному шагу
;;-------------------------------------------
(defun c:dim_change ( / pr_snap pr_snap_1 pr pr_ pr_zn pr_txt_old pr_kol pr_razn_ pr_snap1 pr_txt_new pr_razn )
	(if (= pr_snap nil) (setq pr_snap 200))
	(PROMPT "	 Текущий шаг = ")
	(PRIN1 pr_snap)
	(setq pr_snap_1 (getreal "\nВведите новое значение шага или <Enter> :"))
	(IF (> pr_snap_1 0)
			(SETQ pr_snap pr_snap_1)
			(SETQ pr_snap pr_snap)
	)
	(while
		(setq pr (car (entsel "\Выберите размер")))
		(setq pr_ (entget pr))
		(setq pr_zn (cdr (assoc '42 pr_)))
		(setq pr_txt_old (assoc '1 pr_))
		(setq pr_kol (rtos (/ pr_zn pr_snap) 2 0))
		(setq pr_razn_ (fix (- pr_zn (* (atoi pr_kol) pr_snap))))
		(if (= pr_razn_ 0)
			(progn
				(setq pr_snap1 (rtos pr_snap 2 0))
				(setq pr_txt_new (cons 1 (strcat pr_snap1 "x" pr_kol "=<>")))
			)
		)
		(if (> pr_razn_ 0)
			(progn
				(setq pr_razn (strcat "+" (rtos pr_razn_ 2 0)))
				(setq pr_snap1 (rtos pr_snap 2 0))
				(setq pr_txt_new (cons 1 (strcat pr_snap1 "x" pr_kol pr_razn "=<>")))
			)
		)
		(if (< pr_razn_ 0)
			(progn
				(setq pr_kol (- (atoi pr_kol) 1))
				(setq pr_razn (- pr_zn (* pr_kol pr_snap)))
				(setq pr_kol (rtos pr_kol 2 0))
				(setq pr_razn (strcat "+" (rtos pr_razn 2 0)))
				(setq pr_snap1 (rtos pr_snap 2 0))
				(setq pr_txt_new (cons 1 (strcat pr_snap1 "x" pr_kol pr_razn "=<>")))
			)
		)
		(setq pr_ (subst pr_txt_new pr_txt_old pr_))
		(entmod pr_)
		(princ)
	)
)
Oleg T вне форума  
 
Автор темы   Непрочитано 28.10.2020, 20:05
#7
dextron3

проектировшик
 
Регистрация: 01.01.2007
СССР
Сообщений: 5,143


Приветствую еще раз, конечно думаю это из области фантастики, но есть ли у кого-нибудь лисп такого формата

1. проставил групповой размер (это автокадовский размер которым выделяешь сразу массив элементов и он их образмеривает, кучей мелких друг за другом размеров, в одну линию)
2. запустил лисп выделил этот массив размеров и лисп одинаковые размеры объединил при этом формат 200х5=1000, потом следующий 150х2=300, и замыкающие 200х3+150=750 ( с двух сторон, елси имееется одиночный кусочек отличающегося
от массива часто встречается в армировании стен)
3. то есть по сути не нужно вводить шаг, а происходит объединение одинаковых размеров

(пример горизонтальное армирование стен стержнями - первый 50мм от перекрытия потом 200мм и потом перемычка шаг 100мм и так на 10 этажей и делается, это за одно движение, вот это автоматизация)

заранее благодарен
__________________
инженер проектировшик с опттом программа авто гад образование высшие
dextron3 вне форума  
 
Непрочитано 28.10.2020, 21:00
#8
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,787


Это какой командой проставляется "групповой размер"? Что-то в чистом ACAD я такого не припоминаю (в вертикалках типа АА такое было, не спорю).
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Автор темы   Непрочитано 28.10.2020, 21:32
#9
dextron3

проектировшик
 
Регистрация: 01.01.2007
СССР
Сообщений: 5,143


Quick dimension
__________________
инженер проектировшик с опттом программа авто гад образование высшие
dextron3 вне форума  
 
Автор темы   Непрочитано 29.10.2020, 11:35
#10
dextron3

проектировшик
 
Регистрация: 01.01.2007
СССР
Сообщений: 5,143


Вот пример как с этим бороться, хочется объединения одинаковых размеров
Миниатюры
Нажмите на изображение для увеличения
Название: Захват70.jpg
Просмотров: 112
Размер:	325.3 Кб
ID:	231385  
__________________
инженер проектировшик с опттом программа авто гад образование высшие
dextron3 вне форума  
 
Непрочитано 29.10.2020, 13:15
2 | 1 #11
Хмурый


 
Регистрация: 29.10.2004
СПб
Сообщений: 16,326


200х5 -это 200 раз по 5 мм
а 5х200 - пять раз по 200
См. ГОСТ 2.307-2011
"5.48 При нанесении размеров, определяющих расстояние между равномерно расположенными одинаковыми элементами изделия (например, отверстиями), рекомендуется вместо размерных цепей
наносить размер между соседними элементами и размер между крайними элементами в виде произведения количества промежутков между элементами на размер промежутка (см. рисунок 65)"
Хмурый вне форума  
 
Автор темы   Непрочитано 30.10.2020, 06:06
#12
dextron3

проектировшик
 
Регистрация: 01.01.2007
СССР
Сообщений: 5,143


гост это понятно, а есть логическое объяснение почему именно так принято, так как интуитивно понятно что сначала нужно длину промежутка знать чтобы найти количество, но никак не наоборот, и соответственно правильно бы было записать 200х5,

или это для машиностроителей ГОСТ, а не для строителей, там только болты гайки, детали, ни одного плана и разреза здания не нашел


обратите внимание на сетки в сериях 60х годов, там обозначение такое, везде во всех сериях, это когда мы не родились еще

----- добавлено через ~1 мин. -----
Все таки проектировщикам ближе 200х5, так как мы воспитывались по сериям и арматурным сеткам, а не по отверстиям в штуцерах

----- добавлено через ~4 мин. -----
Кстати пересмотрел все лестницы в архитектурных чертежах тоже везде 200х5 во всех ступенях
Миниатюры
Нажмите на изображение для увеличения
Название: Захват37.jpg
Просмотров: 77
Размер:	231.5 Кб
ID:	231399  Нажмите на изображение для увеличения
Название: Захват38.jpg
Просмотров: 77
Размер:	83.8 Кб
ID:	231400  
__________________
инженер проектировшик с опттом программа авто гад образование высшие

Последний раз редактировалось dextron3, 30.10.2020 в 06:32.
dextron3 вне форума  
 
Непрочитано 30.10.2020, 08:27
#13
Oleg T


 
Регистрация: 27.12.2011
Сообщений: 1,458


Цитата:
Сообщение от Хмурый Посмотреть сообщение
См. ГОСТ 2.307-2011
ЕСКД не для строителей. У нас СПДС
https://ru.wikipedia.org/wiki/Систем..._строительства
Oleg T вне форума  
 
Автор темы   Непрочитано 30.10.2020, 08:39
#14
dextron3

проектировшик
 
Регистрация: 01.01.2007
СССР
Сообщений: 5,143


Код:
[Выделить все]
(defun c:DIM= (/ *kpblc-activedoc* ss item rzm count kr)
;;;Команда проставляет в выбранных размерах запрошенную кратность (по умолчанию 500)
;;; Размер должен быть не перебит и кратен кратности500
;;; Если размер кратен 500, то вставляется текст kx500=<>, где
;;; k - посчитанная кратность
  (vl-load-com)
  (setq *kpblc-activedoc* (vla-get-activedocument (vlax-get-acad-object)))
  (vla-startundomark *kpblc-activedoc*)
  (initget 6)
  (or (setq kr (getint "\nВведите кратность <500>: "))
      (setq kr 500)
    )
  (setq ss (ssget "_:L" '((0 . "DIMENSION"))) count 0)
  (while (and ss
           (> (sslength ss) 0)
       (setq item (ssname ss 0))
       (ssdel item ss)
       ) ;_ end of and
    ;;;(setq item (vlax-ename->vla-object item))
    (setq rzm (atof(vl-string-subst "." "," (dim-get-text-string item))))
    (if (and
	  (zerop (rem rzm kr));;; Делится на kr (500) без остатка, 
	  (> (fix(/ rzm kr)) 1);;; и кратность больше 1
	)
      (setq rzm
         (strcat
          (itoa(fix(/ rzm kr)))
          "x" (itoa kr) "=<>"
          )
	  count (1+ count)  
	)
      (setq rzm nil)
      )
    (if rzm
      (vl-catch-all-apply 'vla-put-textoverride (list (vlax-ename->vla-object item) rzm))
      )
    )
  (vla-endundomark *kpblc-activedoc*)
  (princ "\n==================================")
  (princ "\nИзменено ")(princ count)(princ " размеров")
  (princ " кратность= ")(princ kr)
  (princ)
  ) ;_ end of defun
(defun mip_MTEXT_Unformat ( Mtext / text Str )
  (setq MM Mtext)
  (setq Text "")
   (while (/= Mtext "")
        (cond
          ((wcmatch (strcase (setq Str (substr Mtext 1 2))) "\\[\\{}]")
            (setq Mtext (substr Mtext 3) Text   (strcat Text Str)))
          ((wcmatch (substr Mtext 1 1) "[{}]")(setq Mtext (substr Mtext 2)))
          ((wcmatch (strcase (setq Str (substr Mtext 1 2))) "\\[LO`~]")
	   (setq Mtext (substr Mtext 3)))
          ((wcmatch (strcase (substr Mtext 1 2)) "\\[ACFHQTW]")
            (setq Mtext (substr Mtext (+ 2 (vl-string-search ";" Mtext)))))
          ((wcmatch (strcase (substr Mtext 1 2)) "\\P")
            (if (or
		   (zerop (strlen Text))
		   (= " " (substr Text (strlen Text)))
		   (= " " (substr Mtext 3 1)))
               (setq Mtext (substr Mtext 3))
               (setq Mtext (substr Mtext 3) Text (strcat Text " "))))
	  ((wcmatch (strcase (substr Mtext 1 2)) "\\S")
            (setq Str   (substr Mtext 3 (- (vl-string-search ";" Mtext) 2))
                  Text  (strcat Text (vl-string-translate "#^\\" "/^\\" Str))
                  Mtext (substr Mtext (+ 4 (strlen Str)))))
	  (t (setq Text (strcat Text (substr Mtext 1 1)) Mtext (substr Mtext 2)))))
  Text)
(defun dim-get-text-string  ( dim / str)
 (setq str "")
   (vlax-for item (vla-item (vla-get-blocks
                         (vla-get-activedocument (vlax-get-acad-object))
                       ) ;_ end of vla-get-Blocks
                       (cdr (assoc 2 (entget dim)))
             ) ;_ end of vla-item
     (if (vlax-property-available-p item 'Textstring)
          (setq str (vla-get-textstring item))
       )
     )
(mip_MTEXT_Unformat str)
  )
Вот хотелось бы точно такой же только значение выдавал не 5х200=1000, а 200х5=1000, чувствую нужно где-то строки поменять, но не пойму где...

и как вариацию точно такой же только 200х5 без равно и результата, пусть на стройке в уме умножают )))
__________________
инженер проектировшик с опттом программа авто гад образование высшие
dextron3 вне форума  
 
Непрочитано 30.10.2020, 08:49
#15
Хмурый


 
Регистрация: 29.10.2004
СПб
Сообщений: 16,326


Цитата:
Сообщение от dextron3 Посмотреть сообщение
Все таки проектировщикам ближе 200х5, так как мы воспитывались по сериям и арматурным сеткам, а не по отверстиям в штуцерах
Цитата:
Сообщение от Oleg T Посмотреть сообщение
ЕСКД не для строителей. У нас СПДС
Смотрим ГОСТ 2.501-2011 (в 2018 тоже самое)
Миниатюры
Нажмите на изображение для увеличения
Название: Безымянный.jpg
Просмотров: 72
Размер:	131.3 Кб
ID:	231402  
Хмурый вне форума  
 
Автор темы   Непрочитано 30.10.2020, 08:55
#16
dextron3

проектировшик
 
Регистрация: 01.01.2007
СССР
Сообщений: 5,143


А что по сериям арматурных сеток? которые наши деды вычерчивали пером

Хотел увидеть чертеж раскладки арматуры в плите или в стене по СПДС, это планы призводственного здания я их тоже видел, но хотелось бы конкретно по армированию
__________________
инженер проектировшик с опттом программа авто гад образование высшие
dextron3 вне форума  
 
Непрочитано 30.10.2020, 10:09
#17
Oleg T


 
Регистрация: 27.12.2011
Сообщений: 1,458


Цитата:
Сообщение от Хмурый Посмотреть сообщение
Смотрим ГОСТ 2.501-2011 (в 2018 тоже самое)
Посмотрел.
Ну что же, если есть такой пункт ГОСТ (как в ЕСКД), обязательный к применению, то, возможно, придется менять привычки )).
Oleg T вне форума  
 
Непрочитано 30.10.2020, 10:26
1 | #18
AlexCondor

инженер
 
Регистрация: 03.08.2007
Сообщений: 1,326


Цитата:
Сообщение от Oleg T Посмотреть сообщение
ЕСКД не для строителей. У нас СПДС
ЕСКД очень даже и для строителей, в том числе. Очень внимательно изучаем ГОСТ 21.1101 СПДС. Основные требования к проектной и рабочей документации. Особенно раздел - Нормативные ссылки.
PS. Немножко дополню, Так для памятки
Миниатюры
Нажмите на изображение для увеличения
Название: GOST.jpg
Просмотров: 33
Размер:	80.5 Кб
ID:	231429  

Последний раз редактировалось AlexCondor, 30.10.2020 в 17:40.
AlexCondor вне форума  
 
Автор темы   Непрочитано 30.10.2020, 10:40
#19
dextron3

проектировшик
 
Регистрация: 01.01.2007
СССР
Сообщений: 5,143


Интересно как архитекторы которые ступени образмеривают в разрезах воспримут эту информацию...
__________________
инженер проектировшик с опттом программа авто гад образование высшие
dextron3 вне форума  
 
Непрочитано 30.10.2020, 10:43
#20
Oleg T


 
Регистрация: 27.12.2011
Сообщений: 1,458


Цитата:
Сообщение от AlexCondor Посмотреть сообщение
Особенно раздел - Нормативные ссылки.
Ну, что же, признаю, никогда не был силен в глубоком изучении нормативной документации )).
Oleg T вне форума  
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > AutoCAD > Каким образом сделать чтобы размерная линия показывала размер 200х4, вместо 800

Размещение рекламы
Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Не удается выполнить копирование / вставку элементов чертежа Gamer777 AutoCAD 269 10.01.2023 13:29
Подскажите как сделать свой размер в автокаде noize_fan AutoCAD 21 10.12.2013 10:37
Каким образом построить модель и сделать расчет следующей опоры neo007 Лира / Лира-САПР 6 05.12.2011 15:10
Можно как то сделать, чтобы размер очищал фон который находится сзади него? Luca Brasi AutoCAD 7 28.05.2011 13:36
что сделать чтобы в рамке А4 можно было задавать правильные размеры? Alannn AutoCAD 9 15.10.2008 22:54