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

Вернуться   Форум DWG.RU > Программное обеспечение > AutoCAD > Как "починить" размеры

Как "починить" размеры

Ответ
Поиск в этой теме
Непрочитано 28.03.2025, 12:36 #1
Как "починить" размеры
Ingpro
 
Регистрация: 11.07.2022
Сообщений: 756

Дали файл в работу, в нём что-то странное с размерами, в свойствах и стилях ничего особенного...
В редакторе текста размерный текст съезжает влево, в чем причина, не пойму

Миниатюры
Нажмите на изображение для увеличения
Название: рзм.png
Просмотров: 174
Размер:	13.0 Кб
ID:	267454  

Вложения
Тип файла: dwg
DWG 2013
Рзм-.dwg (42.5 Кб, 24 просмотров)

Просмотров: 1497
 
Непрочитано 28.03.2025, 12:56
#2
name02


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


Что-то с размерным стилем, т.к. с другим стилем размер нормально функционирует
name02 вне форума  
 
Автор темы   Непрочитано 28.03.2025, 16:03
#3
Ingpro


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


Цитата:
Сообщение от name02 Посмотреть сообщение
Что-то с размерным стилем
Если разбить размер, то в тексте (в свойствах) можно увидеть \A1;3,20, а можно ли отформатировать текст в размере, не разбивая размер?
Может есть лисп? В этом же файле и в мультивыносках такая же фигня с текстом...
Миниатюры
Нажмите на изображение для увеличения
Название: мвыноска.png
Просмотров: 70
Размер:	28.5 Кб
ID:	267466  

Последний раз редактировалось Ingpro, 28.03.2025 в 16:10.
Ingpro вне форума  
 
Непрочитано 28.03.2025, 18:15
1 | #4
Кулик Алексей aka kpblc
Moderator

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


Поиск по форуму - StripMText, насколько я помню.
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 31.03.2025, 07:57
1 | #5
name02


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


Цитата:
Сообщение от Ingpro Посмотреть сообщение
Если разбить размер, то в тексте (в свойствах) можно увидеть \A1;3,20, а можно ли отформатировать текст в размере, не разбивая размер?
А1 означает, что текст в размере выровнен по центру. Других кодов форматирования в тексте нет, поэтому StripMText тоже не сможет помочь.
Проще всего сделать заново размерный стиль с аналогичными "неправильному" стилю настройками и установить его размерам в чертеже
name02 вне форума  
 
Автор темы   Непрочитано 31.03.2025, 10:15
#6
Ingpro


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


Цитата:
Сообщение от name02 Посмотреть сообщение
А1 означает, что текст в размере выровнен по центру. Других кодов форматирования в тексте нет, поэтому StripMText тоже не сможет помочь.
Да, StripMText не справляется...
Ingpro вне форума  
 
Непрочитано 31.03.2025, 20:21
#7
koMon


 
Блог
 
Регистрация: 26.09.2017
Сообщений: 1,808


в 2026 этот косяк не наблюдается.
__________________
K Lisp
koMon вне форума  
 
Автор темы   Непрочитано 31.03.2025, 20:49
#8
Ingpro


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


Цитата:
Сообщение от koMon Посмотреть сообщение
в 2026 этот косяк не наблюдается
В 2015 и в 2021 наблюдается...
Интересно, как вообще можно "испортить" размерный текст, если просто текст размера перебить, никаких проблем не возникает?
Ingpro вне форума  
 
Непрочитано 31.03.2025, 21:04
#9
koMon


 
Блог
 
Регистрация: 26.09.2017
Сообщений: 1,808


действительно. а присланный чертёж был сделан именно в автокаде или в параллельном софте?
__________________
K Lisp
koMon вне форума  
 
Автор темы   Непрочитано 31.03.2025, 21:27
#10
Ingpro


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


Цитата:
Сообщение от koMon Посмотреть сообщение
действительно. а присланный чертёж был сделан именно в автокаде или в параллельном софте?
В AutoCAD 2021 rus. Но возможно (точно не знаю) участие "чужих" при создании профилей...

Последний раз редактировалось Ingpro, 31.03.2025 в 21:48.
Ingpro вне форума  
 
Непрочитано 02.04.2025, 09:21
#11
Dinoxromniy


 
Регистрация: 14.09.2020
Санкт-Петербург
Сообщений: 395


Коллеги, к сожалению нет доступа к файлам из интернета на десктопе, поэтому сам файл посмотреть не могу - но исходя из вашего описания вопрос, а если выделить размер, в его свойствах по Ctrl+1 в секторе "текст" в графе Text override вбить знаки "больше меньше" - которые <> - разве текст не должен вернуться к исходному размеру? У него эта центровка в самом стиле прописана?
Dinoxromniy вне форума  
 
Непрочитано 02.04.2025, 10:48
#12
koMon


 
Блог
 
Регистрация: 26.09.2017
Сообщений: 1,808


если бы всё было бы так просто)))
в этих размерах textoverride в терминах свойств размера НЕ установлен. и определяется только на уровне составного текста динамического блока размера. какой-то словарный косяк имхо.
Код:
[Выделить все]
;   Measurement (RO) = 9.30032
;   Normal = (0.0 0.0 1.0)
;   ObjectID (RO) = 1313
;   ObjectName (RO) = "AcDbAlignedDimension"
;   OwnerID (RO) = 1128
;   PlotStyleName = "Color_30"
;   PrimaryUnitsPrecision = 2
;   Rotation = 0.0
;   RoundDistance = 0.1
;   ScaleFactor = 0.01
;   StyleName = "200"
;   SubUnitsFactor = 100.0
;   SubUnitsSuffix = ""
;   SuppressLeadingZeros = 0
;   SuppressTrailingZeros = -1
;   SuppressZeroFeet = 0
;   SuppressZeroInches = 0
;   TextColor = 256
;   TextFill = 0
;   TextFillColor = 0
;   TextGap = 50.0
;   TextHeight = 250.0
;   TextInside = 0
;   TextInsideAlign = 0
;   TextMovement = 1
;   TextOutsideAlign = 0
;   TextOverride = ""
Код:
[Выделить все]
Command: (cdr (assoc 1 (entget (car (nentsel)))))
Select object: "\\A1;9,3"
при этом код форматирования \A по логике никак не должен влиять на горизонтальное выранивание, поскольку предназначен для выравнования вертикального.
__________________
K Lisp
koMon вне форума  
 
Автор темы   Непрочитано 02.04.2025, 11:56
#13
Ingpro


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


Цитата:
Сообщение от koMon Посмотреть сообщение
Command: (cdr (assoc 1 (entget (car (nentsel)))))
Select object: "\\A1;9,3"
Если разбить размер, то в свойствах текста можно увидеть \A1;9,3, а всё-таки можно ли отформатировать текст в размере, не разбивая размер?
Ingpro вне форума  
 
Непрочитано 02.04.2025, 19:49
1 | #14
Dinoxromniy


 
Регистрация: 14.09.2020
Санкт-Петербург
Сообщений: 395


koMon, спасибо, ясно.
Цитата:
Сообщение от Ingpro Посмотреть сообщение
а всё-таки можно ли отформатировать текст в размере, не разбивая размер?
Ingpro, на форум я пришел практически с вашим вопросом, только в части выносок.
К сожалению, в причинах и элегантных решениях я так и не смог разобраться, а вот с костылями все достаточно просто.
1. Стиль размеров у вас не сильно сложный, создаете на основе другого стиля новый стиль, настраиваете его по образу и подобию проблемного стиля 200.
2. Выделяете все вхождения размеров через ._filter / ._SELECTSIMILAR / ._QSELECT / ._SELSIMSEL
3. ._ISOLATEOBJECTS
4. Чертите новый размер стилем по п.1, ._MATCHPROP и применяете ко всем проблемным размерам, ._UNISOLATEOBJECTS , сносите стиль 200 и пользуетесь вместо него новым.

С выносками у меня такой подход сработал, с вашими размерами из приложенного куска вроде тоже получилось.
Dinoxromniy вне форума  
 
Автор темы   Непрочитано 02.04.2025, 20:57
#15
Ingpro


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


Цитата:
Сообщение от Dinoxromniy Посмотреть сообщение
1. Стиль размеров у вас не сильно сложный, создаете на основе другого стиля новый стиль, настраиваете его по образу и подобию проблемного стиля 200.
2. Выделяете все вхождения размеров через ._filter / ._SELECTSIMILAR / ._QSELECT / ._SELSIMSEL
3. ._ISOLATEOBJECTS
4. Чертите новый размер стилем по п.1, ._MATCHPROP и применяете ко всем проблемным размерам, ._UNISOLATEOBJECTS , сносите стиль 200 и пользуетесь вместо него новым.
Dinoxromniy, спасибо, это всё понятно, но хотелось бы быстрее и проще, но...
Ingpro вне форума  
 
Непрочитано 02.04.2025, 21:07
| 1 #16
Dinoxromniy


 
Регистрация: 14.09.2020
Санкт-Петербург
Сообщений: 395


Ingpro, создать стиль даже запинаясь нога за ногу вряд ли займет больше 5 минут. Пусть еще минута на применить, ну пусть на круг все десять минут будет.

Мне кажется, даже если есть способы быстрее, много времени тут не на экономишь, а второй такой файл еще поискать надо, чтобы повторно применять решение.
Dinoxromniy вне форума  
 
Автор темы   Непрочитано 03.04.2025, 10:39
#17
Ingpro


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


Цитата:
Сообщение от Dinoxromniy Посмотреть сообщение
Мне кажется, даже если есть способы быстрее
А если всё-таки попробовать программно?
Код:
[Выделить все]
 (defun c:unform-dimText ( / ss n ent entData dimText cleanText)
(vl-load-com)
  (setq ss (ssget '((0 . "DIMENSION")))) 
  (if ss
    (progn
      (setq n (sslength ss))
      (repeat n
        (setq ent (ssname ss (setq n (1- n))))
        (setq entData (entget ent))
        (setq dimText (cdr (assoc 1 entData))) 
        (if (and dimText (vl-string-search "\\A1;" dimText)) 
          (progn
            (setq cleanText (vl-string-subst "" "\\A1;" dimText)) 
            (setq entData (subst (cons 1 cleanText) (assoc 1 entData) entData))
            (entmod entData) 
            (entupd ent) 
          )
        )
      )
    )   
  )
  (princ)
)
Этот код не удаляет форматирование, нужно что-то изменить... Может профи посоветуют чего?
Ingpro вне форума  
 
Непрочитано 03.04.2025, 10:48
| 1 #18
koMon


 
Блог
 
Регистрация: 26.09.2017
Сообщений: 1,808


Ingpro,
нельзя убрать то, чего нет)))
Код:
[Выделить все]
Select object:
(-1 . <Entity name: 246a999c9b0>)
(0 . "DIMENSION")
(330 . <Entity name: 245e900f9f0>)
(5 . "45B")
(100 . "AcDbEntity")
(67 . 0)
(410 . "Model")
(8 . "0")
(62 . 30)
(370 . 25)
(100 . "AcDbDimension")
(280 . 0)
(2 . "*D2")
(10 2740.64 1151.8 2466.71)
(11 2749.96 1153.74 2466.71)
(12 0.0 0.0 2466.71)
(70 . 33)
(1 . "")
(71 . 5)
(72 . 1)
(41 . 1.0)
(42 . 9.30032)
(73 . 0)
(74 . 0)
(75 . 0)
(52 . 0.0)
(53 . 0.0)
(54 . 0.0)
(51 . 0.0)
(210 0.0 0.0 1.0)
(3 . "200")
(100 . "AcDbAlignedDimension")
(13 2759.24 1150.4 616.762)
(14 2740.64 1150.53 3751.33)
(15 0.0 0.0 0.0)
(16 0.0 0.0 0.0)
(40 . 0.0)
(50 . 0.0)
__________________
K Lisp
koMon вне форума  
 
Автор темы   Непрочитано 03.04.2025, 11:14
#19
Ingpro


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


Цитата:
Сообщение от koMon Посмотреть сообщение
нельзя убрать то, чего нет)))
???

Последний раз редактировалось Ingpro, 04.04.2025 в 09:49.
Ingpro вне форума  
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > AutoCAD > Как "починить" размеры



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Какой язык перспективен для инженера-конструктора с условием The_Mercy_Seat Программирование 705 17.03.2021 14:19
Не могу поставить размеры в Solid или Autocad Panteleev SolidWorks 9 12.09.2012 17:47
Мужчины подскажите! Все размеры, выноски и т.д. ставятся под углом. Как отменить? хочу чтобы все размеры, высоты и т.д. ставились строго вертикально. Аня Юный Инженер AutoCAD 19 10.05.2012 10:54
Съезжают некоторые размеры при копировании чертежа внутри одного документа Leencore AutoCAD 4 20.12.2011 13:41
Битые размеры Traum AutoCAD 40 12.05.2008 13:04