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

Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > Как найти в чертеже пустые штриховки

Как найти в чертеже пустые штриховки

Ответ
Поиск в этой теме
Непрочитано 06.06.2012, 15:21 #1
Как найти в чертеже пустые штриховки
kserg
 
Регистрация: 22.04.2004
Сообщений: 269

Помогите пожалуйста найти способ программного (Lisp) обнаружения/распознавания "пустых" (не отображаемых на экране) штриховок. Целью этого является очистка чертежа от подобного хлама.
Файл с образцами подобных штриховок (типа "SOLID" в количестве 11 штук) прилагается (cad2004).
Спасибо.

Вложения
Тип файла: dwg
DWG 2000
HATCH-Nul-2-cad2004.dwg (63.3 Кб, 698 просмотров)


Последний раз редактировалось kserg, 08.06.2012 в 09:43.
Просмотров: 2947
 
Автор темы   Непрочитано 08.06.2012, 10:49
#2
kserg


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


Вот что выдал vlax-dump-object относительно одного из этих объектов ("нехороших" штриховок) :

; IAcadHatch: Интерфейс AutoCAD для работы с штриховкой.
; Значения свойств:
; Application (RO) = #<VLA-OBJECT IAcadApplication 00d077b4>
; Area (RO) = 4.84057e+006
; AssociativeHatch = 0
; Document (RO) = #<VLA-OBJECT IAcadDocument 0c467f58>
; Elevation = 0.0
; GradientAngle = 0.0
; GradientCentered = -1
; GradientColor1 = Ошибка
; GradientColor2 = Ошибка
; GradientName = ""
; Handle (RO) = "1D5C2E"
; HasExtensionDictionary (RO) = 0
; HatchObjectType = 0
; HatchStyle = 0
; Hyperlinks (RO) = #<VLA-OBJECT IAcadHyperlinks 0a973024>
; ISOPenWidth = 100
; Layer = "ОСНОВНОЙ"
; Linetype = "BYLAYER"
; LinetypeScale = 1.0
; Lineweight = 30
; Material = "ByLayer"
; Normal = (0.0 0.0 1.0)
; NumberOfLoops (RO) = 2
; ObjectID (RO) = 2130555952
; ObjectName (RO) = "AcDbHatch"
; Origin = (0.0 0.0)
; OwnerID (RO) = 2130574528
; PatternAngle = 0.0
; PatternDouble = 0
; PatternName (RO) = "SOLID"
; PatternScale = 1.0
; PatternSpace = 1.0
; PatternType (RO) = 1
; PlotStyleName = "Цвет_254"
; TrueColor = #<VLA-OBJECT IAcadAcCmColor 0a973920>
; Visible = -1
; Поддерживаемые методы:
; AppendInnerLoop (1)
; AppendOuterLoop (1)
; ArrayPolar (3)
; ArrayRectangular (6)
; Copy ()
; Delete ()
; Evaluate ()
; GetBoundingBox (2)
; GetExtensionDictionary ()
; GetLoopAt (2)
; GetXData (3)
; Highlight (1)
; InsertLoopAt (3)
; IntersectWith (2)
; Mirror (2)
; Mirror3D (3)
; Move (2)
; Rotate (2)
; Rotate3D (3)
; ScaleEntity (2)
; SetPattern (2)
; SetXData (2)
; TransformBy (1)
; Update ()

...Где бросается в глаза:
; GradientColor1 = Ошибка
; GradientColor2 = Ошибка

Может по этим "GradientColor" можно принимать решение касательно удаления из чертежа подобных штриховок ?
kserg вне форума  
 
Автор темы   Непрочитано 11.06.2012, 11:09
#3
kserg


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


Пропустил еще одну запись:

; GradientName = ""

, т.е. аналог dxf-кода 470 примитива типа HATCH, возможные значения которого:
"LINEAR", "CYLINDER", "INVCYLINDER", "SPHERICAL", "HEMISPHERICAL", "CURVED", "INVSPHERICAL", "INVHEMISPHERICAL" или "INVCURVED".

Т.к. в моем случае значение ("") отличается от вышеприведенных, решил остановиться на этом параметре, как признаке "ненормальности" штриховки.
kserg вне форума  
 
Непрочитано 05.06.2013, 00:33
#4
gomer

строю, ломаю
 
Регистрация: 03.04.2008
Украина
Сообщений: 5,515


Прошел год... Интересно, решение найдено?
gomer вне форума  
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > Как найти в чертеже пустые штриховки



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Отслеживание таблиц на чертеже [программно] TwoZero Программирование 15 13.05.2024 09:51
Коэффициент теплопроводности ж/б плиты, где найти? eugenmax Железобетонные конструкции 24 15.12.2020 19:36
Найти объект в чертеже Алиевич Программирование 9 29.03.2011 15:28
Как найти определенный объект в чертеже? Shoorup Программирование 7 27.03.2008 09:11