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

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

Определении координат блока.

Ответ
Поиск в этой теме
Непрочитано 24.10.2011, 14:33 #1
Определении координат блока.
sychalex
 
Регистрация: 01.09.2011
Сообщений: 4

Добрый день. Помоги пож. новичку. Задача: необходимо вывести координаты выделенного блока. Вот что я смог написать:


Sub TES()
Dim objAcEnt As AcadEntity
Dim strPrmt As String
Dim varMPnt(0 To 2) As Variant
strPrmt = vbCr & "Выберете блок " & strVerb & ":"
ThisDrawing.Utility.GetEntity objAcEnt, varMPnt, strPrmt


MsgBox varMPnt(1)
End Sub

Вопрос: как назначить переменным координаты выделенного блока?
Просмотров: 3354
 
Непрочитано 24.10.2011, 14:52
#2
Кулик Алексей aka kpblc
Moderator

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


Что за координаты? Координаты точки вставки? Координаты описанного параллелограмма?
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Автор темы   Непрочитано 24.10.2011, 14:56
#3
sychalex


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


наверное, координаты точки вставки блока. В свойствах блока - геометрия - указанные координаты Х и У. я хочу эти значения извлечь в память для дальнейшей работы.
sychalex вне форума  
 
Непрочитано 24.10.2011, 15:12
#4
Кулик Алексей aka kpblc
Moderator

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


Примерно так...
Код:
[Выделить все]
Sub TES()
Dim objAcEnt As AcadEntity
Dim strPrmt As String
Dim varMPnt(0 To 2) As Variant
strPrmt = vbCr & "Выберете блок " & strVerb & ":"
ThisDrawing.Utility.GetEntity objAcEnt, varMPnt, strPrmt

MsgBox objAcEnt.InsertionPoint(0) + ";" + objAcEnt.InsertionPoint(1) + ";" + objAcEnt.InsertionPoint(2)
MsgBox varMPnt(1)
End Sub
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Автор темы   Непрочитано 24.10.2011, 15:24
#5
sychalex


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


Так пробовал, ругается программа:
Миниатюры
Нажмите на изображение для увеличения
Название: 1.jpg
Просмотров: 49
Размер:	11.5 Кб
ID:	68338  
sychalex вне форума  
 
Непрочитано 24.10.2011, 16:08
1 | #6
TararykovDG

Программист-энтузиаст
 
Регистрация: 17.07.2009
Воронеж
Сообщений: 571


sychalex, попробуй так
Код:
[Выделить все]
Sub TES()
Dim returnObj As AcadBlockReference
Dim strPrmt As String
Dim varMPnt(0 To 2) As Variant
strPrmt = vbCr & "Выберете блок " & strVerb & ":"


On Error Resume Next

ThisDrawing.Utility.GetEntity returnObj, varMPnt, strPrmt
    
If Err <> 0 Then
    Err.Clear
    MsgBox "Выбранный примитив не является вхождением блока"
    Exit Sub
Else
    MsgBox Str(returnObj.InsertionPoint(0)) + ";" + Str(returnObj.InsertionPoint(1)) + ";" + Str(returnObj.InsertionPoint(2))
End If

End Sub
__________________
cadtools
TararykovDG вне форума  
 
Непрочитано 24.10.2011, 16:19
1 | #7
Кулик Алексей aka kpblc
Moderator

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


У меня сейчас только 2012 64 бит, без поддержки VBA. Возможно, надо менять типы переменных: objAcEnt на AcadObject, varMPnt без указания массива на Variant. Если появятся спецы по VBA, они разрулят вопрос...
А вот и подтянулись спецы
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > Определении координат блока.

Размещение рекламы


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Странное поведение динамического блока высотной отметки hwd Динамические блоки 12 08.09.2011 11:15
округление подписей координат в атрибутах блока АлексЮстасу AutoCAD 4 19.07.2010 13:35
Как перенести в чертеж блок из файла библиотеки блоков Main Urod Программирование 8 03.02.2010 14:15
Определение координат динамического блока в среде VBA ArtemYa Программирование 8 03.12.2009 13:57
Помощь по Лире Серега М Лира / Лира-САПР 52 28.05.2007 02:47