|
GetXData Пример |
Sub Example_GetXData()
' Этот пример создает линию и присоединяет расширенные данные к ней.
' Создайте линию
Dim lineObj As AcadLine
Dim startPt(0 To 2) As Double, endPt(0 To 2) As Double
startPt(0) = 1#: startPt(1) = 1#: startPt(2) = 0#
endPt(0) = 5#: endPt(1) = 5#: endPt(2) = 0#
Set lineObj = ThisDrawing.ModelSpace.AddLine(startPt, endPt)
ZoomAll
' Инициализируйте все значения xdata. Обратите внимание, что первым в
' списке должно быть имя приложения и первый datatype код должен быть 1001
Dim DataType(0 To 9) As Integer
Dim Data(0 To 9) As Variant
Dim reals3(0 To 2) As Double
Dim worldPos(0 To 2) As Double
DataType(0) = 1001: Data(0) = "Test_Application"
DataType(1) = 1000: Data(1) = "Это - испытание на xdata"
DataType(2) = 1003: Data(2) = "0" ' слой
DataType(3) = 1040: Data(3) = 1.23479137438413E+40 ' real
DataType(4) = 1041: Data(4) = 1237324938 ' расстояние
DataType(5) = 1070: Data(5) = 32767 ' Целое число на 16 битов
DataType(6) = 1071: Data(6) = 32767 ' Целое число на 32 бита
DataType(7) = 1042: Data(7) = 10 ' scaleFactor
reals3(0) = -2.95: reals3(1) = 100: reals3(2) = -20
DataType(8) = 1010: Data(8) = reals3 ' real
worldPos(0) = 4: worldPos(1) = 400.99999999: worldPos(2) = 2.798989
DataType(9) = 1011: Data(9) = worldPos ' world space position
' Прикрепите xdata на линию
lineObj.SetXData DataType, Data
' Возвратите xdata для линии
Dim xdataOut As Variant
Dim xtypeOut As Variant
lineObj.GetXData "", xtypeOut, xdataOut
End Sub