ficheiros de formato dxftavares/ensino/cfac/downloads...@2001 joão tavares/jof cfac: ficheiros de...

65
Ficheiros de Formato DXF João Manuel R. S. Tavares Joaquim Oliveira Fonseca

Upload: nguyenquynh

Post on 05-Dec-2018

216 views

Category:

Documents


0 download

TRANSCRIPT

Ficheiros de Formato DXF

João Manuel R. S. TavaresJoaquim Oliveira Fonseca

@2001 João Tavares/JOF CFAC: Ficheiros de Formato DXF 2

Ficheiros de Interface em AutoCAD

O programa AutoCAD, pode ser utilizado como um editor completo de desenho. Em algumas aplicações, contudo, outros programas devem examinar desenhos criados pelo AutoCAD ou gerar desenhos para serem visualizados ou serem reproduzidos em “plotter”. Para tal o AutoCAD, dispõe dos dois comandos DXFOUTe DXFIN, que permitem gerar ou ler respectivamente, ficheiros de formato DXF (ASCII/BINÁRIO).

@2001 João Tavares/JOF CFAC: Ficheiros de Formato DXF 3

Ficheiros de Interface em AutoCAD

DXFOUTÉ possível gerar um ficheiro de intercâmbio, de um desenho existente, através do comando DXFOUT. Este ficheiro tem uma estrutura que será apresentada mais adiante, sendo possível (em modo ASCII) a sua visualização com um qualquer editor, bem como ser lido por um qualquer programa pessoal.

DXFINEste comando permite ler um ficheiro de formato DXF.

@2001 João Tavares/JOF CFAC: Ficheiros de Formato DXF 4

Diálogos DXFOUT

Introduzir nome

Especificar o formato dxf ...

O comando DXFOUT do AutoCAD tem esta caixa de diálogo.

@2001 João Tavares/JOF CFAC: Ficheiros de Formato DXF 5

Diálogos DXFOUTOpções do DXFOUT:

Escolher Optionsno botão Tools.

@2001 João Tavares/JOF CFAC: Ficheiros de Formato DXF 6

Diálogos DXFOUTOpções do DXFOUT: Esta opção permite

seleccionar as entidades a “escrever” no ficheiro.

Formato

Resolução

@2001 João Tavares/JOF CFAC: Ficheiros de Formato DXF 7

Diálogo DXFIN

Introduzir nome

Para seleccionar a vista inicial

@2001 João Tavares/JOF CFAC: Ficheiros de Formato DXF 8

Formato do Ficheiro de Intercâmbio Dxf

Um ficheiro de intercâmbio de desenho DXF em modo ASCII, é um ficheiro de texto, com a extensão DXF. A organização geral do ficheiro é a seguinte:

1. HEADER - Esta secção tem toda a informação sobre o desenho. Cada parâmetro tem um nome de variável e um valor associado.

2. TABLES - Esta secção contém as definições dos itens nomeados de seguida:

Tabela dos “Linetypes” (LTYPE)Tabela dos “Layers”Tabela dos estilos (STYLE de fontes de carácteres)Tabela de Vistas “VIEW”

@2001 João Tavares/JOF CFAC: Ficheiros de Formato DXF 9

Formato do Ficheiro de Intercâmbio Dxf

3. BLOCKS - Esta secção contém a definição das entidades “Blocks”, descrevendo todas as entidades individuais que os compõem.

4. ENTITIES - Esta secção contém todas as entidades do desenho, inclusive qualquer referência a “Blocks”.

5. END OF FILE - Corresponde à designação do fim do ficheiro (EOF), independente do carácter de fim de ficheiro.

Obs.: Se se utiliza a opção “Entities”, no comando DXFOUT, o ficheiro conterá somente a secção “Entities” e o EOF. Este ficheiro conterá somente informação sobre as entidades seleccionadas. Se foi seleccionada uma entidade INSERT (associada a um Block), a informação do Block referido não é contida no ficheiro.

@2001 João Tavares/JOF CFAC: Ficheiros de Formato DXF 10

Formato do Ficheiro de Intercâmbio Dxf

Um ficheiro DXF, é composto de muitos GRUPOS, ocupando cada um duas linhas, em que na primeira linha aparece o Código de Grupo (valor inteiro) e o Valor respectivo (conforme o valor do Código de Grupo será "string", real ou inteiro).O valor designado é função do valor do Código Grupo, do seguinte modo:

0 - 9 Cadeia de carácteres ("String").10 - 59 Valor real ("floating-point").60- 79 Valor inteiro.140-147 Valor real ("floating-point").170-175 Valor inteiro.210-239 Valor real ("floating-point").999 "String" (comentário).1000-1009 "String" cadeia de carácteres.1010-1059 Valor real ("floating-point").1060-1079 Valor inteiro.

@2001 João Tavares/JOF CFAC: Ficheiros de Formato DXF 11

Formato do Ficheiro de Intercâmbio Dxf

CÓDIGOS DE GRUPOA função específica do Código de Grupo, depende da variável actual, item da tabela ou descrição de entidade em causa:

0 - Identifica o início de: uma entidade, tabela de entrada ou separador de ficheiro. O tipo da entidade é dado pelo valor “texto” que é dado de seguida.1 - O valor “texto” primário para uma entidade.2 - Um nome: “Attribute tag”, nome de "Block", etc. É também utilizado para identificar uma secção DXF ou nome de uma tabela.3-4 - Outros valores “texto” ou nomes.5 - Entidade “handle” expressa como uma “string” hexadecimal (fixado).6 - Nome do tipo de linha “linetype” (fixado).

@2001 João Tavares/JOF CFAC: Ficheiros de Formato DXF 12

Formato do Ficheiro de Intercâmbio Dxf

7 - Nome do estilo do texto (fixado).8 - Nome do “layer” (fixado).9 - Nome da variável de identificação (utilizado somente na secção HEADER do ficheiro DXF).10 - Coordenada X primária. (ponto de início de uma “LINE” ou entidade “TEXT”, centro de um “CIRCLE”, etc.).11-18 - Outras coordenadas X.20 - Coordenada Y primária. Os valores 2n, seguem-se sempre, imediatamente aos correspondentes valores 1n, no ficheiro.21-28 - Outras coordenadas Y.30 - Coordenada Z primária. Os valores 3n, seguem-se sempre, imediatamente aos correspondentes valores 1n e 2n, no ficheiro.

@2001 João Tavares/JOF CFAC: Ficheiros de Formato DXF 13

Formato do Ficheiro de Intercâmbio Dxf31-37 - Outras coordenadas Y.38 - É a elevação da entidade no caso de não ser nula (fixada).39 - É a espessura da entidade no caso de não ser nula (fixada).40-48 - Valores reais (altura de texto, factores de escala, etc.).49 - Valor repetido. O código de grupo 49, pode aparecer múltiplas vezes, numa entidade para variável de comprimento em tabelas (tais como os comprimentos do traço descontínuo na tabela LTYPE). Um grupo 7x aparece sempre antes do primeiro código de grupo 49, para especificar o comprimento da tabela.50-58 - Ângulos.62 - Número da cor (fixado).

@2001 João Tavares/JOF CFAC: Ficheiros de Formato DXF 14

Formato do Ficheiro de Intercâmbio Dxf

66 - “Flag” de seguimento de entidade (“Entitiesfollow” - fixado).67 - Identifica se uma entidade está dentro do “model space” ou “paper space”.68 - Identifica se uma entidade “viewport” está totalmente fora do ecrã, não é activa, ou está “off”.69 - Número de identificação da “viewport”.70-78 - Valores inteiros, tais como contadores, valores “bit”, ou modos.210,220,230 - Componentes X, Y e Z da direcção de extrusão (fixado).999 - Comentários1000 - Um texto (“string”) ASCII (até ao comprimento de 255 “bytes”) em “extended entity data”.

@2001 João Tavares/JOF CFAC: Ficheiros de Formato DXF 15

Formato do Ficheiro de Intercâmbio Dxf

1001- Nome de registo da aplicação (até ao comprimento de 31 "bytes") para a "XDATA" (fixado).1002 - "String" de controlo da "extended entity data" ( "{" ou "}" ); (fixado).1003 - Nome do "layer" da "extended entity data".1004 - Conjunto de "bytes" (até 127 "bytes" de comprimento) em "extended entity data".1005 - Base de dados da "extended entity data"1010,1010,1020 - Coordenadas X, Y e Z da "extended entity data".1011,1021,1022 - Coordenadas X, Y e Z da "extended entity data", no espaço 3D World Space.

@2001 João Tavares/JOF CFAC: Ficheiros de Formato DXF 16

Formato do Ficheiro de Intercâmbio Dxf

1012,1022,1032 - Coordenadas X, Y e Z do deslocamento da "extended entity data" no espaço 3D World Space.1013,1023,1033 - Coordenadas X, Y e Z da direcção da "extended entity data" no espaço 3D World Space.1040 - Valor real da "Extended entity data".1041 - Valor de distância em "extended entity data".1042 - Valor de factor de escala em "extended entitydata".1070 - Inteiro com sinal, de 16 "bit", em "extendedentity data".1071 - Inteiro com sinal, de 32 "bit", em "extendedentity data".

@2001 João Tavares/JOF CFAC: Ficheiros de Formato DXF 17

Formato do Ficheiro de Intercâmbio Dxf

COMENTÁRIOSO código de grupo indica que a seguinte linha, é um texto de comentário. O comando DXFOUT não inclui correntemente tais grupos no ficheiro DXF, mas o DXFIN ignora-os. Assim, pode-se utilizar o código de grupo 999 para incluir comentários no ficheiro, para facilitar a sua interpretação aquando da edição. Por exemplo:

999Isto é um comentário.999Isto é outro comentário.

@2001 João Tavares/JOF CFAC: Ficheiros de Formato DXF 18

Formato do Ficheiro de Intercâmbio Dxf

SECÇÕES DO FICHEIROUm ficheiro DXF é subdividido em quatro secções mais a marca de END OF FILE. Separadores de ficheiro são utilizados para delimitar estas secções. De seguida é apresentado um exemplo parcial de um ficheiro DXF, somente com os marcadores das secções e os cabeçalhos das tabelas:

0 (Início do ficheiro)SECTION

2HEADER (Início do HEADER)... <<<<Variáveis são descritas aqui>>>>

0ENDSEC (Fim da secção HEADER)

@2001 João Tavares/JOF CFAC: Ficheiros de Formato DXF 19

Formato do Ficheiro de Intercâmbio Dxf

0SECTION

2TABLES (Início das “Tables”)

0TABLE (Inicio de uma “Table”)

2VPORT (Definição da Viewport)

0(contador do máximo número de itens da tabela

"viewport")<<<< aparecem aqui os itens da tabela>>>>

0ENDTAB (Fim de uma “Table”)

@2001 João Tavares/JOF CFAC: Ficheiros de Formato DXF 20

Formato do Ficheiro de Intercâmbio Dxf

0TABLE (Inicio de uma “Table”)

2LTYPE, LAYER, STYLE, VIEW, UCS ou DWGMGR

70(contador do máximo número de itens da tabela )<<<< aparecem aqui os itens da tabela>>>>

0ENDTAB (Fim de uma “Table”)

0ENDSEC (Fim das “Tables”)

0SECTION

2

@2001 João Tavares/JOF CFAC: Ficheiros de Formato DXF 21

Formato do Ficheiro de Intercâmbio Dxf

BLOCKS (Início da secção BLOCK)<<<<aparecem aqui os itens de definição do Block>>>>

0ENDSEC (Fim da secção BLOCK)

0SECTION

2ENTITIES (Início das Entities)<<<<aparecem aqui as entidades do desenho>>>>

0ENDSEC (Fim da secção ENTITIES)

0EOF (Fim do ficheiro)

@2001 João Tavares/JOF CFAC: Ficheiros de Formato DXF 22

Formato do Ficheiro de Intercâmbio Dxf

Secção HEADER

A secção HEADER de um ficheiro DXF, contém a definição das variáveis associadas ao desenho. Estas variáveis são fixadas por diversos comandos e são do tipo das apresentadas na informação projectada no ecrã pelo comando STATUS. Cada variável é especificada através do Código de Grupo 9 e seu respectivo nome, seguidos por outros códigos e respectivos valores.

@2001 João Tavares/JOF CFAC: Ficheiros de Formato DXF 23

Formato do Ficheiro de Intercâmbio Dxf

Variável Tipo Descrição$ACADVER 1 Número da Versão do AutoCAD.$ANGBASE 50 Direcção do ângulo 0 em relação a X+$ANGDIR 70 1=ângulos na direcção dos ponteiros do relógio 0=ângulos na direcção contrária.$ATTDIA 70 Diálogos de entrada dos Attributes1=ON 0=OFF.$ATTMODE 70 Visibilidade dos Attributes 0=Não 1=Normal e 2=Todos.$ATTREQ 70 Proposta do Attribute durante o INSERT 1=ON 0=OFF.$AUNITS 70 Formato das unidades para os ângulos.$AUPREC 70 Precisão das unidades para os ângulos.$AXISMODE 70 Eixos se diferente de zero (não funcional na versão 12).

@2001 João Tavares/JOF CFAC: Ficheiros de Formato DXF 24

Formato do Ficheiro de Intercâmbio Dxf

$AXISUNIT 10,20 Espaçamento das escalas dos eixos em X e Y (não funcional na versão 12).$BLIPMODE 70 Modo Blip ligado (ON), se diferente de zero.$CECOLOR 62 Número da cor da entidade; 0=BYBLOCK, 256=BYLAYER.$CELTYPE 6 Nome do tipo de linha da entidade, ou BYBLOCK ou BYLAYER.$CHAMFERA 40 Primeira distância do chanfro.$CHAMFERB 40 Segunda distância do chanfro.$CLAYER 8 Nome do "layer" corrente.$COORDS 70 0=projecção estática das coordenadas, 1=actualização contínua, 2=formato "d<a".$DIMALT 70 Execução do dimensionamento alternativo se diferente de zero.$DIMALTD 70 Número de casas decimais da unidade alternativa.

@2001 João Tavares/JOF CFAC: Ficheiros de Formato DXF 25

Formato do Ficheiro de Intercâmbio Dxf

$DIMALTF 40 Factor de escala da unidade alternativa.$DIMAPOST 1 Sufixo do dimensionamento alternativo.$DIMASO 70 1=cria dimensionamento associativo0=cria dimensionamento com entidades individuais.$DIMASZ 40 Comprimento da seta do dimensionamento.$DIMBLK 2 Nome do bloco da seta.$DIMBLK1 1 Nome do bloco da primeira seta.$DIMBLK2 1 Nome do bloco da segunda seta.$DIMCEN 40 Dimensão das linhas/marcas de centro.$DIMCLRD 70 Cor da linha de cota entre, 0=BYBLOCK a 256=BYLAYER.$DIMCLRE 70 Cor da linha de chamada, entre 0=BYBLOCK a 256=BYLAYER.$DIMCLRT 70 Cor do texto da cota, entre 0=BYBLOCK a 256=BYLAYER.

@2001 João Tavares/JOF CFAC: Ficheiros de Formato DXF 26

Formato do Ficheiro de Intercâmbio Dxf

$DIMDLE 40 Alongamento da linha de cota para além da linha de chamada.$DIMDLI 40 Afastamento entre linhas de cotas.$DIMEXE 40 Alongamento da linha de chamada para além da linha de cota.$DIMEXO 40 Afastamento do início da linha de chamada.$DIMGAP 40 Afastamento da linha de cota (quando DIMTSZ é diferente de zero).$DIMLFAC 40 Factor de escala sobre as dimensões lineares.$DIMPOST 1 Sufixo do dimensionamento geral.$DIMRND 40 Factor de arredondamento para as dimensões lineares.$DIMSAH 70 Utiliza blocos de setas separados se diferente de zero.

@2001 João Tavares/JOF CFAC: Ficheiros de Formato DXF 27

Formato do Ficheiro de Intercâmbio Dxf

$DIMSCALE 40 Factor de escala global sobre as variáveis DIM.$DIMSE1 70 Suprime a primeira linha de chamada se diferente de zero.$DIMSE2 70 Suprime a segunda linha de chamada se diferente de zero.$DIMSHO 70 1=Recalcula as dimensões enquanto se movimenta, 0=desenha a imagem original$DIMSOXD 70 Suprime linhas de cota exteriores se diferente de zero.$DIMSTYLE 2 Nome da fonte de texto da cota.$DIMTAD 70 Texto acima da linha de cota se diferente de zero.$DIMTFAC 40 Factor de escala da tolerância da cota calculada.

@2001 João Tavares/JOF CFAC: Ficheiros de Formato DXF 28

Formato do Ficheiro de Intercâmbio Dxf

$DIMTIH 70 Texto dentro das linhas de chamada horizontal, se diferente de zero.$DIMTIX 70 Força o texto na horizontal, quando dentro das linhas de chamada, se diferente zero.$DIMTM 40 Desvio inferior da tolerância.$DIMTOFL 70 Se o texto ficar exterior às linhas de chamada, força a linha de cota no seu interior, se diferente de zero.$DIMTOH 70 Força o texto na horizontal, quando fora das linhas de chamada, se diferente zero.$DIMTOL 70 Gera o dimensionamento com tolerância se diferente de zero.$DIMTP 40 Desvio superior da tolerância.$DIMTSZ 40 Espessura do traço de dimensionamento. Se for nulo, será inserida seta e não o traço.$DIMTVP 40 Posicionamento vertical do texto.

@2001 João Tavares/JOF CFAC: Ficheiros de Formato DXF 29

Formato do Ficheiro de Intercâmbio Dxf

$DIMTXT 40 Altura do texto.$DIMZIN 70 Supressão do zero em dimensões de "feet & inch".$DWGCODEPAGE 70 Drawing code page. Fixa o "system code page" quando um novo desenho é criado, mas por outro lado não é mantido pelo AutoCAD.$DRAGMODE 70 0=OFF, 1=ON, 2=auto$ELEVATION 40 Elevação corrente definida pelo comando ELEV.$EXTMAX 10,20,30 Coordenadas X, Y e Z do canto superior direito, da extensão do desenho (em WCS).$EXTMIN 10,20,30 Coordenadas X, Y e Z do canto inferior esquerdo, da extensão do desenho (em WCS).$FILLETRAD 40 Raio de arredondamento (FILLET).$FILLMODE 70 Modo de preenchimento (FILL) activo se diferente de zero.

@2001 João Tavares/JOF CFAC: Ficheiros de Formato DXF 30

Formato do Ficheiro de Intercâmbio Dxf

$HANDLING 70 Disponibilidade de "HANDLES" se diferente de zero.$HANDSEED 5 "Handle" seguinte disponível.$INSBASE 10,20,30 Coordenadas do ponto de base de inserção, fixado pelo comando BASE (em WCS).$LIMCHECK 70 O controlo de limites está activo se diferente de zero.$LIMMAX 10,20 Coordenadas X e Y do canto superior direito dos limites do desenho (em WCS).$LIMMIN 10,20 Coordenadas X e Y do canto inferior esquerdo dos limites do desenho (em WCS).$LTSCALE 40 Factor de escala global do tipo de linha.$LUNITS 70 Formato do UNITS, para coordenadas e distâncias.$LUPREC 70 Precisão do formato de UNITS, para coordenadas e distâncias.

@2001 João Tavares/JOF CFAC: Ficheiros de Formato DXF 31

Formato do Ficheiro de Intercâmbio Dxf

$MAXACTVP 70 Fixa o número máximo de "viewports" a serem regeneradas.$MENU 1 Nome do ficheiro de menu.$MIRRTEXT 70 Texto em espelho se diferente de zero.$ORTHOMODE 70 Modo orto activo se diferente de zero.$OSMODE 70 Modos de "object snap" activos.$PDMODE 70 Modo de representação de um ponto (point).$PDSIZE 70 Tamanho da figura representativa de um ponto (point).$PELEVATION 40 Elevação corrente do "paper space".$PEXTMAX 10,20,30 Coordenadas máximas X, Y e Z da extensão do "paper space".$PEXTMIN 10,20,30 Coordenadas mínimas X, Y e Z da extensão do "paper space".$PLIMCHECK70 Controla os limites em "paper space" quando diferente de zero.

@2001 João Tavares/JOF CFAC: Ficheiros de Formato DXF 32

Formato do Ficheiro de Intercâmbio Dxf

$PLIMMAX 10,20 Coordenadas máximas X e Y de limite do "paper space".$PLIMMIN 10,20 Coordenadas mínimas X e Y de limite do "paper space".$PLINEGEN 70 Controla a geração dos padrões de tipo de linha, em torno dos vértices da Polyline 2D:

1= O tipo de linha é gerada de tipo contínuo junto dos vértices da Polyline.0= Cada segmento da Polyline começa e termina com um traço.

$PLINEWID 40 Espessura por defeito da Polyline.$PSLTSCALE 70 Controla o factor de escala do tipo de linha no "paper space“:

1= Sem factor de escala especial do tipo de linha.0= A escala da "viewport" controla o factor de escala do tipo de linha.

@2001 João Tavares/JOF CFAC: Ficheiros de Formato DXF 33

Formato do Ficheiro de Intercâmbio Dxf

$PUCSNAME 2 Nome do UCS do "paper space" corrente.$PUCSORG 10,20,30 Origem do UCS do "paper space" corrente.$PUCSXDIR 10,20,30 Definição do eixo X do UCS do "paperspace" corrente.$PUCSYDIR 10,20,30 Definição do eixo Y do UCS do "paperspace" corrente.$QTEXTMODE 70 Representação rápida activa de texto se diferente de zero.$REGENMODE 70 REGENAUTO activo se diferente de zero.$SHADEDGE 70 0=Bordos das faces não se sobressaiem; 1=Bordos das faces sobressaiem em preto; 2=Bordos das faces na cor da entidade e faces não preenchidas; 3=Faces na cor da entidade e bordos em preto.$SHADEDIF 70 Percentagem da luz ambiente/difusão, entre 1 e 100. Por defeito 70.

@2001 João Tavares/JOF CFAC: Ficheiros de Formato DXF 34

Formato do Ficheiro de Intercâmbio Dxf

$SKETCHINC 40 Incremento de "record" do "Sketch".$SKPOLY 70 0= linhas de "sketch", 1= "polylines" de "sketch".$SPLFRAME 70 Controla a projecção do polígono da "polyline" 1= ON 0= OFF$SPLINESEGS 70 Número de segmentos de recta por passo da "spline".$SURFTAB1 70 Número de divisões da malha na primeira direcção.$SURFTAB2 70 Número de divisões da malha na segunda direcção.$SURFTYPE 70 Tipo da superfície para o "Smooth" do comando PEDIT.$SURFU 70 Densidade da superfície na direcção M para o "Smooth" do comando PEDIT.

@2001 João Tavares/JOF CFAC: Ficheiros de Formato DXF 35

Formato do Ficheiro de Intercâmbio Dxf

$SURFV 70 Densidade da superfície na direcção N para o "Smooth" do comando PEDIT.$TDCREATE 40 Data/hora de criação do desenho.$TDINDWG 40 Tempo acumulativo de edição do desenho.$TDUPDATE 40 Data/hora da última alteração.$TDUSRTIMER 40 Tempo gasto pelo utilizador.$TEXTSIZE 40 Altura do texto por defeito.$TEXTSTYLE 7 Nome do estilo de texto corrente.$THICKNESS 40 Espessura (thickness) fixada pelo comando ELEV.$TILEMODE 70 1 para modo compatível com versão anterior, 0 para outro caso.$TRACEWID 40 Espessura por defeito para TRACE.$UCSNAME 2 Nome do UCS corrente.

@2001 João Tavares/JOF CFAC: Ficheiros de Formato DXF 36

Formato do Ficheiro de Intercâmbio Dxf

$UCSORG 10,20,30 Coordenadas da origem do UCS corrente.$UCSXDIR 10,20,30 Definição do eixo X do UCS corrente.$UCSYDIR 10,20,30 Definição do eixo Y do UCS corrente.$UNITMODE 70 Conjunto de "bit" de baixo nível = Formato de apresentação de fracções, pés e polegadas e unidades de introdução de ângulos.$USERI1-5 70 Cinco variáveis inteiras para utilização em desenvolvimentos pessoais.$USERR1-5 70 Cinco variáveis reais para utilização em desenvolvimentos pessoais.$USRTIMER 70 0= Timer OFF, 1= Timer ON.$VISRETAIN 70 0= Não retém as definições de visibilidade do "Xref-dependent". 1= Retém as definições de visibilidade do "Xref-dependent".$WORLDVIEW 70 1= Fixa o UCS em WCS durante DVIEW/VPOINT. 0= Não altera o UCS.

@2001 João Tavares/JOF CFAC: Ficheiros de Formato DXF 37

Formato do Ficheiro de Intercâmbio Dxf

As seguintes variáveis existem à priori em versões anteriores à 11, mas agora são independentes para cada uma das "viewport" activa. DXFIN ignora estas variáveis quando as lê dos ficheiros DXF, masse é presente uma tabela de símbolo VPORT com entradas *ACTIVE (como é verdadeiro para qualquer ficheiro DXF criado pela versão 11 ou superior), os valores na tabela de VPORT, sobrepõem-se a estas variáveis do HEADER.

$FASTZOOM 70 Zoom rápido disponível se diferente de zero.$GRIDMODE 70 Modo GRID se diferente de zero.$GRIDUNIT 10,20 Espaçamento em X e Y da malha de pontos (GRID).$SNAPANG 50 Ângulo de rotação da malha de pontos (GRID).$SNAPBASE 10,20 Ponto de base do Snap/Grid (no UCS).$SNAPISOPAIR 70 Plano isométrico 0= Esquerda, 1= Superior, 2= Direita.

@2001 João Tavares/JOF CFAC: Ficheiros de Formato DXF 38

Formato do Ficheiro de Intercâmbio Dxf

$SNAPMODE 70 Mode Snap ON, se diferente de zero.$SNAPSTYLE 70 Estilo de Snap 0= Genérico 1= Isométrico.$SNAPUNIT 10,20 Espaçamento em X e Y da malha de pontos do Snap.$VIEWCTR 10,20 Coordenadas X e Y do centro da "View" corrente no ecrã.$VIEWDIR 10,20,30 Direcção da "View" (direcção da "target" no WCS).$VIEWSIZE 40 Altura da "View".

As variáveis de data/hora ($TDCREATE e $TDUPDATE), são escritas como números reais, no seguinte formato:<data juliana.fracção>As variáveis de tempo de utilização ($TDINDWG e $TDUSRTIMER) têm um formato similar.<número de dias.fracção>

@2001 João Tavares/JOF CFAC: Ficheiros de Formato DXF 39

Formato do Ficheiro de Intercâmbio Dxf

Secção TABLES

A secção TABLES contém diversas tabelas, cada uma das quais contém uma variável numérica das entradas da tabela.A ordem da tabelas pode alterar, mas a tabela LTYPE, precede sempre a tabela LAYER. Cada tabela é introduzida com um código de grupo 0 com o nível da tabela. Esta é seguida por um código de grupo 2, que identifica a tabela (VPORT, LTYPE, LAYER, STYLE, VIEW, DIMSTYLE, UCS ou APPID) e um código de grupo que especifica o número máximo de entradas da tabela que o segue. Os nomes das tabelas, são sempre escritas em carácteres maiúsculos.

@2001 João Tavares/JOF CFAC: Ficheiros de Formato DXF 40

Formato do Ficheiro de Intercâmbio Dxf

As tabelas de um desenho pode conter itens já apagados, mas estes não são escritos para o ficheiro DXF. Assim, as entradas de tabelas que seguem o cabeçalho da tabela, podem ser menores do que as designadas pelo código de grupo 70, pelo que não se deve usar este contador como indexação de leitura. Este grupo é fornecido de modo a permitir, a um programa de leitura de ficheiro DXF, definir o espaço de memória de "array" de modo a permitir guardar todas as entradas possíveis.Seguindo este cabeçalho, para cada tabela estão as entradas. Cada item da tabela consiste de um código de grupo 0 identificando o tipo do item (tal como o nome da tabela, por exemplo, LTYPE ou LAYER), um código de grupo 2 dando o nome da tabela, um código de grupo 70 especificando as "flags" relevantes à tabela e códigos de grupos adicionais que dão o valor de cada entrada da respectiva tabela. O fim de cada tabela é indicado pelo código de grupo 0 com o valor ENDTAB.Os valores da "flag" do código de grupo 70, aplicados a todas as entradas de tabela são descritas no quadro seguinte. Os códigos de grupo 70 aplicados às tabelas LAYER, STYLE e VIEW, são descritasna respectiva secção.

@2001 João Tavares/JOF CFAC: Ficheiros de Formato DXF 41

Formato do Ficheiro de Intercâmbio Dxf

Códigos de grupo 70, aplicados a todas as entradas de tabelas:

16 - Se fixado, a entrada da tabela é externamente dependente de um Xref.32 - Se este valor e o 16 são ambos definidos, a dependência externa de um Xref, foi satisfatoriamente resolvida.64 - Se fixado, a entrada da tabela foi referenciada pela última entidade no desenho, introduzida da última vez que o desenho foi editado. (Esta "flag" é de utilidade para os comandos do programa AutoCAD e pode ser ignorada pela maior parte dos programas que lêem os ficheiros DXF. Não precisa de ser fixada pelos programas de escrita de ficheiros DXF).

@2001 João Tavares/JOF CFAC: Ficheiros de Formato DXF 42

Formato do Ficheiro de Intercâmbio Dxf

Códigos de grupo utilizados por cada item da tabela (Todos os grupos são presentes em cada uma das tabelas.):

APPID - 2 ( nome do utilizador da aplicação), 70 (valores de "flags" genéricas). Estas entradas da tabela mantêm um conjunto de nomes de todas as aplicações registadas com o desenho.DIMSTYLE - 2 (nome do estilo de dimensionamento), 70(valores de "flags" genéricas) e as seguintes, designadas por variáveis de dimensionamento : 3 (dimpost), 4(diamapost), 5 (dimblk), 6 (dimblk1), 7 (dimblk2), 40(dimscale), 41 (dimasz), 42 (dimexo), 43 (dimdli), 44(dimexe), 45 (dimrnd), 46 (dimdle), 47 (dimtp), 48 (dimtm), 140 (dimtxt), 141 (dimcen), 142 (dimtsz), 143 (dimaltf), 144(dimlfac), 145 (dimtvp), 146 (dimtfac), 147 (dimgap), 71(dimtol), 72 (dimlim), 73 (dimtih), 74 (dimtoh), 75 (dimse1), 76 (dimse2), 77 (dimtad), 78 (dimzin), 170 (dimalt), 171(dimaltd), 172 (dimtofl), 173 (dimsah), 174 (dimtix), 175(dimsoxd), 176 (dimclrd), 177 (dimclre), 178 (dimclrt).

@2001 João Tavares/JOF CFAC: Ficheiros de Formato DXF 43

Formato do Ficheiro de Intercâmbio Dxf

LTYPE - 2 (nome do tipo de linha), 70 (valores de "flags" genéricas), 3 (texto de descrição do tipo de linha), 72 (código de alinhamento, o valor é sempre 65, que é o código ASCII do carácter A), 73 (número de items traços), 40 (comprimento total do padrão), e opcionalmente: 49 (comprimento do traço 1), 49 (comprimento do traço 2), etc.LAYER - 2 (nome do LAYER), 70 (valores de "flags" genéricas), 62(número da cor do layer, se negativo o layer está desactivado "OFF"), 6 (nome do tipo de linha).Em adição às "flags" genéricas, a flag de código 70, tem a seguinte codificação:

1 - Se fixado o "layer" está congelado ("frozen").2 - Se fixado o "layer" está congelado por defeito no "viewport".4 - Se fixado o "layer" está fechado ("locked"). Se não está fixado é considerado o valor (0), e então o "layer" está activo e descongelado ("thaw").

Os "layers" dependentes de Xref são escritos durante o DXFOUT. Para estes "layers", o nome do tipo de linha associado será sempre o CONTINUOUS.

@2001 João Tavares/JOF CFAC: Ficheiros de Formato DXF 44

Formato do Ficheiro de Intercâmbio Dxf

STYLE - 2 (nome do estilo), 70 (valores de "flags" genéricas), 40 (altura do texto se fixada ou 0 se não), 41 (factor de largura), 50 (ângulo de inclinação dos carácteres), 71 ("flags" de geração do texto), 42 (valor da última altura utilizada), 3(nome do ficheiro de fonte primária), 4 (nome da "big-font", ou vazio se não existir).Se o terceiro "bit" (4) é fixado no grupo 70 de "flags", este é um estilo de texto verticalmente orientado.Uma tabela STYLE é utilizada para guardar uma "shape" carregada pelo comando LOAD. Neste caso o primeiro "bit" (1) é fixado no grupo 70 e o grupo 3 (nome do ficheiro da "shape") é significativo (todos os outros grupos são escritos no entanto).As "flags" de geração do texto, são campos de "bits" com o seguinte significado:

2 - O texto é invertido (espelhado em X).4 - O texto é empilhado para cima (espelhado em Y).

@2001 João Tavares/JOF CFAC: Ficheiros de Formato DXF 45

Formato do Ficheiro de Intercâmbio Dxf

UCS - 2 (nome do UCS), 70 (valores de "flags" genéricas), 10, 20, 30 (origem do UCS), 11, 21, 31 (direcção do eixo X), 12, 22, 32 (direcção do eixo Y), todos em coordenadas globais (world).VIEW - 2 (nome da vista), 70 (valores de "flags" genéricas), 40e 41 (altura e largura da vista em DCS), 10 e 20 (coordenadas do centro da vista em DCS-Display Coordinate System), 11, 21, 31 (direcção da vista a partir da "target" em WCS), 12, 22, 32, (ponto de "target" em WCS), 42 (comprimento da lente), 43e 44 (planos frontal e posterior de "clipping" - deslocamentos do ponto da "target"), 50 (ângulo de rotação), 71 modo da vista (ver a variável de sistema VIEWMODE). Se o primeiro "bit" é fixado nas "flags" do grupo 70, esta "view" está em "paperspace".

@2001 João Tavares/JOF CFAC: Ficheiros de Formato DXF 46

Formato do Ficheiro de Intercâmbio Dxf

VPORT - 2 (nome da "viewport"), 70 (valores de "flags" genéricas), 10 e 20 (canto inferior esquerdo da "viewport"; 0.0 a 1.0), 11 e 21 (canto superior direito), 12 e 22 (ponto central da vista em WCS), 13 e 23 (ponto de base do "snap"), 14 e 24(espaçamento do "snap" em X e Y), 15 e 25 (espaçamento do "grid" em X e Y), 16, 26, 36 (direcção da vista a partir do ponto da "target"), 17, 27, 37 (ponto de vista da "target"), 40 (altura da vista), 41 (razão de aspecto da vista), 42 (comprimento da lente), 43 e 44 (planos frontal e posterior de "clipping" -deslocamentos do ponto à "target"), 50 (ângulo de rotação do "snap"), 51 (ângulo de rotação da vista), 68 ( estado de campo), 69 (ID), 71 (modo de vista; ver variável de sistema VIEWMODE), 72 (percentagem do círculo de "zoom"), 73(fixação do "fast zoom"), 74 (fixação do UCSICON), 75 (snapON/OFF), 76 (grid ON/OFF), 77 (estilo de "snap"), 78 (snapisopair).

@2001 João Tavares/JOF CFAC: Ficheiros de Formato DXF 47

Formato do Ficheiro de Intercâmbio Dxf

Secção BLOCKSA secção Blocks, do ficheiro DXF, contém a definição de todos os Blocks. Esta secção contém as entidades que definem os Blocks utilizados no desenho, incluindo Blocks anónimos gerados pelo comando HATCH e outros gerados pelo dimensionamento. O formato das entidades nesta secção é idêntico ao destas na Secção Entities. Todas as entidades na secção Blocks, aparecem entre as entidades Block e Endblk. As entidades Block e Endblk, aparecem somente nesta secção. As definições dos blocks nunca são intrínsecas (isto é, nunca uma entidade Block e Endblk aparecem dentro de outro par BlockEndblk), embora a definição de um Block possa conter uma entidade INSERT.Referências externas são escritas, num ficheiro DXF, como uma qualquer definição de Block, excepto que elas também incluem um texto (código de grupo 1) do endereço e nome do ficheiro da referência externa. Este é o formato do texto:Xref filename

@2001 João Tavares/JOF CFAC: Ficheiros de Formato DXF 48

Formato do Ficheiro de Intercâmbio Dxf

Secção ENTITIES

Os itens entidades aparecem em ambas as secções BLOCK e ENTITIES de um ficheiro DXF. A definição das entidades é idêntico em ambas as secções. De seguida é dado o formato com que aparecem as entidades no ficheiro DXF. Alguns dos grupos que definem uma entidade aparecem sempre, enquanto que outros são opcionais e aparecem somente quando eles diferem dos seus valores por defeito.Na seguinte apresentação, serão discutidos os grupos que sempre aparecem e que serão definidos pelos seus números e funções, enquanto os grupos opcionais são indicados por -opcional N, seguido da descrição do grupo. N é o valor por defeito se o grupo é omitido.

@2001 João Tavares/JOF CFAC: Ficheiros de Formato DXF 49

Formato do Ficheiro de Intercâmbio Dxf

Os programas para leitura de ficheiros DXF, não devem assumir que os grupos que descrevem uma entidade, apareçam pela ordem aqui apresentada. O fim dos grupos que definem uma entidade é indicado pelo grupo 0 seguinte, que indica o início de uma nova entidade ou fim da secção.Considerando que um ficheiro DXF é uma apresentação completa de uma base de dados de um desenho, e que o AutoCAD, está sempre a sofrer evoluções, novos grupos serão adicionados às entidades para acomodar performances adicionais. Escrevendo o programa de processamento do ficheiro DXF, de um modo auto-controlável, não assumindo posições fixas sobre a ordem dos grupos em uma entidade e ignorando qualquer grupo não definido presentemente, irá tornar muito mais fácil a leitura de ficheiros DXF de futuras versões do AutoCAD.

@2001 João Tavares/JOF CFAC: Ficheiros de Formato DXF 50

Formato do Ficheiro de Intercâmbio Dxf

Cada entidade começa com um grupo 0, identificando o tipo da entidade. Os nomes utilizados para as entidades são dados na tabela seguinte. Cada entidade contém um grupo 8 que dá o nome do "layer" no qual reside a entidade. Cada entidade pode ter uma elevação, espessura, tipo de linha ou cor associada.Se "handles" são disponíveis, cada entidade tem um grupo 5 contendo o seu "Handle" (como uma "string" representando um número hexagesimal).Os grupos seguintes são incluídos somente se a entidade não tem os valores por defeito para estas propriedades. Quando um grupo é omitido, o valor que lhe é atribuído (quando utilizando o comando DXFIN) é indicado na terceira coluna. Se o valor de um grupo é igual ao por defeito, este é omitido quando da saída (quando se utiliza o comando DXFOUT).

@2001 João Tavares/JOF CFAC: Ficheiros de Formato DXF 51

Formato do Ficheiro de Intercâmbio Dxf

6 - Nome do tipo de linha ( se não é BYLAYER). O nome especial BYBLOCK indica um tipo de linha variável. Valor por defeito (quando omitido) BYLAYER.38 - Elevação (se diferente de zero). Existe somente na saída de versões anteriores à versão 11. Nas outras versões são apresentadas as coordenadas Z, isto é, são 3 grupos que definem cada ponto de uma entidade. Valor por defeito (quando omitido) 039 - Espessura (se diferente de zero). Valor por defeito (quando omitido) 062 - Número da cor (se não é BYLAYER). Zero indica a cor BYBLOCK (variável). 256 indica cor BYLAYER. Valor por defeito (quando omitido) BYLAYER.67 - Omitido ou zero (0), indica que a entidade está em "modelspace". Um (1), indica que a entidade está em "paper space", outros valores são reservados. Valor por defeito (quando omitido) 0

@2001 João Tavares/JOF CFAC: Ficheiros de Formato DXF 52

Formato do Ficheiro de Intercâmbio Dxf

210, 220, 230 - Estes grupos são incluídos para cada entidade Line, Point, Circle, Shape, Text, Arc, Trace, Solid, Block, Reference, Polyline, Dimension, Attribute e Attribute Definitionse a direcção de extrusão não é paralela ao eixo Z do World. Eles indicam respectivamente as componentes X, Y e Z do vector da direcção de extrusão.

Os restantes grupos que definem uma entidade são definidos de seguida. Muitas das entidades incluem grupos de "flag", Estes são códigos inteiros (códigos de grupo 6x ou 7x) que definem vários parâmetros da entidade e são específicos para um tipo particular. Na seguinte descrição, o termo "Bit-coded", significa que a "flag" contém vários valores de verdadeiro/falso como soma dos valores binários dados. Alguns "bits" não definidos na seguinte secção serão ignorados nestes campos e fixados em zero quando se constrói um ficheiro DXF.

@2001 João Tavares/JOF CFAC: Ficheiros de Formato DXF 53

Formato do Ficheiro de Intercâmbio Dxf

LINE - 10, 20, 30 (ponto de início), 11, 21, 31 (ponto final).POINT - 10, 20, 30 (ponto). As entidades POINT, têm um grupo opcional 50, que determina a orientação das imagens de PDMODE. O valor do grupo é o negativo do ângulo de "EntityCoordinate Systems" (ECS) do eixo X do UCS efectivo de quando da criação do POINT.CIRCLE - 10, 20, 30 (centro), 40 (raio).ARC - 10, 20, 30 (centro), 40 (raio), 50 (ângulo de início), 51(ângulo final).TRACE - Quatro pontos definem os cantos do TRACE: (10, 20, 30), (11, 21, 31), (12, 22, 32) e (13,23,33).SOLID - Quatro pontos definem os cantos do SOLID: (10, 20, 30), (11, 21, 31), (12, 22, 32) e (13,23,33). Se só são definidos três cantos (formando um SOLID triângular), o terceiro e quarto ponto serão o mesmo.

@2001 João Tavares/JOF CFAC: Ficheiros de Formato DXF 54

Formato do Ficheiro de Intercâmbio Dxf

TEXT - 10, 20, 30 (ponto de inserção), 40 (altura), 1 (texto), 50(ângulo de rotação - por opção 0), 41 (factor de escala relativo a X - por opção 1), 51 (ângulo de inclinação do carácter - por opção 0), 7 (nome do estilo do texto - por opção STANDARD), 71 ("flags" de geração do texto - por opção 0), 72 (tipo de justificação horizontal -por opção 0), 73 (tipo de justificação vertical - por opção 0) 11, 21, 31 (ponto de alinhamento - opcionalmente só aparecem se o grupo 72 ou 73 está presente e é diferente de zero).As "flags" de geração do texto, são um campo "bit-coded" com o seguinte significado:

2 - O texto é invertido (espelhado em X)4 - O texto é de baixo para cima (espelhado em Y).

Os valores do tipo de justificação (códigos de grupo 72 e 73, não são "bit-coded") indicam o estilo de justificação do texto utilizado no texto, conforme o mostrado na seguinte tabela:

@2001 João Tavares/JOF CFAC: Ficheiros de Formato DXF 55

Formato do Ficheiro de Intercâmbio Dxf

Grupo 73 Grupo 72 (alinhamento horizontal)(alinhamentovertical) 0 1 2 3 4 53 (Top)TLeft TCenter TRight2 (Middle) MLeft MCenter MRight1 (Bottom) BLeft BCenter BRight0 (Baseline) Left Center Right Alig Middle FitSe a justificação é uma outra qualquer que não a baseline/left(ambos os grupos 72 e 73 com valor 0), os códigos de grupo 11, 21 e 31 especificam o ponto de alinhamento (ou o segundo ponto para o Align ou Fit).

SHAPE - 10, 20, 30 (ponto de inserção), 40 (tamanho), 2 (nome da Shape), 50 (ângulo de rotação - opcional 0), 41 (factor de escala relativo a X - opcional 1), 51 (ângulo de inclinação -opcional 0).

@2001 João Tavares/JOF CFAC: Ficheiros de Formato DXF 56

Formato do Ficheiro de Intercâmbio Dxf

BLOCK - 2 (nome do block), 3 (este é também o nome do block), 70 ("flag" de tipo de block), 10, 20, 30 (ponto de base) e se o Blocké um Xref Block, também conterá o código de grupo 1 (endereço do Xref). As entidades do Block só aparecem na secção BLOCKS, não na secção ENTITIES. A "flag" de tipo de Block (código de grupo 70) é um "bit-coded" com os seguintes significados:

1 - Este é um Block anónimo gerado por um Hatch, dimensionamento associativo, outra operações internas ou uma aplicação.2 - Este Block tem Attributes4 - Este Block é uma referência externa (Xref)8 - não utilizado16 - Este Block é externamente dependente.32 - Este Block é uma referência externa resolvida ou dependente de uma referência externa.64 - Esta definição é referenciada.

@2001 João Tavares/JOF CFAC: Ficheiros de Formato DXF 57

Formato do Ficheiro de Intercâmbio Dxf

ENDBLK - Não tem grupos. Aparece apenas na Secção BLOCKS.INSERT - 66 ("flag" de sequência do Attribute - opcional 0), 2(nome do Block), 10, 20, 30 (ponto de inserção), 41 (factor de escala em X - opcional 1), 42 (factor de escala em Y - opcional 1), 43 (factor de escala em Z - opcional 1), 50 (ângulo de rotação -opcional 0), 70 e 71 (contador de colunas e linhas - opcional 1), 44e 45 (espaçamento das colunas e linhas - opcional 0).ATTDEF - 10, 20, 30 (início do texto), 40 (altura do texto), 1 (valor por defeito), 3 (texto para questionar), 2 (texto de designação "tag"), 70 ("Attributes Flags"), 73 (comprimento do campo -opcional 0), 50 (rotação do texto - opcional 0), 41 (factor de escala relativo a X - opcional 1), 51 (ângulo de inclinação dos carácteres -opcional 0), 7 (nome do estilo do texto - opcional STANDARD), 71("flag" de geração do texto - opcional 0), 72 (tipo de justificação horizontal do texto - opcional 0), 74 (tipo de justificação vertical do texto - opcional 0), 11, 21, 31 (ponto de alinhamento- opcional, aparece só se o grupo 72 ou 74 está presente e é diferente de zero).

@2001 João Tavares/JOF CFAC: Ficheiros de Formato DXF 58

Formato do Ficheiro de Intercâmbio Dxf

As "Attributes flags" (código de grupo 70) são um campo "bit-coded" com os seguintes significados:

1 - O attribute é invisível (não projectado).2 - Este é um Attribute constante.4 - É requerida a verificação na entrada deste Attribute.8 - O Attribute é pré-definido (não tem proposta de valor durante a inserção).

ATTRIB - 10, 20, 30 (início do texto), 40 (altura do texto), 1 (valor), 2 ("Attribute tag"), 70 ("Attribute flags"; ver attdef), 73(comprimento do campo - opcional 0), 50 (rotação do texto -opcional 0), 41 (factor de escala relativo a X - opcional 1), 51(ângulo de inclinação do carácter - opcional 0), 7 (nome do estilo do texto - opcional STANDARD), 71 ("flags" de geração do texto -opcional 0, ver text), 72 (tipo de justificação horizontal - opcional 0), 74 (tipo de justificação vertical do texto - opcional 0), 11, 21, 31, (ponto de alinhamento - opcional somente aparece quando aparece o grupo 72 ou 74 e é diferente de zero).

@2001 João Tavares/JOF CFAC: Ficheiros de Formato DXF 59

Formato do Ficheiro de Intercâmbio Dxf

POLYLINE - 66 ("flag" de sequência de vértices), 10, 20, 30(elevação da polyline - 30 fornece a elevação e 10 e 20 são sempre fixados em zero), 70 ("flag" da polyline - opcional 0), 40 ( espessura de início por defeito - opcional 0), 41 (espessura por defeito do fim - opcional 0), 71 e 72 (contadores M e N de vértices da malha poligonal - opcional 0), 73 e 74 (densidades M e N de amaciamento da superfície - opcional 0), 75 (tipo de curva e amaciamento da superfície - opcional 0). As espessuras por defeito, aplicam-se a qualquer "vertex" que não forneçam espessuras).A "flag" de sequência de vértices é sempre 1, indicando que a série de entidades VERTEX, é esperada a seguir à Polyline, terminando com uma entidade de fim de sequência (SEQEND). A "flag" da Polyline (código de grupo 70), é um campo "bit-coded" com os seguintes significados:

1 - É uma Polyline fechada (ou uma malha poligonal fechada na direcção M).2 - Foi adicionada uma instrução de Curve-Fit dos vértices.

@2001 João Tavares/JOF CFAC: Ficheiros de Formato DXF 60

Formato do Ficheiro de Intercâmbio Dxf

4 - Foi adicionada uma instrução de Spline-Fit dos vértices.8 - Esta é uma Polyline 3D.16 - Esta é uma malha poligonal 3D. O grupo 75 indica o tipo de amaciamento da superfície, como se segue:

0 = não fixado amaciamento da superfície.5 = Superfície de B-spline quadrática.6 = Superfície de B-spline cúbica.8 = Superfície de Bézier.

32 - A malha poligonal é fechada na direcção N.64 - Esta Polyline é uma malha de faces (3dface).128 - O tipo de linha é gerado continuamente em torno dos vértices desta polyline.

A malha de faces é representada em DXF, como uma variante de uma entidade Polyline. O cabeçalho da polyline identifica-a como uma malha de faces através da presença do valor 64 no grupo 70. O grupo 71 especifica o número de vértices na malha e o grupo 72especifica o número de faces. Enquanto estes contadores são correctos para todas as malhas criadas com o comando PFACE, as aplicações não são obrigadas a colocar os valores correctos nestes campos, uma vez que AutoCAD actualmente nunca confia na sua veracidade (ignora estes valores na leitura).

@2001 João Tavares/JOF CFAC: Ficheiros de Formato DXF 61

Formato do Ficheiro de Intercâmbio Dxf

O que se segue ao cabeçalho da Polyline é uma sequência de entidades VERTEX, que especificam as coordenadas dos vértices e faces que compõem a malha. Vértices tais e quais como são descritos na secção dos VERTEX.As malhas de faces criadas com o comando PFACE, são sempre geradas com todas as coordenadas do vértices primeiro, seguidas da definição das faces. O código dentro do AutoCAD que processa as malhas de faces, presentemente não requer esta ordem; este trabalha com definições de faces e vértices intercaladas, desde que nenhuma face especifique um vértice com indíce que apareça depois na base de dados. Programas que leiam malhas de faces de um ficheiro DXF, deverão também ser tolerantes com a ordem que os vértices e faces apresentam tal como o AutoCAD o é.

@2001 João Tavares/JOF CFAC: Ficheiros de Formato DXF 62

Formato do Ficheiro de Intercâmbio Dxf

VERTEX - 10, 20, 30 (localização), 40 (espessura de início -opcional ver Polyline), 41 (largura final - opcional ver Polyline), 42(curvatura - opcional 0), 70 ("flags" dos vértices - opcional 0), 50(direcção da tangente da curva de fixação - opcional). A curvatura é a tangente de 1/4 do ângulo ao centro do segmento de arco, queserá negativo se o arco vai no sentido dos ponteiros do relógio (sentido retrógrado) do ponto de início para o final; uma curvatura de 0, indica um segmento de recta e uma curvatura de 1 é um semi-círculo. O significado da "flag" dos vértices, de campo "bit-coded", é mostrado na tabela seguinte:

1 - Vértice extra criado por "curve-fitting".2 - Uma tangente da "Curve-fit" criada para este vértice. Uma direcção de tangente 0, pode ser omitida na escrita do ficheiro DXF, mas é significante se este "bit" é fixado.4 - Não utilizado (nunca fixado em ficheiros DXF).8 - Vértice de spline criado por "spline-fitting".16 - Ponto de controlo da estrutura da spline.32 - Vértice de uma Polyline 3D.

@2001 João Tavares/JOF CFAC: Ficheiros de Formato DXF 63

Formato do Ficheiro de Intercâmbio Dxf

64 - Vértice de uma malha poligonal 3D.128 - Vértice de uma malha de faces.

Cada vértice (VERTEX) que é parte de uma malha de faces tem o valor 128 no grupo 70. Se a entidade indica as coordenadas de vértice de uma malha, o valor 64 é fixado bem como os grupos 10,20 e 30. O índice de cada vértice é determinado pela ordem com que as entidades VERTEX, aparecem dentro da Polyline, tendo o primeiro o número 1.Se um VERTEX define a face de uma malha, a "flag" do grupo 70 tem o valor de 128 mas não o de 64. os grupos 10, 20 e 30 (localização) da face são irrelevantes e são sempre escritos com o valor zero no ficheiro DXF. Os índices dos vértices que definem a face são dados pelos grupos 71, 72, 73 e 74, cujos valores são inteiros e especificam o índice de um vértice já anteriormente definido. Se o índice é negativo, o bordo que começa neste vértice é invisível. O primeiro vértice zero, marca o fim dos vértices da face. Os grupos de 71 a 74 são campos opcionais com valores por defeito de zero, e são escritos no ficheiro DXF se diferentes de 0.

@2001 João Tavares/JOF CFAC: Ficheiros de Formato DXF 64

Formato do Ficheiro de Intercâmbio Dxf

SEQEND - Não tem campos. Esta entidade marca o fim dos vértices (VERTEX) de uma Polyline, ou o fim das entidades Attribute de um uma entidade INSERT que tem Attributes(indicado pela presença do grupo 66, com o valor diferente de zero em uma entidade Insert).3DFACE - Quatro pontos definem os cantos da face: (10, 20, 30), (11, 21, 31), (12, 22, 32) e (13, 23, 33). 70 ("flag" que define lados invisíveis - opcional 0). Se na definição da face só são introduzidos três pontos (formando uma face triangular), o terceiro e quarto pontos serão o mesmo. O significado da "flag" de invisibilidade do lado, de campo "bit-coded", é mostrado na seguinte tabela:

1 - O primeiro lado é invisível.2 - O segundo lado é invisível.4 - O terceiro lado é invisível.8 - O quarto lado é invisível.

@2001 João Tavares/JOF CFAC: Ficheiros de Formato DXF 65

Exemplo de Ficheiro Dxf

Entidades no desenho.

WordPad Document

Ficheiro DXF.

WordPad Document

Dados das entidades.