libDXF 0.0.1
A library with DXF related functions written in C.
Data Fields

dxf_vertex_struct Struct Reference

DXF definition of an AutoCAD vertex entity. More...

#include <vertex.h>

Collaboration diagram for dxf_vertex_struct:
Collaboration graph
[legend]

Data Fields

int id_code
char * linetype
char * layer
double elevation
double thickness
double linetype_scale
int16_t visibility
int color
int paperspace
char * dictionary_owner_soft
char * dictionary_owner_hard
double x0
double y0
double z0
double start_width
double end_width
double bulge
double curve_fit_tangent_direction
int flag
int polyface_mesh_vertex_index_1
int polyface_mesh_vertex_index_2
int polyface_mesh_vertex_index_3
int polyface_mesh_vertex_index_4
struct DxfVertexnext

Detailed Description

DXF definition of an AutoCAD vertex entity.

Every VERTEX that is part of a polyface mesh has the 128 bit set in its Vertex flags (70) group.
If the entity specifies the coordinates of a VERTEX of the mesh, the 64 bit is set as well and the 10, 20, and 30 groups give the vertex coordinates.
The VERTEX indexes are determined by the order in which the VERTEX entities appear within the POLYLINE, with the first numbered 1.

If the VERTEX defines a face of the mesh, its VERTEX flags (70) group has the 128 bit set but not the 64 bit.
The 10, 20, and 30 (location) groups of the FACE entity are irrelevant and are always written as zero in a DXF file.
The VERTEX indexes that define the mesh are given by 71, 72, 73, and 74 groups, the values of which are integers specifying one of the previously defined vertices by index.
If the index is negative, the edge that begins with that VERTEX is invisible.
The first zero VERTEX marks the end of the vertices of the face.
Since the 71 through 74 groups are optional fields with default values of zero, they are present in DXF only if nonzero.

Version:
According to DXF R10.
According to DXF R11.
According to DXF R12.
According to DXF R13.
According to DXF R14.

Definition at line 78 of file vertex.h.


Field Documentation

Identification number for the entity.
This is to be an unique (sequential) number in the DXF file.
Group code = 5.

Definition at line 83 of file vertex.h.

Referenced by dxf_donut_write(), dxf_vertex_init(), dxf_vertex_read(), and dxf_vertex_write().

The linetype of the entity.
Defaults to BYLAYER if ommitted in the DXF file.
Group code = 6.

Definition at line 88 of file vertex.h.

Referenced by dxf_donut_write(), dxf_vertex_free(), dxf_vertex_init(), dxf_vertex_read(), and dxf_vertex_write().

Layer on which the entity is drawn.
Defaults to layer "0" if no valid layername is given.
Group code = 8.

Definition at line 92 of file vertex.h.

Referenced by dxf_donut_write(), dxf_vertex_free(), dxf_vertex_init(), dxf_vertex_read(), and dxf_vertex_write().

Elevation of the arc in the local Z-direction.
Defaults to 0.0 if omitted in the DXF file, or prior to DXF version R12, or DXF_FLATLAND equals 0 (default).
Group code = 38.

Definition at line 96 of file vertex.h.

Referenced by dxf_vertex_init(), dxf_vertex_read(), and dxf_vertex_write().

Thickness of the arc in the local Z-direction.
Defaults to 0.0 if ommitted in the DXF file.
Group code = 39.

Definition at line 101 of file vertex.h.

Referenced by dxf_donut_write(), dxf_vertex_init(), dxf_vertex_read(), and dxf_vertex_write().

Linetype scale (optional).
Group code = 48.

Definition at line 105 of file vertex.h.

Referenced by dxf_vertex_init(), dxf_vertex_read(), and dxf_vertex_write().

Object visibility (optional):

  1. Visible
  2. Invisible

Group code = 60.

Definition at line 108 of file vertex.h.

Referenced by dxf_vertex_init(), dxf_vertex_read(), and dxf_vertex_write().

Color of the entity.
Defaults to BYLAYER if ommitted in the DXF file.
Note that entities encapsulated in a block with the color BYBLOCK are represented in the "native" color of the BLOCK entity.
Group code = 62.

Definition at line 115 of file vertex.h.

Referenced by dxf_donut_write(), dxf_vertex_init(), dxf_vertex_read(), and dxf_vertex_write().

Entities are to be drawn on either PAPERSPACE or MODELSPACE.
Optional, defaults to DXF_MODELSPACE (0).
Group code = 67.

Definition at line 122 of file vertex.h.

Referenced by dxf_donut_write(), dxf_vertex_init(), dxf_vertex_read(), and dxf_vertex_write().

Soft-pointer ID/handle to owner dictionary (optional).
Group code = 330.

Definition at line 127 of file vertex.h.

Referenced by dxf_vertex_free(), dxf_vertex_init(), dxf_vertex_read(), and dxf_vertex_write().

Hard owner ID/handle to owner dictionary (optional).
Group code = 360.

Definition at line 130 of file vertex.h.

Referenced by dxf_vertex_free(), dxf_vertex_init(), dxf_vertex_read(), and dxf_vertex_write().

X value of the location point.
Group code = 10.

Definition at line 134 of file vertex.h.

Referenced by dxf_donut_write(), dxf_lwpolyline_read(), dxf_lwpolyline_write(), dxf_vertex_init(), dxf_vertex_read(), and dxf_vertex_write().

Y value of the location point.
Group code = 20.

Definition at line 137 of file vertex.h.

Referenced by dxf_donut_write(), dxf_lwpolyline_read(), dxf_lwpolyline_write(), dxf_vertex_init(), dxf_vertex_read(), and dxf_vertex_write().

Z value of the location point.
Group code = 30.

Definition at line 140 of file vertex.h.

Referenced by dxf_donut_write(), dxf_vertex_init(), dxf_vertex_read(), and dxf_vertex_write().

Starting width (optional, defaults to 0.0).
Group code = 40.

Definition at line 143 of file vertex.h.

Referenced by dxf_donut_write(), dxf_lwpolyline_read(), dxf_lwpolyline_write(), dxf_vertex_init(), dxf_vertex_read(), and dxf_vertex_write().

Ending width (optional, defaults to 0.0).
Group code = 41.

Definition at line 146 of file vertex.h.

Referenced by dxf_donut_write(), dxf_lwpolyline_read(), dxf_lwpolyline_write(), dxf_vertex_init(), dxf_vertex_read(), and dxf_vertex_write().

Bulge (optional, defaults to 0.0).
The bulge is the tangent of 1/4 the included angle for an arc segment, made negative if the arc goes clockwise from the start point to the endpoint; a bulge of 0 indicates a straight segment, and a bulge of 1 is a semicircle.
Group code = 42.

Definition at line 149 of file vertex.h.

Referenced by dxf_donut_write(), dxf_lwpolyline_read(), dxf_lwpolyline_write(), dxf_vertex_init(), dxf_vertex_read(), and dxf_vertex_write().

Curve fit tangent direction.
Group code = 50.

Definition at line 156 of file vertex.h.

Referenced by dxf_donut_write(), dxf_vertex_init(), dxf_vertex_read(), and dxf_vertex_write().

Flag (optional, defaults to 0)
Bit coded:

  1. Extra vertex created by curve-fitting.
  2. Curve-fit tangent defined for this vertex.
    A curve-fit tangent direction of 0 may be omitted from the DXF output, but is significant if this bit is set.
  3. Unused (never set in DXF files).
  4. Spline vertex created by spline-fitting.
  5. Spline frame control point.
  6. 3D Polyline vertex.
  7. 3D polygon mesh vertex.
  8. Polyface mesh vertex.

Group code = 70.

Definition at line 159 of file vertex.h.

Referenced by dxf_donut_write(), dxf_vertex_init(), dxf_vertex_read(), and dxf_vertex_write().

Polyface mesh vertex index.
Optional.
Present only if nonzero.
Group code = 71.

Definition at line 177 of file vertex.h.

Referenced by dxf_vertex_read(), and dxf_vertex_write().

Polyface mesh vertex index.
Optional.
Present only if nonzero.
Group code = 72.

Definition at line 182 of file vertex.h.

Referenced by dxf_vertex_read(), and dxf_vertex_write().

Polyface mesh vertex index.
Optional.
Present only if nonzero.
Group code = 73.

Definition at line 187 of file vertex.h.

Referenced by dxf_vertex_read(), and dxf_vertex_write().

Polyface mesh vertex index.
Optional.
Present only if nonzero.
Group code = 74.

Definition at line 192 of file vertex.h.

Referenced by dxf_vertex_read(), and dxf_vertex_write().

Pointer to the next DxfVertex.
NULL in the last DxfVertex.

Definition at line 196 of file vertex.h.

Referenced by dxf_lwpolyline_read(), dxf_lwpolyline_write(), dxf_polyline_write(), dxf_vertex_free(), dxf_vertex_free_chain(), and dxf_vertex_init().


The documentation for this struct was generated from the following file: