码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • DXF笔记:多义线线宽的绘制思路


    线宽处理思路

    核心思想为使用填充模式的多边形来模拟线宽

    注:圆弧暂只支持等宽

    绘制思路:

    1. 若是直线:
      点线宽大于0,则沿直线垂直方向平移0.5线宽得到两点,否则直接取这个点。处理好后,直线有3种结果:两个点(点起末线宽均为0时),三个点(点起末线宽有一个为0时),4个点(点起末线宽均不为0)。

    2. 若是弧线(只处理等宽的圆弧)
      若不等宽或宽度为0,直接原样输出。
      否则,将圆弧半径回减一半线宽得到两段圆弧,将圆弧散列成点,opengl应该不支持凹多边形,所以采用三角化的方式绘制。

    3. 拐角的处理
      只处理直线之间的拐角

      拐角中的两条直线线宽包含0,不用处理

      若线宽大于0,求出外围线交点,然后用交点替换原来的两个点即可,如下图所示,
      AB 与A1B1相交于O1,
      CD 与C1D1相交于O2,
      然后点B替换成O1,点C替换成O2;A1替换成O1,D1替换成O2。
      在这里插入图片描述

    AutoCAD多义线线宽示例

    全部都是等宽的直线

    在这里插入图片描述

    非等宽直线
    在这里插入图片描述
    在这里插入图片描述

    直线、圆弧混合
    在这里插入图片描述

    在这里插入图片描述

  • 相关阅读:
    2022年信息安全工程师考试知识点:访问控制
    IO系列第三篇——NIO(Selector)
    笔记本开启WiFi
    面试总结归纳
    C# 核心8——多态
    LoRa技术未来发展前景:物联网和边缘计算的引领者
    spring-cloud-alibaba-dubbo-issues1805修复
    [Pandas] 数据连接pd.concat
    G:\r\tcga_example-master\scripts 生存分析 tcgaexample jimmy 存活分析 单条线生存分析
    简单谈谈云服务器私网IP的存在意义及优势
  • 原文地址:https://blog.csdn.net/s634772208/article/details/126291511
  • 最新文章
  • 沪漂五周年了:我越来越迷茫了
    Agentic Skill Routing 实战:别再把所有 Skill 塞进 AI Agent 上下文
    MySQL-Seconds_behind_master的精度误差
    [MAF预定义ChatClient中间件-03]CachingChatClient——利用缓存省钱省时间
    AI的至暗历史:从万众期待到被政府撤资,AI的两次死亡徘徊
    Agent OS :五种驯服不确定性的范式
    PortSwigger SQL注入LAB11
    数据库即时编译JIT
    [Begin]AI Learn Data Day 0
    深度学习进阶(二十七)现代 LLM 的核心架构设计其二:SwiGLU
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
小工具 小游戏
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1

京公网安备 11010502049817号