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

Вернуться   Форум DWG.RU > Программное обеспечение > AutoCAD > Совет по поводу высоты текста в autocad'e

Совет по поводу высоты текста в autocad'e

Ответ
Поиск в этой теме
Непрочитано 30.05.2010, 20:31
Совет по поводу высоты текста в autocad'e
Alma3
 
Кап.строй
 
Регистрация: 12.12.2009
Сообщений: 60

Доброго времени суток, уважаемые форумчане!
Можете мне посоветовать какие размеры обычно используют проектировщики в своих деяниях? (высоту текста) И заодно проверить мои... =)
P.S. Я принимаю Основную надпись - 7-10; Оси - 3,5; Отметки+размеры+пояснения в узлах - 2,5; Площади на планах - 3,5; Текст в примечаниях - 3,5;...
Премного благодарен!

Последний раз редактировалось Alma3, 31.05.2010 в 06:15.
Просмотров: 19383
 
Непрочитано 20.06.2017, 11:35
#21
Ilez

Техник АС, КЖ
 
Регистрация: 24.09.2013
Ingushetiya
Сообщений: 392


Цитата:
Сообщение от Gefest1 Посмотреть сообщение
Рискую нарваться на очередную порцию гнева, но ведь самый глупый вопрос, это не заданный, верно?)
верно

Цитата:
Сообщение от Gefest1 Посмотреть сообщение
Есть ли норматив по ОТЛИЧИЮ размеров текста на чертеже? Например, выбираем для размеров 2,5, тогда марки осей и текст на чертеже на 1-2 шага больше, но между собой одинаковые (оба либо 3,5, либо 5), отметки уровня , либо такого же размера, либо на шаг больше, и т.д.
http://forum.dwg.ru/showpost.php?p=1430373&postcount=24
отметки, кстати, относятся к размерным элементам.

Цитата:
Сообщение от Gefest1 Посмотреть сообщение
И сколько всего РАЗНЫХ размеров текста (включая цифры) может быть на 1 чертеже?
если следовать ссылкам выше, то получается 2 или 3.
Например, размеры - размер шрифта Х;
Выноски, оси - размер шрифта 1,5Х
Наименования изображений - размер шрифта 2Х или 1,5Х.

Цитата:
Сообщение от Gefest1 Посмотреть сообщение
И если чертежи из одного альбома, то обязан ли на разных чертежах одного назначения текст (размеров, например) быть одинаковым?
Прямо не встречал, чтобы об этом где-либо говорилось, но косвенно это вытекает из следования вышеназванным требованиям. Например, если вы применили для одних размеров шрифт 2,5, для других - 3,5, то применив выноски с размером шрифта 5 будет соблюден п. 5.4.7 ГОСТ Р 21.1101-2013 относительно первых размеров и не соблюден относительно вторых.

Цитата:
Сообщение от Gefest1 Посмотреть сообщение
Подскажете, или накинетесь?
подскажем.
Согласен, что современные нормы слишком консервативны. Например, многие для выносок делают шрифт как у размеров и ничего такого в этом не вижу, но нормам формально это не соответствует.
Ilez вне форума  
 
Непрочитано 20.06.2017, 14:36
#22
zenon

Остекляем!!! Алюминим!!!
 
Регистрация: 21.02.2005
Москва
Сообщений: 3,923
<phrase 1=


Цитата:
Сообщение от v.psk Посмотреть сообщение
часто на стройке распечатывают А3 вместо А2 и даже А1
сними копию, отсканируй и распечатай на каком нить заюзаным принтером, и тогда будет понятно зачем шрифт такой высоты в ГОСТ.
__________________
Мы можем делать быстро, качественно и недорого, выбирайте любые 2 условия.:search:
zenon вне форума  
 
Непрочитано 20.06.2017, 14:58
#23
Profan


 
Регистрация: 25.12.2005
Москва
Сообщений: 13,627


Цитата:
Сообщение от zenon Посмотреть сообщение
распечатай на каком нить заюзаным принтером
А если распечатать на задрипанном принтере? Или на задолбанном? Или на затраханном?
Profan вне форума  
 
Непрочитано 29.06.2017, 05:54
#24
Gefest1


 
Регистрация: 20.03.2013
Сообщений: 54


Не ссорьтесь. Лучше сходите на стройку, почитайте чертеж формата А2 рас печатаный на А3 в подвале при свете 2 лампочек 100Вт на этаж, когда чертеж сгибали 2 недели по одному и тому же месту через нужные Вам цифры)) Не забывайте, что их не только нормокнотролер в офисе читать будет!
2 Ilez: Спасибо, четко и по делу, почерк профессионала)
Gefest1 вне форума  
 
Непрочитано 29.06.2017, 07:12
#25
v.psk

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


Gefest1, это к чему? К тому, что на стройке лампочек нет? Или принтера? Или к тому что мнут чертежи по две недели? Кому то с условиями труда повезло больше.

----- добавлено через ~6 мин. -----
... на стройке уже давно не таскают комплект, или не ксерят нужный лист, а обычно печатают из пдф то, что требуется для текущих СМР.
v.psk вне форума  
 
Непрочитано 17.02.2025, 23:26
#26
zvezdochiot

маркшейдер
 
Регистрация: 25.09.2021
Москва
Сообщений: 189


Привет всем.

По поводу высоты текста в контексте "LISP для замены высоты текста на чертеже":
Цитата:
Сообщение от Palka#7
Замените код
А ежели так?:
Код:
[Выделить все]
 
(defun round-to-nearest (val base)
  ;; Функция округления до ближайшего кратного base
  (* base (fix (+ 0.5 (/ val base))))
)

(defun c:AdjustTextHeight (/ ss i ent textHeight newHeight base)
  (setq base (getdist "\nBase: "))
  (setq ss (ssget "X" '((0 . "TEXT,MTEXT")))) ; Получаем все текстовые объекты
  (if ss
    (progn
      (setq i 0)
      (while (< i (sslength ss))
        (setq ent (ssname ss i))               ; Получаем объект текста
        (setq textHeight (cdr (assoc 40 (entget ent)))) ; Текущая высота текста

        ;; Рассчитываем новую высоту текста, кратную base
        (setq newHeight (round-to-nearest textHeight base))

        ;; Обновляем высоту текста, если она отличается
        (if (/= textHeight newHeight)
          (progn
            (entmod (subst (cons 40 newHeight) (assoc 40 (entget ent)) (entget ent)))
            (entupd ent)
          )
        )

        (setq i (1+ i))
      )
      (princ "\nВысота текста обновлена для всех объектов.")
    )
    (princ "\nНет текстовых объектов на чертеже.")
  )
  (princ)
)
На работоспособность не проверял.
__________________
Keep it simple, stupid.

Последний раз редактировалось zvezdochiot, 17.02.2025 в 23:34.
zvezdochiot вне форума  
 
Непрочитано 18.02.2025, 07:52
#27
name02


 
Регистрация: 10.01.2020
Сообщений: 420


Совет-рекомендация:
1 Если функция round-to-nearest у тебя не является библиотечной (т.е. ее ты написал конкретно для этой программы), то запихни ее в тело основной программы. И саму вспомогательную функцию объяви как переменную основной:
Код:
[Выделить все]
 (defun c:AdjustTextHeight (/ round-to-nearest ss i ent textHeight newHeight base)
   (defun round-to-nearest (val base)
     ;; Функция округления до ближайшего кратного base
     (* base (fix (+ 0.5 (/ val base))))
   )

  (setq base (getdist "\nBase: "))
  ...
)
Т.е. вспомогательная функция не будет доступна пользователю отдельно от основной

2 Перебор объектов набора у тебя идет с помощью конструкции
Код:
[Выделить все]
 (setq i 0)
(while (< i (sslength ss))
   ...
   (setq i (1+ i))
)
В принципе не скажу, что это неправильно. Но среди опытных людей, когда не нужен именно порядок прохода от 0 к последнему, обычно делают так:
Код:
[Выделить все]
 (repeat (setq i (sslength ss))
   (setq ent (ssname ss (setq i (1- i)))
   ...
)
На мой дилетантский взгляд, такой подход удобнее тем, что счетчик объявляется непосредственно в процедуре обхода объектов.
Но опять-таки, оба решения рабочие

3 Я бы добавил маркеры отмены - читай тут https://autolisp.ru/2016/12/06/undomarks/

4 По работе самой программы - если я имея текст высотой 3,5 решу изменить с шагом 10 например, то round-to-nearest вернет 0. И высота текста сбросится до размера определенного при вызове МТЕКСТ. На мой взгляд нужно что-то с этим сделать - может подогнать такие размеры до указанного шага или предупреждать о наличии таких текстов. В общем сделать так, чтобы пользователь был уведомлен

5 На забывай, что автокад может быть и не английским - в строке 8 твоего кода нужно писать (setq ss (ssget "_X" '((0 . "TEXT,MTEXT"))))

Последний раз редактировалось name02, 18.02.2025 в 08:18.
name02 вне форума  
 
Непрочитано 18.02.2025, 21:32
#28
zvezdochiot

маркшейдер
 
Регистрация: 25.09.2021
Москва
Сообщений: 189


Цитата:
Сообщение от name02 Посмотреть сообщение
Совет-рекомендация:
Думаешь стоит? Ну может быть, может быть...
Код:
[Выделить все]
 
(defun c:AdjustTextHeight (/ ss i j ent textHeight neatHeight newHeight base)
  (setq base (getdist "\nBase: "))
  (if (> base 0)
    (progn
      (setq ss (ssget "_X" '((0 . "TEXT,MTEXT")))) ; get all text objects
      (if ss
        (progn
          (setq i 0)
          (setq j 0)
          (while (< i (sslength ss))
            (setq ent (ssname ss i)) ; get text object
            (setq textHeight (cdr (assoc 40 (entget ent)))) ; current Height
            
            ;; Calc neat and new Height
            (setq neatHeight (* base (fix (+ 0.5 (/ textHeight base)))))
            (setq newHeight (if (> neatHeight 0) neatHeight base))
            
            ;; Apply new Height
            (if (/= textHeight newHeight)
              (progn
                (entmod (subst (cons 40 newHeight) (assoc 40 (entget ent)) (entget ent)))
                (entupd ent)
                (setq j (1+ j))
              )
            )
            
            (setq i (1+ i))
          )
          (princ (strcat "\nUpdate " (itoa j) " text height."))
        )
        (princ "\nNot found text.")
      )
    )
    (princ "\nBase incorrect.")
  )
  (princ)
)
Работоспособность не проверял.
__________________
Keep it simple, stupid.

Последний раз редактировалось zvezdochiot, 19.02.2025 в 07:24. Причина: добавил "защиту от дурака" на base
zvezdochiot вне форума  
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > AutoCAD > Совет по поводу высоты текста в autocad'e



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
LISP. Вставка в таблицу поля, соотвествующего площади примитива Profan Готовые программы 272 06.06.2021 23:12
в размерах высота текста не меняется Komunist AutoCAD 17 21.09.2020 15:52
LISP. Выравнивание текста по двум точкам. Krieger Готовые программы 10 24.12.2011 16:02
кнопка быстрого выбора и высота текста Lucciolasv AutoCAD 6 08.05.2008 11:16
Размеры - высота текста meteor AutoCAD 2 07.09.2007 12:17