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

Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > Помогите отредактировать КОД VBA? В указанном блоке необходимо получить связь между блоками в виде ДУГИ? Как это сделать?

Помогите отредактировать КОД VBA? В указанном блоке необходимо получить связь между блоками в виде ДУГИ? Как это сделать?

Ответ
Поиск в этой теме
Непрочитано 21.01.2013, 14:35 #1
Помогите отредактировать КОД VBA? В указанном блоке необходимо получить связь между блоками в виде ДУГИ? Как это сделать?
ValeraVOLS
 
Регистрация: 21.01.2013
Сообщений: 3

Как в нижеуказанном КОДЕ прописать код для соединения блоков между собой ДУГОЙ? При этом за начало и конец дуги берётся Примитив в блоке (в качестве примитива выступает точка), а середина имеет постоянную координату!

Код:
Код:
[Выделить все]
Sub InsertBlock()
Dim Eeex, K, Path As String, lLastRowMY As Long
Dim BlockName As String
Dim insertionPnt(0 To 2) As Double
Path = "E:\777\Задание.xls"
Set Eeex = GetObject(Path).Worksheets(1)
lLastRowMY = Eeex.Cells(Eeex.Rows.Count, 1).End(-4162).Row
K = Eeex.Range("A1:B" & lLastRowMY)
Eeex.Parent.Close (False)
For n = 1 To UBound(K)
BlockName = K(n, 1)
insertionPnt(0) = CDbl(Split(K(n, 2), ";")(0))
insertionPnt(1) = CDbl(Split(K(n, 2), ";")(1))
insertionPnt(2) = 0#
Set objTemp = ThisDrawing.ModelSpace.InsertBlock(insertionPnt, BlockName, _
1, 1, 1, 0)
Next

End Sub

Последний раз редактировалось Кулик Алексей aka kpblc, 21.01.2013 в 14:42.
Просмотров: 3368
 
Непрочитано 21.01.2013, 14:49
#2
trir


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


Сначала попробуйте соединить линией, зная insertionPnt, надо заранее определить dx, dy для каждого BlockName - так вы получите StartPoint и EndPoint
trir вне форума  
 
Непрочитано 21.01.2013, 14:50
#3
hwd

C, C++, C#
 
Регистрация: 07.10.2009
С-Пб.
Сообщений: 2,762
Отправить сообщение для hwd с помощью Skype™


Если это попытка строить диаграммы, то может лучше воспользоваться специализированным софтом?
__________________
Надеюсь, ты не социальный овощ? Это определяется делами! :welcome:
hwd вне форума  
 
Автор темы   Непрочитано 22.01.2013, 12:19
#4
ValeraVOLS


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


вот хотелось бы уйти от определения координат! возможно ли построение дуги по трём точкам, использую примитивы в блоках и одну постоянную координату
ValeraVOLS вне форума  
 
Непрочитано 22.01.2013, 12:53
#5
hwd

C, C++, C#
 
Регистрация: 07.10.2009
С-Пб.
Сообщений: 2,762
Отправить сообщение для hwd с помощью Skype™


Цитата:
Сообщение от ValeraVOLS Посмотреть сообщение
вот хотелось бы уйти от определения координат! возможно ли построение дуги по трём точкам, использую примитивы в блоках и одну постоянную координату
Тынц (код VBA / ActiveX смотри в самом низу указанной страницы).
__________________
Надеюсь, ты не социальный овощ? Это определяется делами! :welcome:
hwd вне форума  
 
Автор темы   Непрочитано 22.01.2013, 14:57
#6
ValeraVOLS


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


Во вложении пример того чтобы я хотел.
P.S. т.1 и т.3 постоянно меняются, так как блоки разные, и поэтому хотел бы сделать привязку к примитивам в блоках (в качестве примитивах в блоках указаны точки). т2 будет постоянна и её координаты забиты в Excele.

Если кто поможет буду благодарен!
Вложения
Тип файла: rar дуга.rar (19.3 Кб, 30 просмотров)
ValeraVOLS вне форума  
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > Помогите отредактировать КОД VBA? В указанном блоке необходимо получить связь между блоками в виде ДУГИ? Как это сделать?

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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Разработка ПОС, искусство проектирования Tyhig Технология и организация строительства 117 25.11.2021 17:38
Какой язык перспективен для инженера-конструктора с условием The_Mercy_Seat Программирование 705 17.03.2021 14:19