利用pyautocad在dwg中插入一个块

代码如下:

from pyautocad import Autocad,APoint

acad = Autocad(create_if_not_exists = True)
acad.prompt("hello, cad\n")
p1 = APoint(0,0)
acad.model.InsertBlock(p1,"D:\python\MyPyAutoCADProjects\lightingbox.dwg")
print acad.doc.Name

文件路径没有错,运行错误,错误提示如下:

hello, cad

Traceback (most recent call last):
File "D:\python\MyPyAutoCADProjects\insertBlock.py", line 10, in
acad.model.InsertBlock(p1,"D:\python\MyPyAutoCADProjects\lightingbox.dwg")
File "C:\Python27\lib\site-packages\comtypes\client\lazybind.py", line 163, in caller
return self._comobj._invoke(descr.memid, descr.invkind, 0, *args)
File "C:\Python27\lib\site-packages\comtypes\automation.py", line 664, in _invoke
dp, var, None, argerr)
COMError: (-2147352562, '\xce\xde\xd0\xa7\xb5\xc4\xb2\xce\xca\xfd\xca\xfd\xc4\xbf\xa1\xa3', (None, None, None, 0, None))

弄了一个晚上了,求大神指点迷津。

0

1个回答

com错误,应该是你传的参数dwg文件可能有问题

0

解决了,把后面的几个选填的参数补齐就可以了。
acad.model.InsertBlock(p1,"D:\python\MyPyAutoCADProjects\lightingbox.dwg",1,1,1,0)
真是醉了

0
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
python环境下用pyautocad包调用cad新建一个dwg并且插入2个块,目前是同一个点
python环境下用pyautocad包调用cad新建一个dwg并且插入2个块,目前是同一个点 from pyautocad import Autocad,APoint acad = Autocad(create_if_not_exists = True) acad.prompt("hello, cad\n") p1 = APoint(0,0) acad.model.InsertBlock(...
利用teigha制作dwg无单位块工具开发
本篇文章是利用teigha这个库来执行cad的dwg文件相关操作。利用该库读取了dwg数据库,然后对数据库复制块,设置块的单位为无。开发这样功能工具的缘由,来源于dwg文件是由arcgis转换过来的,其中带有投影信息,在进行坐标转换的时候出现由于投影信息的缘故,使文件数据库dwg文件的单位为英寸,导致了坐标转换出现了很大的偏差。而我们有相当数量这样的文件,为此急需开发这样的小工具。 而如果是使用...
pyautocad+openpyxl简单的处理一下cad文件
from pyautocad import Autocad import openpyxl wb=openpyxl.load_workbook('./cads.xlsx') sheet=wb.get_sheet_by_name('Sheet1') data=[] pset=[] acad=Autocad(create_if_not_exists=True) acad.prompt('he
c# cad中插入另一个dwg的图块
1.在cad2012环境下: 须引用objectarx开发包 PromptPointResult ppr = ed.GetPoint("请选择插入点:");    Point3d pt = ppr.Value; //这里获得插入点   utility.WriteToEditor(pt.ToString());    blockPath = "b_sample.dwg"; usin
Python3操作AutoCAD:利用pyautocad库能够自动化地进行CAD画图
笔者其实是一名机器学习算法工程师,工作中最痛苦的事儿就是标注数据。而我遇到的不仅仅是标注类别、标签之类的,我需要标注户型图中餐厅和客厅的分区多边形,这个就需要我读取户型图数据(也就是坐标点),然后画图画出来,分析后进行分区画框(其实就是找出分区坐标点)。这个项目工作任务量还是很大,难度也不低,标注数据难度更大。我需要写脚本,否则我哪里知道坐标点怎么标呀。各种画图工具其实也没多大用,我就想着自己开发...
接pyautocad的实例
import openpyxl from pyautocad import Autocad,APoint import sys reload(sys) sys.setdefaultencoding("utf-8") wb=openpyxl.load_workbook("a.xlsx") sheet=wb.get_sheet_by_name("Sheet1") data=[] px=[] py=[]
python利用pyautocad绘制岩体产状
1.读取EXCEL表相应数据 2.插入block块 3.根据表格数据旋转block角度 4.增加文字注释 acad.model.InsertBlock(p3,"D:\\python\\dccz.dwg",1,1,1,0)中后续参数的含义:Scale/X/Y/Z/Rotate 并且rotate中为弧度,非度。以下为实现代码: #by helix 94430966@qq.com fro...
关于AutoCAD的dwg文件操作学习
由于工作需要最近在研究AutoCAD的.dwg文件的读取问题。在网上查了很多的资料和信息。理解渐有清晰。对于在网上看到的资料现在此记录连接,以备以后不时之需。但博客初写,不知是否算是原创,而其他类型也不甚合适,暂且如此。下面是感兴趣的链接,记录如下: 1、《基于OpenDWG Toolkit访问AutoCAD DWG图形文件》,此文有相对清晰的整体概述。连接:http://www.doc88.c
读写dwg文件
用于读写AutoCAD数据格式dwg的dll类,提供了对dwg格式的支持
插入块参照后,将块内对象坐标换算为其当前dwg中的坐标
//以下代码通过选择一个块参照,将块内的圆对象的坐标转换为该圆在当前dwg中的坐标并输出。相当于炸开块参照后再读取圆对象坐标的效果 ads_name ObjName; ads_point pnt; AcDbObjectId objId; if (RTNORM != acedEntSel(_T(""),ObjName,pnt)) { return; }
python下用pyautocad小试牛刀
python下用pyautocad小试牛刀 画点,线,圆,文字等, 获取对象,插入点,查找特定文字等 # -*- coding: UTF-8 -*- from pyautocad import Autocad,APoint acad = Autocad(create_if_not_exists=True) acad.prompt("Hello, Autocad from Python\n") p...
在CAD中如何用VBA插入一个外部参照块
在CAD中如何用VBA插入一个外部参照块 VBA 代码
插入外部dwg文件,避免外部参照
之前用插入外部参照快的方法,拷贝给别人的时候还需要绑定外部参照快,或者将外部参照dwg拷贝过去,很麻烦,后经过以下方法避免了外部参照的麻烦,插入的块直接就是块参照,非常好用。 转载自:http://blog.csdn.net/missingshirely/article/details/11899995点击打开链接 处理方法:读取指定文件路径的dwg图。 核心代码:  
AutoCAD中添加块和块参照(转载)
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <div id="content" class= "content mod-cs-content text-content clearfix"> 块参照就是Au
C#开发AutoCad,利用ObjectDbx技术在当前dwg文件中插入其它未打开的dwg文件中的图块
C# 利用ObjectDbx技术在当前图形中插入其它未打开的图形中的图块 纠结了两天,在http://forums.autodesk.com/t5/Visual-Basic-Customization/Possible-to-insert-block-from-external-DWG-w-o-inserting-whole/td-p/2001460 这里找到了 vb实现的方法,自己整理下
ObjectARX学习笔记(二十七)---如何拷贝将一个AcDbDatabase拷贝到另一张dwg里面
Acad::ErrorStatus insert( const AcGeMatrix3d& xform, AcDbDatabase* pDb, bool preserveSourceDatabase = true ); Parameters Parameters Description const AcGeMatrix3d& xform Input transf
使用python来操作autocad,并且将坐标点转换成cad可见对象
由于工作需要,在项目中遇到一个棘手的问题,如何将(mssql)数据库中的BLOB文件转成cad可见图形 (可能每个项目需求不一样,解决方式不同)    第一步 . 需要转换的图形类型                    第二步 . 那我们先查询这个字段                    第三步 试试将这个写入一个文本中  看看是那种图形 (data:image/*;base64...
获取DWG图纸块的属性字串
上次介绍了工程图里三种文本形式 http://blog.csdn.net/autodeskinventorapi/article/details/8524401。DWG图纸的块可以有属性文本。该文本是一种提示字串。Inventor API提供方法可访问到这些信息。 假定有这样一个AutoCAD图纸,其中有个块叫做myblock, 含有三个属性:aaa,bbb,ccc。最终显示的字串是:aaa-r
ARX如何打开指定位置的DWG文件
打开指定位置的DWG文件,代码比较简单,直接tie。 void OpenDoc( void *pData) { AcApDocument* pDoc = acDocManager->curDocument(); if (acDocManager->isApplicationContext())  { acDocManager->appContextOpenDocument((const
基于ObjectARX的DWG文件访问初探
刘兴权 尹彦(中南大学地学院GIS研究中心,湖南 长沙 410083)     摘 要 AutoCAD的DWG格式文件是其它图形软件的主要数据源,常常需要将其转换成其它格式。本文在讨论了DWG文件访问方法的基础上,重点介绍了基于ObjectARX的DWG文件的访问步骤与读取方法,并给出了关键代码。    关键词 ObjectARX;DWG;文件访问      Autodesk 公司出品的
ObjectARX 添加图块坐标扩展数据
//图块坐标扩展数据 double w1 = GVI_Frame_Scale*291/2; double h1 = GVI_Frame_Scale*176/2; AcGePoint3d LDP = Inset_Center + AcGeVector3d(-w1,-h1,0);//图块左下点坐标 AcGePoint3d RUP = Inset_Center + AcG
将当前dwg内的对象复制到另一个dwg文件中
//将当前dwg内的对象复制到另一个dwg文件中  AcDbDatabase * pDB=acdbHostApplicationServices()->workingDatabase();  AcDbBlockTable *pBT1;  pDB->getBlockTable(pBT1,AcDb::kForRead);       AcDbBlockTableRecord *pBTR1;
AutoCAD .Net 在dwg文件中存储自定义数据
问题我需要在 dwg 文件中存储一些信息,以额外描述图形文件并使它能够和其它软件程序集成。 请问怎样才能在 dwg 文件中写入自定义数据并读取?回答你可以使用 Named Object Dictionary (NOD, 中文名: 命名对象字典) 来存储自定义数据。 以下示例程序展示了如何在当前 dwg 文件中写入自定义数据并读取。[CommandMethod("CAXDEV_WNOD")] pu
利用FME将dwg不丢属性转为shp格式
详细讲解了从DWG格式转为shp格式时的操作问题。 中间用到了FME软件,希望对大家有所帮助。
revit 二次开发 链接CAD文件读取
revit中读取CAD文件的地址 UIApplication uiapp = commandData.Application; UIDocument uidoc = uiapp.ActiveUIDocument; Document doc = uidoc.Document; // Reference refer = ui...
CAD开发:DWG合并,dwg转换为dxf
一、需求 有时候由于跨度大、数据量大,会将数据存储于多个dwg文件,比如一条铁路的设计图纸就存在几个甚至几十个dwg文件中。如果想合并为一个dwg文件,手动合并太麻烦,所以就可以采用代码合并。本文使用teigha库进行编码。 二、直接上代码 /// /// dwg文件转换为dxf文件,多个dwg文件合并为一个dxf或dwg文件 ///
CAD外部参照与外部块使用方法与区…
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <div id="content" class= "content mod-cs-content text-content clearfix">  我们知道,一
CAD批量插入块
使用本程序在2004-2006的CAD上面使用 命令ins
取自官方的实例pyautocadline
#!/usr/bin/env python # -*- coding: utf-8 -*- from pyautocad import Autocad, APoint acad = Autocad(create_if_not_exists=True) acad.prompt("Hello, Autocad from Python\n") print acad.doc.Name p1 = APo
dwg在坐标转换的注意事项
作者:刘科            今年随着自然资源部成立,各部门间有大把的多源异构数据需要交互、清理、处理、整合、融合,CGCS2000坐标系的推广,大把的多源异构存量数据需要完成坐标转换。很荣幸我们所使用的FME平台在去年的国土资源部坐标转换评测也是顺利通过的,当然坐标转换不过是FME的九牛一毛、冰山一角,FME的强大我就不再这打广告了,接下来我们来看下dwg数据这种较为复杂的格式,在坐标转...
指北针CAD图块集合.dwg
指北针CAD图块集合.dwg
使用Python实现AutoCAD中等高线自动删除
  作为苦逼的测绘工作者,免不了和AutoCAD及其众多二次开发版打交道,在这类软件中,有时需要进行一些工作量巨大的操作,手工做是不可能手工做的,Lisp又不会写,怎么办呢?(众所周知,AutoCAD提供有AutoLisp来实现编程,但是并不简单易学,反正本人是不会2333),现在我们使用Python中提供的pyautocad包就能够简单地操作CAD啦。背景:  前段时间博主遇到一个很蛋疼的问题...
直接读写DWG文件
我正在用delphi直接读写DWG文件,有兴趣交流。
使用Teigha.NET操作DWG基本配置
一、安装下载需要的环境 VS2012、Teigha.NET3.08.03
FME对CAD扩展属性的读写
原文发布时间:2011-04-13作者:怕冷的企鹅    首先,FME2011最新的版本可以支持CAD几类不同的版本:从早期的Release9一直到现在Release2010,默认的创建新目标数据的版本为CAD2007的版本,当然若在写目标数据集时,不确认原始数据CAD的版本信息,但又新目标数据文件的版本和源数据版本一致时,可以在加载写入数据文件时设置参数(file Contents的2项内容,选...
使用CadLib实现CAD(dxf、dwg格式)文件的读取和显示
使用CadLib实现CAD(dxf、dwg格式)文件的读取和显示
opendwg提供的二次开发库
opendwg allence组织提供的dwg文件访问库, 支持2010版dwg文件 完全解析dwg文件中的层/块/引用/文字/线等所有内容 利用它可完美实现PDM的设计集成
数据结构字符串块链实验
1、相关类型说明 #define chunksize 8 #include "stdlib.h" #include "stdio.h" #include "string.h" typedef struct chunk {  char ch[chunksize];   structchunk *next; }chunk;//块链结点类型 ty
Python操作AutoCAD开发环境概述(Windows)
目录安装Python环境 pyautocad库安装三种安装方法 comtypes库安装 开发环境安装Python环境python官网下载: https://www.python.org/downloads/ 本人这边安装的的python3.3.3版本,其他版本未测,据pyautocad库官方介绍,pyautocad是支持2.x和3.x的pyautocad库安装pyautocad库是俄罗斯一个工程
c#生成dwg文件实例
C#调用autocad.net生成DWG文件。需要安装AUOTCAD,实例引用的cad2007的com组件。可以根据安装的cad版本重新引用
文章热词 帧内预测像素块推导 漏洞挖掘与利用 像素块特征生成 去块滤波执行过程 导块预测模式
相关热词 c#插入sql语句坑块 bootstrap 中块剧中 利用c#新建一个网站 利用python线图教程 设计一个简单区块链教程