精华内容
下载资源
问答
  • C#CAD二次开发之DWG打印PDF,设置区域打印
    千次阅读
    2021-04-20 15:41:17
    
    /// <summary>
            /// 区域打印pdf
            /// </summary>
            /// <param name="strPath">保存路径</param>
            /// <param name="minPt">最小点</param>
            /// <param name="maxPt">最大点</param>
            /// <param name="scale">缩放比例</param>
    
    public void Getdwfs(string strPath, Point3d minPt, Point3d maxPt, Scale3d scale)
            {
                Document activeDoc = GrxCAD.ApplicationServices.Application.DocumentManager.MdiActiveDocument;
                GcadDocument doc = activeDoc.AcadDocument as GcadDocument;
                doc.SetVariable("BACKGROUNDPLOT", 0);//前台打印
    
                doc.ActiveLayout.ConfigName = "DWG To PDF.pc3"; //"DWF6 ePlot.pc3";// // //使用的打印机设置名称 页面设置名称
                doc.ActiveLayout.StyleSheet = "monochrome.ctb";
    
                object LowerLeft = new double[2];//左下坐标,即xy最小值
                object UpperRight = new double[2];//右上坐标,即xy最大值
                ((double[])LowerLeft)[0] = minPt.X;
                ((double[])LowerLeft)[1] = minPt.Y;
                ((double[])UpperRight)[0] = maxPt.X;
                ((double[])UpperRight)[1] = maxPt.Y;
                doc.ActiveLayout.SetWindowToPlot(LowerLeft, UpperRight);
                doc.ActiveLayout.PlotType = GcPlotType.acWindow;//可以选择其他打印方式
    
                doc.ActiveLayout.PlotWithLineweights = true; //线宽比例
                doc.ActiveLayout.PlotWithPlotStyles = true; //使用样式
    
                doc.ActiveLayout.StandardScale = GcPlotScale.acScaleToFit; //自动缩放
                doc.ActiveLayout.UseStandardScale = true; // 使用标准比例
                doc.ActiveLayout.CenterPlot = true; // 居中
    
                doc.ActiveLayout.PlotRotation = GcPlotRotation.ac0degrees;//横向//0 横向,90 纵向,180反向,
    
                double Length = (maxPt.X - minPt.X) / scale.X;
                double Width = (maxPt.Y - minPt.Y) / scale.Y;
    
                //设置打印图纸大小
                string[] cmnamelst = (string[])doc.ActiveLayout.GetCanonicalMediaNames();
                foreach (string name in cmnamelst)
                {
                    string mediaName = doc.ActiveLayout.GetLocaleMediaName(name);
                    //查找纸张大小
                    if (mediaName.Contains("ISO full bleed") && mediaName.Contains(Length.ToString("f2")) && mediaName.Contains(Width.ToString("f2")))
                    {
                        if (mediaName.IndexOf(Length.ToString("f2")) < mediaName.IndexOf(Width.ToString("f2")))
                        {
                            doc.ActiveLayout.CanonicalMediaName = name;
                            break;
                        }
                    }
                }
    
                doc.ActiveLayout.PaperUnits = GcPlotPaperUnits.acMillimeters; //单位毫米
                doc.Plot.DisplayPlotPreview(GcPreviewMode.acFullPreview);//预览
                doc.Plot.QuietErrorMode = true;//生成存档,避免报错
    
                string destPath = Path.GetDirectoryName(strPath) + "\\" + Path.GetFileNameWithoutExtension(strPath) + ".pdf";
                doc.Plot.PlotToFile(destPath);//第二个参数为打印机名称
    
    
            }

    有时候打印为空,TARGET系统变量为0,0,0 这种情况下,效果没有问题,但当TARGET不为0时,需要UCS->DCS的转换

    [DllImport("gced.dll", CallingConvention = CallingConvention.Cdecl)]
    static extern private int gcedTrans(double[] point, IntPtr fromRb, IntPtr toRb, int disp, double[] result);
    
    
    //这段代码放在原先代码中的最前面
    Document acDoc = GrxCAD.ApplicationServices.Application.DocumentManager.MdiActiveDocument;
                ViewTableRecord acView = acDoc.Editor.GetCurrentView();
                Point3d point = acView.Target;
    if (point.X == 0 && point.Y == 0 && point.Z == 0)
                {
    
                }
                else 
                { 
                    ResultBuffer rbF = new ResultBuffer();
                    rbF.Add(new TypedValue(5003, 1));
    
                    ResultBuffer rbT = new ResultBuffer();
                    rbT.Add(new TypedValue(5003, 2));
                    //ResultBuffer rbFrom = new ResultBuffer(new TypedValue(5003, 1));
                    //ResultBuffer rbTo = new ResultBuffer(new TypedValue(5003, 2));
    
                    double[] dMin = new double[] { 0, 0, 0 };
                    double[] dMax = new double[] { 0, 0, 0 };
                    gcedTrans(minPt.ToArray(), rbF.ResbufObject, rbT.ResbufObject, 0, dMin);
                    gcedTrans(maxPt.ToArray(), rbF.ResbufObject, rbT.ResbufObject, 0, dMax);
    
                    minPt = new Point3d(dMin[0], dMin[1], dMin[2]);
                    maxPt = new Point3d(dMax[0], dMax[1], dMax[2]);
    
    
                }

     

    更多相关内容
  • 《AutoCAD VBA二次开发教程》,是2006年出版的图书,作者是张帆。本书以AutoCAD 2005中文版为开发平台,通过73个精彩的编程实例,向读者展示了AutoCAD VBA开发的高级技术。 1图书信息 中文名:AutoCAD VBA二次开发...
  • 利用二次开发进行CAD批量打印探究.pdf
  • C#实战之CAD二次开发005:打印pdf

    千次阅读 2019-07-28 12:05:54
    上期我们介绍了如何在CAD中插入文字和插入图块两个功能,这期我们再讲一下如何实现CAD打印pdf功能。 打印pdf 要实现打印pdf功能,需要借助一个软件pdfFactory,这个是pdf虚拟打印机,下载地址 链接:...

    前言
    上期我们介绍了如何在CAD中插入尺寸标注功能,这期我们再讲一下如何实现在CAD中打印pdf功能。

    打印pdf

    要实现打印pdf功能,需要借助一个软件pdfFactory,这个是pdf虚拟打印机,可以实现CAD打印pdf功能,该软件的下载地址为:
    链接:https://pan.baidu.com/s/1LFvNM4V8UIAOUi2bEPbPEQ 提取码:8wwj
    当然也可以使用CAD自带的打印pdf功能,但是有时候打印出来的pdf文档中的某些希腊字符可能会出现乱码,故本次使用的是pdfFactory软件来实现。
    代码贴上:

    private static void plotPdf(AcadDocument Doc, double[] lowerLeft, double[] upperRight)
    {
        AcadLayout layout2 = Doc.ActiveLayout;
        AcadPlotConfiguration plotConfiguration2 = Doc.PlotConfigurations.Add(Guid.NewGuid().ToString("N"), Doc.ActiveLayout.ModelType);
        plotConfiguration2.ConfigName = pdfFactory Pro.pc3; //打印机名,这里选择安装好的pdffactory
        plotConfiguration2.StyleSheet = "monochrome.ctb"; //样式表名
        plotConfiguration2.PlotWithLineweights = true; //线宽比例
        plotConfiguration2.PlotWithPlotStyles = true; //使用样式
        plotConfiguration2.CanonicalMediaName = "A4"; //图纸尺寸
    
        double[] LowerLeft2 = Doc.Utility.TranslateCoordinates(lowerLeft, AcCoordinateSystem.acWorld, AcCoordinateSystem.acDisplayDCS, 0, Type.Missing) as double[];
        double[] UpperRight2 = Doc.Utility.TranslateCoordinates(upperRight, AcCoordinateSystem.acWorld, AcCoordinateSystem.acDisplayDCS, 0, Type.Missing) as double[];
        plotConfiguration2.SetWindowToPlot(new double[] { LowerLeft2[0], LowerLeft2[1] }, new double[] { UpperRight2[0], UpperRight2[1] });
        plotConfiguration2.PlotType = AcPlotType.acWindow; //打印模式為窗口
    
        plotConfiguration2.UseStandardScale = true;
        plotConfiguration2.StandardScale = AcPlotScale.acScaleToFit; //标准比例,需要UseStandardScale = true;
    
        plotConfiguration2.CenterPlot = true; //居中打印
        plotConfiguration2.PaperUnits = AcPlotPaperUnits.acMillimeters; //单位毫米
        plotConfiguration2.PlotRotation = AcPlotRotation.ac0degrees;//横向纵向
    
        layout2.CopyFrom(plotConfiguration2);
        layout2.RefreshPlotDeviceInfo();//发送打印命令给pdf
        Doc.Plot.QuietErrorMode = true;
    
        Doc.Plot.PlotToDevice();
    
    }
    

    其中传入CAD Doc对象,就可以设置相应的打印选项。这里要注意的是,需要引用CAD两个东西:
    using Autodesk.AutoCAD.Interop.Common;
    using Autodesk.AutoCAD.Interop;
    可以设置打印样式、选择打印机、图纸尺寸等等;
    控制打印范围的方法主要是这个SetWindowToPlot,通过传入一个double数组double[]来控制选取的点(之前一直卡在这里,因为SetWindowToPlot方法里的参数为(object LowerLeft, object UpperRight),不知道object应该是什么)。
    除了选取范围打印,也可以设置其他方式打印,具体读者可以通过设置AcPlotType来尝试一下,这里再介绍一下如何实现自动打开CAD文件,

    public class OpreateCad
    {
    	public static AcadApplication App;
    	public static AcadDocument Doc;
    	private static void open_cad()
    	{
    	    //連接CAD
    	    if (connect_autocad() == false)
    	    {
    	        return;
    	    }
    	    //關閉已打開文檔
    	    App.Documents.Close();
    	    Doc = App.Documents.Open(Application.StartupPath + "\\" + "source.dwg");
    	    App.ZoomExtents();
    	}
    	private static bool connect_autocad()
    	{
    	    try
    	    {   // if AUTOCAD alread open,then conenct it.
    	        App = (AcadApplication)System.Runtime.InteropServices.Marshal.GetActiveObject("AutoCAD.Application");
    	    }
    	    catch
    	    {   // if AUTOCAD don't open then open it. 
    	        try
    	        {
    	             App = new AcadApplication();
    	        }
    	        catch (Exception e) { Console.WriteLine(e); return false; }
    	    }
    	    App.Visible = true;
    	    return true;
    }
    

    通过调用open_cad这个方法就可以实现自动打开你所指定路径下的CAD文档,这样就不用每次都要自己手动去打开CAD。
    同样的,我们把打印pdf的方法放到我们Command类中,在打开CAD之后,输入cad命令,即可实现打印pdf的功能,如果需要打印多张的话,可以多次调用这个方法,并设置成不同的坐标点即可。
    默认情况下,每打印一张pdf会弹出一个预览框,会影响到下一个pdf的打印,我们需要把这一个预览的选项关闭。首先我们按CTRL+P进入打印机选项界面
    在这里插入图片描述
    选择我们安装的pdffactory,点击旁边的性质选项
    在这里插入图片描述
    再点击自订性质选项,选中不要显示对话方块,下方全部取消勾选即可。
    默认pdf的保存路径为C盘的文件的pdf档案的自动保存中,文件名默认
    在这里插入图片描述
    打印pdf效果如下(这里没显示具体打印内容,总共打印了三次)
    在这里插入图片描述
    这期打印pdf功能的介绍就到这里了,由于本项目会和python进行文件传输,下期我会介绍如何通过socket与python进行文件传输的功能。

    展开全文
  • objectarx基于CAD二次开发理论和技术的电子书,对开发可以提供不少帮助
  • 由于公司需求,最近也是找了好久才终于找到C#.NET读取DWG格式的CAD文件信息方法,采用 DWGdirect_NET_3_02动态库里的方法,可以完美的读到DWG文件的信息,这里分享出来,压缩文件包括了DEMO和动态库文件,DEMO可以...
  • 用Python做CAD二次开发打印

    千次阅读 2020-04-30 09:12:50
    用Python做CAD二次开发打印) 在CSDN上用CAD做二次开发的文章已经有大神做出来了,本文中也直接把部分代码搬了过来。 现在把打印图纸的代码发上来让大家看看,权当补充说明。 大部分方法查acadauto.chm能查到。 ...

    用Python做CAD二次开发(打印)

    在CSDN上用CAD做二次开发的文章已经有大神做出来了,本文中也直接把部分代码搬了过来。
    现在把打印图纸的代码发上来让大家看看,权当补充说明。
    大部分方法查acadauto.chm能查到。
    下面贴出代码。

    #!/usr/bin/env python
    # -*- coding: utf-8 -*-
    
    import math
    import win32com.client
    import pythoncom
    
    # 接口是照抄另外一个大神的
    acad = win32com.client.Dispatch("AutoCAD.Application.23")
    # AutoCAD.Application.19为 ProgID
    acaddoc = acad.ActiveDocument
    acaddoc.Utility.Prompt("Hello AutoCAD\n")
    acadmod = acaddoc.ModelSpace
    
    
    def APoint(x, y):
        """坐标点转化为浮点数"""
        # 需要两个点的坐标
        return win32com.client.VARIANT(pythoncom.VT_ARRAY | pythoncom.VT_R8, (x, y))
    
    
    def print(kind, Scale, x, y, path, Fname):
    	# 两种格式的图纸用到两种打印机
        if 'PDF' in kind:
            name = 'DWG To PDF.pc3'
        elif 'DWF' in kind:
            name = 'DWF6 ePlot.pc3'
    
        layout = acaddoc.layouts.item('Model') # 先来个layout对象
        plot = acaddoc.Plot # 再来个plot对象
    
        acaddoc.SetVariable('BACKGROUNDPLOT', 0) # 前台打印
        layout.StyleSheet = 'monochrome.ctb' # 选择打印样式
        layout.PlotWithLineweights = False # 不打印线宽
        a = layout.GetCanonicalMediaNames() # 这句忽略
        layout.ConfigName = name # 选择打印机
        layout.CanonicalMediaName = 'ISO_full_bleed_A2_(594.00_x_420.00_MM)' # 图纸大小这里选择A2
        layout.PaperUnits = 1 # 图纸单位,1为毫米
        layout.PlotRotation = 0 # 横向打印
        layout.StandardScale = 0 # 图纸打印比例
        layout.CenterPlot = True # 居中打印
        layout.PlotWithPlotStyles = True # 依照样式打印
        layout.PlotHidden = False # 隐藏图纸空间对象
    
        po1 = APoint(x * Scale - 1, y * Scale)
        po2 = APoint(x * Scale - 1 + 11880, y * Scale + 8400) # 左下点和右上点
        layout.SetWindowToPlot(po1, po2)
        layout.PlotType = 3.5 # 按照窗口打印,别问我为什么是3.5我试出来的。
        plot.PlotToFile(path + '\ ' + Fname)
    
    展开全文
  • 最近搞电气装配图,一份dwg里面N份框表框图,打印时,要先一个个框图导出pdf,而导出pdf时又要一个个用窗口模式选择导出范围,流程比较繁琐,于是程序员之魂觉醒赶紧弄了这么一个工具来帮我一行导出pdf并全部合并...

    20190815 热

    项目背景:

    最近搞电气装配图,一份dwg里面N份框表框图,打印时,要先一个个框图导出pdf,而导出pdf时又要一个个用窗口模式选择导出范围,流程比较繁琐,于是程序员之魂觉醒赶紧弄了这么一个工具来帮我一次行导出pdf并全部合并。

    talk is cheap,先上工程。

    工具对应autocad的版本是2017,其他版本没有测试过,应该是兼容2016的。

    工具执行文件

    https://download.csdn.net/download/newidea07/11562721

    工具项目开源,链接

    https://gitee.com/newideas/cad2pdf.git (ps:合并pdf部分用了Spire.Pdf库,导致项目比较大,后期有时间换个另一个库或者自己写pdf)

    核心代码:

    差不多每行都有注释,方便理解回忆。

    AcadDocument AcdDoc = new AcadDocument();
    AcadDocument doc = null;
    
    doc = AcdDoc.Application.Documents.Open(filePath, true, null);   //以只读方式打开该文件     
    //doc.SetVariable("sdi", 0);
    //doc.SetVariable("Filedia", 0);
    //doc.SetVariable("RASTERPREVIEW", 1);//控制是否将缩略图预览图像随图形一起创建和保存。
    doc.SetVariable("BACKGROUNDPLOT", 0);//前台打印
    doc.Application.ZoomExtents();
    doc.ActiveLayout.ConfigName = "DWG To PDF.pc3";//使用的打印机设置名称 页面设置名称
    
    //object LowerLeft;//左下坐标,即xy最小值
    //object UpperRight;//右上坐标,即xy最大值
    //doc.ActiveLayout.GetWindowToPlot(out LowerLeft, out UpperRight);
    
    
    List<object[]> ls_rec = new List<object[]>();
    for (int i = 0; i < doc.ModelSpace.Count; i++)
    {
        button_start.Text = "正在查找对象:" + i + "/" + doc.ModelSpace.Count;
        if (i % 59 == 0)
        {
            Application.DoEvents();
        }
        //AcadEntity cadObject = doc.ModelSpace.Item(i);
        dynamic cadObject = doc.ModelSpace.Item(i);
    
        Console.WriteLine(cadObject.EntityName);
        //AcDbBlockReference
        //AcDbMText
        //AcDbLine
        //AcDbPolyline
        //AcDbText
        //AcDbOle2Frame
        //AcDbCircle
    
        if (checkedListBox1.GetItemChecked(1) && cadObject.EntityName == "AcDbPolyline")//为矩形类型的才判断
        {
            dynamic acadMLine = cadObject;
            double[] coordinates = acadMLine.Coordinates;
            //AcadMLine acadMLine = (AutoCAD.AcadMLine)cadObject;
            //object double3_min, double3_max;
            //acadMLine.GetBoundingBox(out double3_min, out double3_max);
            object LowerLeft = new double[2];//左下坐标,即xy最小值
            object UpperRight = new double[2];//右上坐标,即xy最大值
            ((double[])LowerLeft)[0] = coordinates.Where((r, index) => index % 2 == 0).Min();
            ((double[])LowerLeft)[1] = coordinates.Where((r, index) => index % 2 == 1).Min();
            ((double[])UpperRight)[0] = coordinates.Where((r, index) => index % 2 == 0).Max();
            ((double[])UpperRight)[1] = coordinates.Where((r, index) => index % 2 == 1).Max();
    
            if (calcDiagonal(LowerLeft, UpperRight) > minDiagonal)
            {
                ls_rec.Add(new object[] { LowerLeft, UpperRight });
            }
    
        }
        if (checkedListBox1.GetItemChecked(0) && cadObject.EntityName == "AcDbBlockReference")//为block类型的才判断
        {
            AcadBlockReference acadBlock = (AcadBlockReference)cadObject;
            dynamic block = acadBlock.Explode();
            if (((object[])(block)).Length > 0)
            {
                object double3_min, double3_max;
                acadBlock.GetBoundingBox(out double3_min, out double3_max);
                object LowerLeft = new double[2];//左下坐标,即xy最小值
                object UpperRight = new double[2];//右上坐标,即xy最大值
                ((double[])LowerLeft)[0] = ((double[])double3_min)[0];
                ((double[])LowerLeft)[1] = ((double[])double3_min)[1];
                ((double[])UpperRight)[0] = ((double[])double3_max)[0];
                ((double[])UpperRight)[1] = ((double[])double3_max)[1];
    
                if (calcDiagonal(LowerLeft, UpperRight) > minDiagonal)
                {
                    ls_rec.Add(new object[] { LowerLeft, UpperRight });
                }
            }
        }
    }
    int pdfIndex = 1;
    List<string> ls_pdfs = new List<string>();//生成的分开的pdf文件
    foreach (var item in ls_rec)
    {
    
        doc.ActiveLayout.SetWindowToPlot(item[0], item[1]);
    
        doc.ActiveLayout.PlotType = AcPlotType.acWindow; //打印模式
    
        doc.ActiveLayout.StandardScale = AcPlotScale.acScaleToFit; //标准比例,需要UseStandardScale = true;
        doc.ActiveLayout.UseStandardScale = true; // 使用标准比例
        doc.ActiveLayout.CenterPlot = true; // 居中
        //doc.ActiveLayout.PaperUnits = AcPlotPaperUnits.acMillimeters; //单位毫米
        //doc.ActiveLayout.PlotRotation = AcPlotRotation.ac0degrees;
    
        doc.Plot.QuietErrorMode = true;//生成存档,避免报错
    
        string destPath = Path.Combine(Path.GetDirectoryName(filePath), Path.GetFileNameWithoutExtension(filePath) + pdfIndex++ + ".pdf");
        ls_pdfs.Add(destPath);
        doc.Plot.PlotToFile(destPath);//第二个参数为打印机名称
    }
    
    doc.Close(false);
    AcdDoc.Close(false);

    工具使用场景:

    像下图这种,dwg里面有多个框图,用自带的pdf窗口导出功能比较费事,要一个个框选中定输出坐标。

    工具界面及使用方法:

    本质上是个方便小步骤的工具,基本是所见即理解。因为制图人不同,有些把外框做成block,有些只是用矩形或者多段线直接画,为了提供搜索对象的速度,我做成可选的。第三个图是输入输出文件,默认输出到同级目录,每个框图单独输出到pdf,并提供一个合并后的总pdf。

         

    展开全文
  • C# CAD二开导出 指定图层根据对角线 指定导出该图层
  • VBA 开发人员手册,作者:解祥成。 目 录 第 1 章、VBA入门.......................................... 3 1 、了解嵌入和全局VBA工程 2、用VBA管理器组织工程 3、处理宏 4、用VBA IDE编辑工程 5、更多的信息 6、...
  • CAD_VBA开发手册PDF

    2018-09-30 09:59:51
    介绍使用VBA对CAD进行二次开发,控制CAD环境,编辑图元,事件,布局和打印
  • 基于Python AutoCAD ActiveX 二次开发,pyautocad应用技术

    万次阅读 多人点赞 2019-11-07 06:31:21
    AutoCAD应用程序开发系列 ...基于Python AutoCAD ActiveX 二次开发技术 主要库:pyautocad==0.2.0 内容#:基于Python AutoCAD ActiveX 二次开发,学习笔记 更新日期:2019-11-07 写在前面,先感谢 ...
  • Python 二次开发 AutoCAD 简介

    万次阅读 多人点赞 2018-12-13 18:20:21
    cad是 python是 Active X 是 pyautocad模块由俄罗斯工程师开发,因参考实例较少,工程需要,现将模块中一些基本的用法,做出简要说明,叙述力求简洁明了, 因个人水平有限,文中难免有所疏漏,还请各位大神不吝...
  • 上期我们介绍了如何利用C#实现在CAD中自动打印pdf功能,这期我们继续介绍一个比较常用的功能,插入标注,在我们绘图的时候经常用到这个功能。 插入标注 CAD中的标注形式有很多种,例如水平标注,垂直标注,半径标注...
  • 本系统根据中小企业特点,采用停靠面板与CAD2007界面无缝集成,可进行Dwg图纸的浏览、修改、批量输出PDF等功能,使用数据库保存产品数据,树状结构管理图纸之间的逻辑关系。整理打印几百张图纸的时间由原来的几天...
  • c#CAD二次开发全套视频目录

    千次阅读 2019-08-11 19:22:27
    本人非专业编程人员,设计院画图民工一名。... 开此C#CAD二次开发在线学习视频,看能够帮助各位设计院熬夜画图的同僚们一起研究CAD二次开发,提高绘图效率。 觉得感兴趣可以试看,或者淘宝搜索店铺...
  • 具体的要求是从.NET(比如C#)里面调用AutoCAD ActiveX API实现后台打印DWG文件为PDF文件,而且要把打印页面的大小设置成和DWG视图的页面的大小一致。当然除了ActiveX API,其它接口,比如ObjectARX和AutoCAD.NET API...
  • 全书共16章,将所有的实例归人基础相关、控制AutoCAD环境、创建和编辑维对象、对象特性、文字、标注和公差、块和属性、处理AutocAD中的事件、三维空间的操作、打印、高级绘图组织、使用组件扩展程序功能、和Excel...
  • AutoCAD .NET开发指南-2012版

    千次下载 热门讨论 2014-02-08 10:32:02
    AutoCAD .NET开发指南2012版PDF文档,根据AutoDESK公司网上资源翻译整理。 原始文档网址为 ... 主要内容包括AutoCAD .NET API介绍、使用AutoCAD .NET API控制AutoCAD...涵盖了AutoCAD .NET二次开发所涉及的所有基本任务。
  • cad2pdf.rar

    2019-08-15 23:19:18
    c# autocad二次开发 dwg文件的框表框图导出pdf方便打印 dwg转pdf工具 详细描述及项目代码:https://blog.csdn.net/newidea07/article/details/99658342
  • 《AutoCAD .NET开发指南-2012版》,非常好的初级基础入门教程书,CAD二次开发初学者必备! 每个示例三种语言写法 C#, VB.NET, VBA/ActiveX 主要内容包括AutoCAD.NET API 介绍、使用AutoCAD.NET API 控制AutoCAD...
  • 前言 前面介绍了与CAD相关的一些功能,本期介绍一下C#和python如何通过socket通信来进行文件的传输,首先我们先来了解一下socket通信原理。
  • cad+objectarx+vs二次开发的准备工作

    千次阅读 2018-11-11 23:44:52
    前言 准备工作虽然说起来不复杂,但是做起来却很...1.各版本的cad、objectarx和visualstdio的对应关系 网上资料很多,还是在这里列出来,方便查询。 ObjectARX开发版本对照表 序号 CA...
  • 金橙子打标卡二次开发应用

    万次阅读 热门讨论 2019-08-18 21:40:15
    对金橙子卡进行二次开发,主要是利用MarkEzd.dll 。这个版本有对应关系,我目前只有2.5(2.5.3)和2.7 (2.7.6)版本的开发包。但开发的软件只要函数定义没变,就是可以通用的。 开发可以vc6,vc2010下进行,官方说明...
  • 基于AutoLisp的AutoCAD二次开发自动生成系统图科技 探·索 ·争||l Sc科ience&技Tech视nology界Vision3讨论 为教学工具能够应用于基础护理实验教学和考核中。e3.1 了解学生技能掌握情况参【考文献】基础护理...
  • LightDoWorks-SolidWorks二次开发工具是基于 Solidworks 的参数化设计、模块化设计以及自动设计思想而开发的“SolidWorks二次开发框架”和“设计师辅助工具”,旨在让设计更高效。支持 SolidWorks 2008-2011等版本。...
  • AutoCAD ObjectARX(vc)开发基础与实例教程代码,主要内容包括AutoCAD .NET API介绍、使用AutoCAD .NET API控制AutoCAD工作环境、创建及编辑AutoCAD实体、创建和...涵盖了AutoCAD .NET二次开发所涉及的所有基本任务。
  • LiteGears for SW二次开发工具是一款专业的CAD制图软件。软件基于 Solidworks 的参数化设计、模块化设计以及自动设计思想而开发,是一款功能强大的“SolidWorks二次开发框架”和“设计师辅助工具”。设计师只要通过...
  • CAD工具——批量打印

    2021-12-03 09:25:24
    批量打印图纸。 执行方式 (1)单击菜单栏“功能→高级工具→批量打印”。如图: (2)在左下角命令行输入“MxC_BitchPrint”按enter键。如图: 执行命令之后,系统会弹出“批量打印”对话框。 选项说明 (1)图...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 605
精华内容 242
关键字:

cad二次开发打印pdf