Hi people, Hope there are some Python users around in this group ;) I'm learning Python and in the process am trying to automate AutoCAD with Python via COM. with the following code I can successfully start an AutoCAD session, display the program on screen and start a new drawing: from win32com.client import * acad = Dispatch( 'AutoCAD.Application') acad.Visible = 1 DWG = acad.Documents.Add('acadiso.dwt') MS = DWG.ModelSpace <<< and the following statements let me pick a point in the drawing window and return the coordinates as a tuple: UTIL = DWG.Utility punt1 = UTIL.GetPoint() <<< the value of the variable punt1 is e.g. (-5.3, 6.5, 0.0) But sadly, that's about as far i can get things to work. For example: when I try to draw a point in the drawing using another tuple as an argument: punt2 = MS.AddPoint((10.0, 10.0, 0.0)) <<< I get the following error message: Traceback (most recent call last): File "<input>", line 1, in ? File "<COMObject <unknown>>", line 2, in AddPoint com_error: (-2147352567, 'Er is een uitzondering opgetreden.', (0, None, None, None, 0, -2147024809), None) <<< reading the AutoCAD Developer Documentation, I discovered the CreateTypedArray method which creates a variant that contains an array, the method doesn't return the value, so I presume it changes the argument VarArr in-place: CreateTypedArray(VarArr, Type, Value1, [value2, value3, ...valueN]) VarArr = Variant; output-only; The array of values as a variant. Type = Visual Basic 6 Constant; input-only; The type of values you are supplying. vbBoolean, vbInteger, vbLong, vbSingle, or vbDouble. Value1 [Value2, ...ValueN.] = Of the type specified in the Type parameter above; input-only; The value(s) to be included in the variant. My thinking here is, that the AddPoint method expects a Variant argument and not a tuple. But when I use this code to assign a Variant array to variable punt3: UTIL = DWG.Utility punt3=() UTIL.CreateTypedArray(punt3, pythoncom.VT_R8, 10.0, 10.0, 0.0) <<< I don't receive any error message, but variable punt3 still has his old value of (), so nothing happened at all. I was hoping to use this variable in the AddPoint method as follows: punt2 = MS.AddPoint(punt3) So, is there anybody who can help me with this? Kind regards, Gert