网站制作完成之后进入什么阶段做渠道的网站有哪些方面

张小明 2026/1/13 17:00:19
网站制作完成之后进入什么阶段,做渠道的网站有哪些方面,淘宝客怎么做自己网站推广,修改网站域名可直接编译运行 c#解析dxf可读取圆直线弧多段线源码-无封装缩放拖拽 可读取坐标信息 支持多种版本的CAD 可导出G代码最近在折腾CAD文件解析#xff0c;发现DXF这东西虽然结构复杂但还挺有意思的。用C#撸了个解析器#xff0c;能读取圆、直线、弧、多段线这些基础图形#xf…可直接编译运行 c#解析dxf可读取圆直线弧多段线源码-无封装缩放拖拽 可读取坐标信息 支持多种版本的CAD 可导出G代码最近在折腾CAD文件解析发现DXF这东西虽然结构复杂但还挺有意思的。用C#撸了个解析器能读取圆、直线、弧、多段线这些基础图形顺手还做了G代码导出功能。咱们直接从代码层面聊聊实现思路。先看这段读取直线的基础代码var lines File.ReadAllLines(sample.dxf); for (int i 0; i lines.Length; i) { if (lines[i] LINE) { var line new DxfLine(); while (lines[i] ! 0) { var code lines[i]; var value lines[i]; switch(code) { case 10: line.StartX double.Parse(value); break; case 20: line.StartY double.Parse(value); break; case 11: line.EndX double.Parse(value); break; case 21: line.EndY double.Parse(value); break; } } Console.WriteLine($直线坐标({line.StartX},{line.StartY}) - ({line.EndX},{line.EndY})); } }这代码看着糙但实用遍历DXF文本按组码抓数据。注意LINE实体的组码10/20是起点11/21是终点。DXF的坐标对总是成对出现处理时要记得X在前Y在后。遇到多段线就刺激了。旧版用POLYLINE新版用LWPOLYLINE这俩结构差异不小。看这段处理逻辑if (entityType LWPOLYLINE) { var poly new Polyline(); while ((code lines[i]) ! 0) { value lines[i]; if (code 90) // 顶点数 { int vertexCount int.Parse(value); poly.Vertices new ListPoint(vertexCount); } else if (code 10) // X坐标 { x double.Parse(value); flag true; } else if (code 20 flag) // Y坐标 { poly.Vertices.Add(new Point(x, double.Parse(value))); flag false; } } }这里用了个flag标记来捕获坐标对因为DXF的顶点坐标是交替出现的。处理旧版POLYLINE更麻烦得在顶点段VERTEX里逐个抓点最后还要等SEQEND结束符代码能多写二十行。说到版本兼容关键在HEADER段找$ACADVER字段。不同版本组码有变化比如圆弧的起始/终止角度在R12用50/51新版可能用其他组码。咱们用个字典来映射var versionMappings new Dictionarystring, Funcstring, string() { {AC1018, code code 1001 ? start_angle : null}, // 2004版 {AC1021, code code 72 ? start_angle : null} // 2007版 };导出G代码这块更有意思。把几何数据转成机床指令注意坐标系的Y轴要反转CAD是Y向上机床通常是Y向下。看这个转换片段stringBuilder.AppendLine($G01 X{point.X:F3} Y{-point.Y:F3} F500);圆弧处理要算圆心和方向。用DXF的起始角/终止角转成G02/G03指令var arcCmd IsClockwise ? G02 : G03; var center new Point( (start.X end.X)/2 radius * Math.Cos(midAngle), (start.Y end.Y)/2 radius * Math.Sin(midAngle) );最后说下缩放拖拽的实现。别被唬住本质就是矩阵变换。比如平移操作public void Pan(double offsetX, double offsetY) { foreach (var entity in entities) { if (entity is Line line) { line.StartX offsetX; line.StartY offsetY; line.EndX offsetX; line.EndY offsetY; } // 其他实体类型同理... } }这代码直接粗暴但有效真要优化可以用访客模式不过咱说好了不封装嘛。项目扔GitHub上后有老哥反馈说处理复杂图纸会内存溢出。一查发现是暴力读整个文件导致的后来改成流式读取内存占用直接从500M降到50M。所以说处理DXF还是得边读边解析别头铁全加载到内存。总之这项目验证了用C#搞DXF解析完全可行关键是多准备点测试图纸。下次考虑加点三维实体支持不过那是另一个坑了...
版权声明:本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!

建设一个跟京东一样的网站河北住房与城乡建设厅网站

第一章:Open-AutoGLM 多应用数据联动流程设计在构建基于 Open-AutoGLM 的智能化系统时,实现多应用间的数据高效联动是核心环节。该流程设计旨在打通异构应用之间的数据孤岛,支持结构化与非结构化数据的实时同步与语义解析。数据源接入机制 系…

张小明 2026/1/2 2:16:15 网站建设

wordpress开启子站深圳推广公司哪家正规

使用Vue-Office在Dify前端展示AI生成文档 在企业级AI应用快速落地的今天,一个常见的痛点逐渐浮现:尽管大语言模型能“写出”内容,但如何让用户真正“看到”一份排版规范、结构清晰、可直接使用的专业文档?很多系统仍停留在纯文本输…

张小明 2026/1/9 9:56:13 网站建设

京东网站建设现状分析招远做网站

网络与安全:Linux 系统的关键要素 1. 网络协议与服务 1.1 SMB 协议 SMB(Server Message Block)是用于在基于 Microsoft Windows 的网络(如 Windows 95、98、NT、2000 等)上共享资源的协议。共享的资源可以是目录、打印机或其他设备。为了让 Linux 能够访问基于 Windows…

张小明 2026/1/12 10:07:03 网站建设

网页版html编辑器seo推广专员工作内容

还在为统计学学习资料发愁吗?这里为您精心准备了George Casella的《统计推断》第二版PDF资源。作为统计学领域的权威教材,这本书系统讲解了估计理论、假设检验等核心概念,是每个统计学学习者的必备宝典。 【免费下载链接】统计推断第二版PDF资…

张小明 2026/1/9 14:25:46 网站建设

网站统计 wordpress朋友圈自己做的网站

Vim 多文件查找替换与全局命令使用技巧 在 Vim 编辑器中,我们常常会遇到需要在多个文件中进行查找替换,或者对匹配特定模式的行执行操作的需求。下面将详细介绍如何在 Vim 中实现这些功能。 多文件查找替换 在项目中,有时我们需要将某个特定的字符串替换为另一个字符串。…

张小明 2026/1/3 19:04:00 网站建设

临沂专业做网站网页设计与制作心得体会1000

手把手教你安装PyPDF:Python PDF处理利器完全指南 【免费下载链接】pypdf 项目地址: https://gitcode.com/gh_mirrors/pypd/pypdf 想要用Python轻松处理PDF文件吗?PyPDF库正是你需要的强大工具。这个Python PDF处理库能够让你快速完成PDF合并、拆…

张小明 2026/1/4 5:53:45 网站建设