libDXF 0.0.1
A library with DXF related functions written in C.
|
DXF definition of an AutoCAD vertex entity. More...
#include <vertex.h>
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 DxfVertex * | next |
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.
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().
char* dxf_vertex_struct::layer |
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().
double dxf_vertex_struct::elevation |
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().
double dxf_vertex_struct::thickness |
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().
int16_t dxf_vertex_struct::visibility |
Object visibility (optional):
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().
double dxf_vertex_struct::x0 |
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().
double dxf_vertex_struct::y0 |
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().
double dxf_vertex_struct::z0 |
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().
double dxf_vertex_struct::end_width |
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().
double dxf_vertex_struct::bulge |
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:
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().
struct DxfVertex* dxf_vertex_struct::next |
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().