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

Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > Создание контура штриховки в блоке

Создание контура штриховки в блоке

Ответ
Поиск в этой теме
Непрочитано 20.09.2017, 10:43 #1
Создание контура штриховки в блоке
jackUAROBEY
 
Проектировщик ВК
 
Анапа
Регистрация: 18.09.2014
Сообщений: 55

Добрый день.
Не могу добавить контур штриховки.
Код:
[Выделить все]
 (defun block ( / Dl p1 bsnn bsnn_ bsnn_n bsnn_n_ blk_kub temp obj)
(vl-load-com)
(setq acad_object (vlax-get-acad-object))                  
  (setq active_document (vla-get-activedocument acad_object))
  (setq bl_name "yuyu")
(setq m_koef 1)
  (setq Dl (* 0.5 m_koef))
  (setq p1 (list 0.0 0.0 0.0))
  (setq bsnn (getvar "CELWEIGHT"))
  (setq bsnn_ (getvar "CELTYPE"))
  (setq bsnn_n (getvar "CECOLOR"))
  (setq bsnn_n_ (getvar "CELTSCALE"))
  (setvar "CELWEIGHT" 70)
  (setvar "CELTYPE" "continuous")
  (setvar "CECOLOR" "bylayer")
  (setvar "CELTSCALE" 1.0)
  (setq blk_kub (vla-add (vla-get-blocks active_document) (vlax-3d-point p1) bl_name))
  (setq temp (vla-AddCircle blk_kub (vlax-3d-point p1)  Dl) ) 
  (setq obj (vla-AddHatch  blk_kub acHatchPatternTypePreDefined "Solid" :vlax-true AcHatchObject))
  (setq temp (vlax-safearray-fill (vlax-make-safearray vlax-vbObject '(0 . 0))    temp))
  (vla-AppendOuterLoop  obj temp); почему то не добавляет контур к штриховке
  (setvar "CELWEIGHT" bsnn)
  (setvar "CELTYPE" bsnn_)
  (setvar "CECOLOR" bsnn_n)
  (setvar "CELTSCALE" bsnn_n_)
  (princ)
  )

----- добавлено через 15 сек. -----
Вот на этом шаге коротит vlax-safearray-fill

Последний раз редактировалось jackUAROBEY, 20.09.2017 в 11:15.
Просмотров: 3321
 
Непрочитано 20.09.2017, 11:26
#2
trir


 
Регистрация: 18.12.2010
Сообщений: 5,051


не умничай, делай по справке
Код:
[Выделить все]
     (setq outerLoop (vlax-make-safearray vlax-vbObject '(0 . 1)))
    (vlax-safearray-put-element outerLoop 0 arc)
    (vlax-safearray-put-element outerLoop 1 line)
http://help.autodesk.com/view/OARX/2...D-A0E8220F69F4

----- добавлено через ~1 мин. -----
(vlax-make-safearray vlax-vbObject '(0 . 0)) - делаешь масив в ноль элемнтов?
trir вне форума  
 
Непрочитано 20.09.2017, 11:29
#3
Кулик Алексей aka kpblc
Moderator

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


Цитата:
Сообщение от trir Посмотреть сообщение
(vlax-make-safearray vlax-vbObject '(0 . 0)) - делаешь масив в ноль элемнтов?
Это массив в 1 элемент.
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 20.09.2017, 11:33
#4
trir


 
Регистрация: 18.12.2010
Сообщений: 5,051


а если так?
Код:
[Выделить все]
 (setq temp (vlax-safearray-fill (vlax-make-safearray vlax-vbObject '(0 . 0))   '( temp)))
'element-values
Type: List
https://knowledge.autodesk.com/searc...2936B-htm.html
trir вне форума  
 
Автор темы   Непрочитано 20.09.2017, 11:33
#5
jackUAROBEY

Проектировщик ВК
 
Регистрация: 18.09.2014
Анапа
Сообщений: 55


Все я допер
вот здесь ошибка
вместо
(setq temp (vla-AddCircle blk_kub (vlax-3d-point p1) Dl)
надо
(setq temp (list (vla-AddCircle blk_kub (vlax-3d-point p1) Dl) )
Всем спасибо
jackUAROBEY вне форума  
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > Создание контура штриховки в блоке

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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Solidworks 2011 создание нестандартной штриховки, добавление в библиотеку обозначений Верра SolidWorks 0 28.06.2017 10:26
Создание контура вокруг нескольких штриховок Блондинка в автокаде Программирование 4 12.04.2014 08:14
Добавление ручек контура штриховки в AutoCAD 2012 Гериков AutoCAD 4 16.08.2013 14:01
создание образцов штриховки по госту(расширение рат) Aleksshustr AutoCAD 6 16.10.2010 20:25