archliny 发表于 2002-8-22 12:58:00

请给个Vla-setxdata 赋值的例子。

谢谢。

mccad 发表于 2002-8-22 13:05:00

在这里

Sub Example_SetXdata()
    ' This example creates a line and attaches extended data to that line.
   
    ' Create the line
    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

    ' Initialize all the xdata values. Note that first data in the list should be
    ' application name and first datatype code should be 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) = "This is a test for xdata"

    DataType(2) = 1003: Data(2) = "0"                   ' layer
    DataType(3) = 1040: Data(3) = 1.23479137438413E+40' real
    DataType(4) = 1041: Data(4) = 1237324938            ' distance
    DataType(5) = 1070: Data(5) = 32767               ' 16 bit Integer
    DataType(6) = 1071: Data(6) = 32767               ' 32 bit Integer
    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
   
    ' Attach the xdata to the line
    lineObj.SetXData DataType, Data
   
    ' Return the xdata for the line
    Dim xdataOut As Variant
    Dim xtypeOut As Variant
    lineObj.GetXData "", xtypeOut, xdataOut
   
End Sub

archliny 发表于 2002-8-22 18:53:00

我的意思不是用VBA,是在Lisp中应用。

我对VBA不熟悉,只会一点lisp。

mccad 发表于 2002-8-22 22:19:00

实用函数栏目有两个函数可用

ax:GetXData 获取附着在AutoCAD对象上的扩展图元数据
http://www.mjtd.com/function/vlisp/038.htm

ax:PutXData 附着扩展图元数据到AutoCAD对象上
http://www.mjtd.com/function/vlisp/039.htm

archliny 发表于 2002-8-23 07:18:00

收下了,谢谢。

页: [1]
查看完整版本: 请给个Vla-setxdata 赋值的例子。