• 大小: 0.66M
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2024-04-23
  • 语言: C#
  • 标签: DXF  解析  文件  

资源简介

引用netDXF 对dxf文件解析 并增加操作 加载, 创建块, 增加块集合到dxf中, 判断layer, 内容循环, 保存dxf为2000到2018版本

资源截图

代码片段和文件信息

using netDxf;
using netDxf.Blocks;
using netDxf.Entities;
using netDxf.Header;
using netDxf.Tables;
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace 解析dxf
{
    public class Class1
    {
        string cadpath = “D:\\data.dxf“;
        DxfDocument dxf;

        /// 
        /// 加载dxf
        /// 

        /// 
        public void loadDxf(string cadpath)
        {
            if (File.Exists(cadpath))
            {
                dxf = DxfDocument.Load(cadpath);
            }
            else
            {
                dxf = new DxfDocument();
            }
        }

        /// 
        /// 创建块
        /// 

        /// 
        private Block NewBlock()
        {
            string layer = “井“;
            AciColor color = AciColor.FromCadIndex(230);

            Block blockjing = new Block(“井“);

            Circle circle = new Circle(Vector3.Zero 10);
            circle.layer = new layer(layer);
            circle.layer.Color = color;
            blockjing.Entities.Add(circle);

            Line line = new Line(new Vector3(0 0 0) new Vector3(8.6603 -5.0000 0));
            line.layer = new layer(layer);
            line.layer.Color = color;
            blockjing.Entities.Add(line);

            Line line1 = new Line(new Vector3(0 0 0) new Vector3(-8.6603 -5.0000 0));
            line1.layer = new layer(layer);
            line1.layer.Color = color;
            blockjing.Entities.Add(line1);

            Line line2 = new Line(new Vector3(0 0 0) new Vector3(0 10.0000 0));
            line2.layer = new layer(layer);
            line2.layer.Color = color;
            blockjing.Entities.Add(line2);

            return blockjing;
        }

        /// 
        /// 增加块集合到dxf中
        /// 

        /// 
        public void InsertBlock(List list)
        {
            if (list != null)
            {
                foreach (Block bk in list)
                {
                    dxf.Blocks.Add(bk);
                }
            }
        }

        /// 
        /// 判断layer是否存在 不存在则创建
        /// 

        /// 
        public void Existslayer(List list)
        {
            if (list != null)
            {
                foreach (string l in list)
                {
                    if (!dxf.layers.Contains(l))
                    {
                        layer layer = new layer(l);
                        dxf.layers.Add(layer);
                    }
                }
            }
        }

        /// 
        /// 判断字体是否存在 不存在则增加
        /// 

        /// 
        public void ExistsFonts()
    

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

    ..A..H.     26624  2019-09-05 16:22  解析dxf\.vs\解析dxf\v15\.suo

     文件          0  2019-09-05 15:55  解析dxf\.vs\解析dxf\v15\Server\sqlite3\db.lock

     文件       4096  2019-09-05 15:55  解析dxf\.vs\解析dxf\v15\Server\sqlite3\storage.ide

     文件      32768  2019-09-05 15:55  解析dxf\.vs\解析dxf\v15\Server\sqlite3\storage.ide-shm

     文件    1907592  2019-09-05 16:21  解析dxf\.vs\解析dxf\v15\Server\sqlite3\storage.ide-wal

     文件       9463  2018-11-16 15:53  解析dxf\packages\netDXF.2.2.0.1\.signature.p7s

     文件     605184  2018-08-03 12:10  解析dxf\packages\netDXF.2.2.0.1\lib\net45\netDxf.dll

     文件     818496  2018-08-03 12:10  解析dxf\packages\netDXF.2.2.0.1\lib\net45\netDxf.xml

     文件     301224  2019-09-05 15:56  解析dxf\packages\netDXF.2.2.0.1\netDXF.2.2.0.1.nupkg

     文件       4235  2019-09-05 16:21  解析dxf\解析dxf\Class1.cs

     文件       6901  2019-09-05 15:56  解析dxf\解析dxf\obj\Debug\DesignTimeResolveAssemblyReferencesInput.cache

     文件          0  2019-09-05 15:55  解析dxf\解析dxf\obj\Debug\TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs

     文件          0  2019-09-05 15:55  解析dxf\解析dxf\obj\Debug\TemporaryGeneratedFile_5937a670-0e60-4077-877b-f7221da3dda1.cs

     文件          0  2019-09-05 15:55  解析dxf\解析dxf\obj\Debug\TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs

     文件         42  2019-09-05 15:56  解析dxf\解析dxf\obj\Debug\解析dxf.csproj.CoreCompileInputs.cache

     文件      31445  2019-09-05 15:56  解析dxf\解析dxf\obj\Debug\解析dxf.csprojAssemblyReference.cache

     文件        135  2019-09-05 15:56  解析dxf\解析dxf\packages.config

     文件       1307  2019-09-05 15:55  解析dxf\解析dxf\Properties\AssemblyInfo.cs

     文件       2458  2019-09-05 15:56  解析dxf\解析dxf\解析dxf.csproj

     文件       1125  2019-09-05 15:55  解析dxf\解析dxf.sln

     目录          0  2019-09-05 15:55  解析dxf\.vs\解析dxf\v15\Server\sqlite3

     目录          0  2019-09-05 15:55  解析dxf\.vs\解析dxf\v15\Server

     目录          0  2019-09-05 15:56  解析dxf\packages\netDXF.2.2.0.1\lib\net45

     目录          0  2019-09-05 15:55  解析dxf\解析dxf\obj\Debug\TempPE

     目录          0  2019-09-05 15:55  解析dxf\.vs\解析dxf\v15

     目录          0  2019-09-05 15:56  解析dxf\packages\netDXF.2.2.0.1\lib

     目录          0  2019-09-05 15:55  解析dxf\解析dxf\bin\Debug

     目录          0  2019-09-05 15:56  解析dxf\解析dxf\obj\Debug

     目录          0  2019-09-05 15:55  解析dxf\.vs\解析dxf

     目录          0  2019-09-05 15:56  解析dxf\packages\netDXF.2.2.0.1

............此处省略10个文件信息

评论

共有 条评论