首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >DXF文件插入实体

DXF文件插入实体
EN

Stack Overflow用户
提问于 2018-03-22 18:24:53
回答 2查看 1.5K关注 0票数 0

我正在用Java绘制dxf文件。到目前为止,我可以画,LINESPOLYLINESTEXTCIRCLEARCLWPOLYLINES

但是我在绘制INSERT实体时遇到了问题。我知道这映射到块实体,但当我绘制它们时,什么都不显示。我知道你必须对INSERT实体做一些转换,但我不知道该怎么做。我在谷歌上搜索了很多关于这方面的信息,但没有找到。因此,我希望您能给出一些方向,如何处理INSERT实体。我还研究了一些框架,如ycad和dxf-code,但这些代码很难跟踪。

INSERT转换为LINEARC等实体的算法是什么

谢谢

约翰

EN

回答 2

Stack Overflow用户

发布于 2018-03-23 01:12:04

很难给你一个明确的答案,因为我们看不到代码。但是在AutoDesk网站上描述了INSERT特性的管理方式。以下是blocks in DXF files的信息。

它还提供了有关两个重要条目BLOCKENDBLCK的信息。

下面是一个包含LINEARC的块的示例。该块将如下所示:

该块名为SAMPLE

代码语言:javascript
运行
复制
  0
BLOCK
  8
0
  2
SAMPLE
 70
     0
 10
0.0
 20
0.0
 30
0.0
  3
SAMPLE
  1

  0
ARC
  5
263
  8
0
 10
0.0
 20
22.4468613708478415
 30
0.0
 40
242.9028467109147016
 50
354.6976825438280798
 51
185.3023174561718918
  0
LINE
  5
264
  8
0
 10
-241.8634560136443099
 20
0.0000000000001137
 30
0.0
 11
241.8634560136443099
 21
-0.0000000000002274
 31
0.0
  0
ENDBLK
  5
262
  8
0

基本上,您有一个定义块实体的条目。它将有一个,所有的值都是相对于元素的源的。

如果你先设计它,然后你就会知道该怎么做。

一旦定义了BLOCK,您就可以将其用作INSERT

BLOCK本身。关键是原点。大多数都是用坐标0,0,0定义的。然后相对于此原点以1:1的比例绘制ENTITIES

想象一个矩形,它的比例因子是1的单位平方。那么坐标就是:

代码语言:javascript
运行
复制
-0.5,  0.5
 0.5,  0.5
 0.5, -0.5
-0.5, -0.5

我希望这些信息能帮助你。

票数 3
EN

Stack Overflow用户

发布于 2018-04-05 06:56:10

BLOCK图元(也称为块定义)本质上是INSERT (也称为块参照)的“蓝图”。

块定义(BLOCK图元)是每个块参照的“模板”,这意味着只需要存储每个块参照的位置、旋转和比例,而不是为图形中的每个块参照复制构成块的所有几何信息。

块定义位于块符号表中,由BLOCK标头图元(定义块名和原点(通常为0,0)以及其他特性)、后跟形成块定义的所有几何图形以及最终的ENDBLK图元组成。

块定义中包含的所有几何图形都是相对于块定义的原点定义的;然后,创建块参照(INSERT)时,块定义几何图形将相对于块参照的插入点进行变换。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/49426182

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档