libDXF 0.0.1
A library with DXF related functions written in C.
Data Structures | Typedefs | Functions

3dline.h File Reference

Header file for a DXF 3D line entity (3DLINE). More...

#include "global.h"
#include "point.h"
#include "binary_graphics_data.h"
Include dependency graph for 3dline.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  dxf_3dline_struct
 DXF definition of an AutoCAD line entity. More...

Typedefs

typedef struct dxf_3dline_struct Dxf3dline
 DXF definition of an AutoCAD line entity.

Functions

Dxf3dlinedxf_3dline_new ()
 Allocate memory for a DXF 3DLINE entity.
Dxf3dlinedxf_3dline_init (Dxf3dline *line)
 Allocate memory and initialize data fields in a DXF 3DLINE entity.
Dxf3dlinedxf_3dline_read (DxfFile *fp, Dxf3dline *line)
 Read data from a DXF file into a DXF 3DLINE entity.
int dxf_3dline_write (DxfFile *fp, Dxf3dline *line)
 Write DXF output to a file (or a device) for a DXF 3DLINE entity.
int dxf_3dline_free (Dxf3dline *line)
 Free the allocated memory for a DXF 3DLINE entity and all it's data fields.
void dxf_3dline_free_chain (Dxf3dline *lines)
 Free the allocated memory for a chain of DXF 3DLINE entities and all their data fields.
int dxf_3dline_get_id_code (Dxf3dline *line)
 Get the ID code from a DXF 3DLINE entity.
Dxf3dlinedxf_3dline_set_id_code (Dxf3dline *line, int id_code)
 Set the ID code for a DXF 3DLINE entity.
char * dxf_3dline_get_linetype (Dxf3dline *line)
 Get the linetype from a DXF 3DLINE entity.
Dxf3dlinedxf_3dline_set_linetype (Dxf3dline *line, char *linetype)
 Set the linetype for a DXF 3DLINE entity.
char * dxf_3dline_get_layer (Dxf3dline *line)
 Get the layer from a DXF 3DLINE entity.
Dxf3dlinedxf_3dline_set_layer (Dxf3dline *line, char *layer)
 Set the layer for a DXF 3DLINE entity.
double dxf_3dline_get_elevation (Dxf3dline *line)
 Get the elevation from a DXF 3DLINE entity.
Dxf3dlinedxf_3dline_set_elevation (Dxf3dline *line, double elevation)
 Set the elevation for a DXF 3DLINE entity.
double dxf_3dline_get_thickness (Dxf3dline *line)
 Get the thickness from a DXF 3DLINE entity.
Dxf3dlinedxf_3dline_set_thickness (Dxf3dline *line, double thickness)
 Set the thickness for a DXF 3DLINE entity.
double dxf_3dline_get_linetype_scale (Dxf3dline *line)
 Get the linetype scale from a DXF 3DLINE entity.
Dxf3dlinedxf_3dline_set_linetype_scale (Dxf3dline *line, double linetype_scale)
 Set the linetype scale for a DXF 3DLINE entity.
int16_t dxf_3dline_get_visibility (Dxf3dline *line)
 Get the visibility from a DXF 3DLINE entity.
Dxf3dlinedxf_3dline_set_visibility (Dxf3dline *line, int16_t visibility)
 Set the visibility for a DXF 3DLINE entity.
int dxf_3dline_get_color (Dxf3dline *line)
 Get the color from a DXF 3DLINE entity.
Dxf3dlinedxf_3dline_set_color (Dxf3dline *line, int color)
 Set the color for a DXF 3DLINE entity.
int dxf_3dline_get_paperspace (Dxf3dline *line)
 Get the paperspace flag value from a DXF 3DLINE entity.
Dxf3dlinedxf_3dline_set_paperspace (Dxf3dline *line, int paperspace)
 Set the paperspace flag for a DXF 3DLINE entity.
int dxf_3dline_get_graphics_data_size (Dxf3dline *line)
 Get the graphics_data_size value from a DXF 3DLINE entity.
Dxf3dlinedxf_3dline_set_graphics_data_size (Dxf3dline *line, int graphics_data_size)
 Set the graphics_data_size value for a DXF 3DLINE entity.
int16_t dxf_3dline_get_shadow_mode (Dxf3dline *line)
 Get the shadow_mode from a DXF 3DLINE entity.
Dxf3dlinedxf_3dline_set_shadow_mode (Dxf3dline *line, int16_t shadow_mode)
 Set the shadow_mode for a DXF 3DLINE entity.
DxfBinaryGraphicsDatadxf_3dline_get_binary_graphics_data (Dxf3dline *line)
 Get the pointer to the binary graphics data from a DXF 3DLINE entity.
Dxf3dlinedxf_3dline_set_binary_graphics_data (Dxf3dline *line, DxfBinaryGraphicsData *data)
 Set the pointer to the binary_graphics_data for a DXF 3DLINE entity.
char * dxf_3dline_get_dictionary_owner_soft (Dxf3dline *line)
 Get the soft pointer to the dictionary owner from a DXF 3DLINE entity.
Dxf3dlinedxf_3dline_set_dictionary_owner_soft (Dxf3dline *line, char *dictionary_owner_soft)
 Set the pointer to the dictionary_owner_soft for a DXF 3DLINE entity.
char * dxf_3dline_get_material (Dxf3dline *line)
 Get the pointer to the material from a DXF 3DLINE entity.
Dxf3dlinedxf_3dline_set_material (Dxf3dline *line, char *material)
 Set the pointer to the material for a DXF 3DLINE entity.
char * dxf_3dline_get_dictionary_owner_hard (Dxf3dline *line)
 Get the hard pointer to the dictionary owner from a DXF 3DLINE entity.
Dxf3dlinedxf_3dline_set_dictionary_owner_hard (Dxf3dline *line, char *dictionary_owner_hard)
 Set the pointer to the dictionary_owner_hard for a DXF 3DLINE entity.
int16_t dxf_3dline_get_lineweight (Dxf3dline *line)
 Get the lineweight from a DXF 3DLINE entity.
Dxf3dlinedxf_3dline_set_lineweight (Dxf3dline *line, int16_t lineweight)
 Set the lineweight for a DXF 3DLINE entity.
char * dxf_3dline_get_plot_style_name (Dxf3dline *line)
 Get the plot_style_name from a DXF 3DLINE entity.
Dxf3dlinedxf_3dline_set_plot_style_name (Dxf3dline *line, char *plot_style_name)
 Set the plot_style_name for a DXF 3DLINE entity.
long dxf_3dline_get_color_value (Dxf3dline *line)
 Get the color_value from a DXF 3DLINE entity.
Dxf3dlinedxf_3dline_set_color_value (Dxf3dline *line, long color_value)
 Set the color_value for a DXF 3DLINE entity.
char * dxf_3dline_get_color_name (Dxf3dline *line)
 Get the color_name from a DXF 3DLINE entity.
Dxf3dlinedxf_3dline_set_color_name (Dxf3dline *line, char *color_name)
 Set the color_name for a DXF 3DLINE entity.
long dxf_3dline_get_transparency (Dxf3dline *line)
 Get the transparency from a DXF 3DLINE entity.
Dxf3dlinedxf_3dline_set_transparency (Dxf3dline *line, long transparency)
 Set the transparency for a DXF 3DLINE entity.
DxfPointdxf_3dline_get_p0 (Dxf3dline *line)
 Get the start point p0 of a DXF 3DLINE entity.
Dxf3dlinedxf_3dline_set_p0 (Dxf3dline *line, DxfPoint *p0)
 Set the start point of a DXF 3DLINE entity.
double dxf_3dline_get_x0 (Dxf3dline *line)
 Get the X-value of the start point of a DXF 3DLINE entity.
Dxf3dlinedxf_3dline_set_x0 (Dxf3dline *line, double x0)
 Set the X-value of the start point of a DXF 3DLINE entity.
double dxf_3dline_get_y0 (Dxf3dline *line)
 Get the Y-value of the start point of a DXF 3DLINE entity.
Dxf3dlinedxf_3dline_set_y0 (Dxf3dline *line, double y0)
 Set the Y-value of the start point of a DXF 3DLINE entity.
double dxf_3dline_get_z0 (Dxf3dline *line)
 Get the Z-value of the start point of a DXF 3DLINE entity.
Dxf3dlinedxf_3dline_set_z0 (Dxf3dline *line, double z0)
 Set the Z-value of the start point of a DXF 3DLINE entity.
DxfPointdxf_3dline_get_p1 (Dxf3dline *line)
 Get the end point p1 of a DXF 3DLINE entity.
Dxf3dlinedxf_3dline_set_p1 (Dxf3dline *line, DxfPoint *p1)
 Set the end point of a DXF 3DLINE entity.
double dxf_3dline_get_x1 (Dxf3dline *line)
 Get the X-value of the end point of a DXF 3DLINE entity.
Dxf3dlinedxf_3dline_set_x1 (Dxf3dline *line, double x1)
 Set the X-value of the end point of a DXF 3DLINE entity.
double dxf_3dline_get_y1 (Dxf3dline *line)
 Get the Y-value of the end point of a DXF 3DLINE entity.
Dxf3dlinedxf_3dline_set_y1 (Dxf3dline *line, double y1)
 Set the Y-value of the end point of a DXF 3DLINE entity.
double dxf_3dline_get_z1 (Dxf3dline *line)
 Get the Z-value of the end point of a DXF 3DLINE entity.
Dxf3dlinedxf_3dline_set_z1 (Dxf3dline *line, double z1)
 Set the Z-value of the end point of a DXF 3DLINE entity.
double dxf_3dline_get_extr_x0 (Dxf3dline *line)
 Get the X-value of the extrusion vector of a DXF 3DLINE entity.
Dxf3dlinedxf_3dline_set_extr_x0 (Dxf3dline *line, double extr_x0)
 Set the X-value of the extrusion vector of a DXF 3DLINE entity.
double dxf_3dline_get_extr_y0 (Dxf3dline *line)
 Get the Y-value of the extrusion vector of a DXF 3DLINE entity.
Dxf3dlinedxf_3dline_set_extr_y0 (Dxf3dline *line, double extr_y0)
 Set the Y-value of the extrusion vector of a DXF 3DLINE entity.
double dxf_3dline_get_extr_z0 (Dxf3dline *line)
 Get the Z-value of the extrusion vector of a DXF 3DLINE entity.
Dxf3dlinedxf_3dline_set_extr_z0 (Dxf3dline *line, double extr_z0)
 Set the Z-value of the extrusion vector of a DXF 3DLINE entity.
DxfPointdxf_3dline_get_extrusion_vector_as_point (Dxf3dline *line)
 Get the extrusion vector as a DXF POINT entity from a DXF 3DLINE entity.
Dxf3dlinedxf_3dline_set_extrusion_vector_from_point (Dxf3dline *line, DxfPoint *point)
 Set the extrusion vector from a DXF POINT for a DXF 3DLINE entity.
Dxf3dlinedxf_3dline_set_extrusion_vector (Dxf3dline *line, double extr_x0, double extr_y0, double extr_z0)
 Set the extrusion vector for a DXF 3DLINE entity.
DxfPointdxf_3dline_get_mid_point (Dxf3dline *line, int id_code, int inheritance)
 Get the mid point of a DXF 3DLINE entity.
double dxf_3dline_get_length (Dxf3dline *line)
 Get the length of a DXF 3DLINE (straight distance between start point and end point).
Dxf3dlinedxf_3dline_create_from_points (DxfPoint *p0, DxfPoint *p1, int id_code, int inheritance)
 Create a DXF 3DLINE by means of two DXF POINT entities.
Dxf3dlinedxf_3dline_get_next (Dxf3dline *line)
 Get the pointer to the next 3DLINE entity from a DXF 3DLINE entity.
Dxf3dlinedxf_3dline_set_next (Dxf3dline *line, Dxf3dline *next)
 Set the pointer to the next 3DLINE for a DXF 3DLINE entity.
Dxf3dlinedxf_3dline_get_last (Dxf3dline *line)
 Get the pointer to the last 3DLINE entity from a linked list of DXF 3DLINE entities.

Detailed Description

Header file for a DXF 3D line entity (3DLINE).

Author:
Copyright (C) 2015, 2016, 2017 by Bert Timmerman <bert.timmerman@xs4all.nl>.
Warning:
This entity type is used in DXF versions R10 and R11 only, it was obsoleted and removed in DXF version R12.
Version:
According to DXF R10.
According to DXF R11.
According to DXF R12 (forward compatibility).
According to DXF R13 (forward compatibility).
According to DXF R14 (forward compatibility).

Copyright Notices.


This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program; if not, write to:
Free Software Foundation, Inc.,
59 Temple Place,
Suite 330,
Boston,
MA 02111 USA.

Drawing eXchange Format (DXF) is a defacto industry standard for the exchange of drawing files between various Computer Aided Drafting programs.
DXF is an industry standard designed by Autodesk(TM).
For more details see http://www.autodesk.com .


Definition in file 3dline.h.


Typedef Documentation

typedef struct dxf_3dline_struct Dxf3dline

DXF definition of an AutoCAD line entity.


Function Documentation

Dxf3dline* dxf_3dline_new ( )

Allocate memory for a DXF 3DLINE entity.

Fill the memory contents with zeros.

Returns:
NULL when no memory was allocated, a pointer to the allocated memory when succesful.

Definition at line 56 of file 3dline.c.

References _, DXF_DEBUG_BEGIN, and DXF_DEBUG_END.

Referenced by dxf_3dline_init(), and dxf_3dline_read().

Dxf3dline* dxf_3dline_init ( Dxf3dline line)

Allocate memory and initialize data fields in a DXF 3DLINE entity.

Returns:
NULL when no memory was allocated, a pointer to the allocated memory when succesful.
Parameters:
linea pointer to a DXF 3DLINE entity.

Definition at line 94 of file 3dline.c.

References _, dxf_3dline_get_binary_graphics_data(), dxf_3dline_get_p0(), dxf_3dline_get_p1(), dxf_3dline_new(), dxf_3dline_set_binary_graphics_data(), dxf_3dline_set_color(), dxf_3dline_set_color_name(), dxf_3dline_set_color_value(), dxf_3dline_set_dictionary_owner_hard(), dxf_3dline_set_dictionary_owner_soft(), dxf_3dline_set_elevation(), dxf_3dline_set_extr_x0(), dxf_3dline_set_extr_y0(), dxf_3dline_set_extr_z0(), dxf_3dline_set_graphics_data_size(), dxf_3dline_set_id_code(), dxf_3dline_set_layer(), dxf_3dline_set_linetype(), dxf_3dline_set_linetype_scale(), dxf_3dline_set_lineweight(), dxf_3dline_set_material(), dxf_3dline_set_next(), dxf_3dline_set_p0(), dxf_3dline_set_p1(), dxf_3dline_set_paperspace(), dxf_3dline_set_plot_style_name(), dxf_3dline_set_shadow_mode(), dxf_3dline_set_thickness(), dxf_3dline_set_transparency(), dxf_3dline_set_visibility(), dxf_3dline_set_x0(), dxf_3dline_set_x1(), dxf_3dline_set_y0(), dxf_3dline_set_y1(), dxf_3dline_set_z0(), dxf_3dline_set_z1(), dxf_binary_graphics_data_init(), dxf_binary_graphics_data_new(), DXF_COLOR_BYLAYER, DXF_DEBUG_BEGIN, DXF_DEBUG_END, DXF_DEFAULT_LAYER, DXF_DEFAULT_LINETYPE, DXF_DEFAULT_LINETYPE_SCALE, DXF_DEFAULT_VISIBILITY, DXF_MODELSPACE, dxf_point_init(), and dxf_point_new().

Referenced by dxf_3dline_create_from_points(), and dxf_3dline_read().

Here is the call graph for this function:

Dxf3dline* dxf_3dline_read ( DxfFile fp,
Dxf3dline line 
)

Read data from a DXF file into a DXF 3DLINE entity.

The last line read from file contained the string "3DLINE".
Now follows some data for the 3DLINE, to be terminated with a " 0" string announcing the following entity, or the end of the ENTITY section marker ENDSEC.
While parsing the DXF file store data in line.

Returns:
a pointer to line.
Parameters:
fpa DXF file pointer to an input file (or device).
linea pointer to a DXF 3DLINE entity.

Definition at line 172 of file 3dline.c.

References _, dxf_3dline_struct::binary_graphics_data, dxf_3dline_struct::color, dxf_3dline_struct::color_name, dxf_3dline_struct::color_value, dxf_binary_graphics_data_struct::data_line, dxf_3dline_struct::dictionary_owner_hard, dxf_3dline_struct::dictionary_owner_soft, dxf_3dline_init(), dxf_3dline_new(), dxf_binary_graphics_data_init(), DXF_DEBUG_BEGIN, DXF_DEBUG_END, DXF_DEFAULT_LAYER, DXF_DEFAULT_LINETYPE, dxf_3dline_struct::elevation, dxf_3dline_struct::extr_x0, dxf_3dline_struct::extr_y0, dxf_3dline_struct::extr_z0, dxf_file_struct::filename, dxf_file_struct::fp, dxf_3dline_struct::graphics_data_size, dxf_3dline_struct::id_code, dxf_3dline_struct::layer, dxf_file_struct::line_number, dxf_3dline_struct::linetype, dxf_3dline_struct::linetype_scale, dxf_3dline_struct::lineweight, dxf_3dline_struct::material, dxf_binary_graphics_data_struct::next, dxf_3dline_struct::p0, dxf_3dline_struct::p1, dxf_3dline_struct::paperspace, dxf_3dline_struct::plot_style_name, dxf_3dline_struct::shadow_mode, dxf_3dline_struct::thickness, dxf_3dline_struct::transparency, dxf_3dline_struct::visibility, dxf_point_struct::x0, dxf_point_struct::y0, and dxf_point_struct::z0.

Here is the call graph for this function:

int dxf_3dline_write ( DxfFile fp,
Dxf3dline line 
)

Write DXF output to a file (or a device) for a DXF 3DLINE entity.

Returns:
EXIT_SUCCESS when done, or EXIT_FAILURE when an error occured.
Note:
For DXF version R12 and later, a DXF LINE entity is written to file (or device).

Todo:
for version R14.
Implementing the start of application-defined group "{application_name", with Group code 102.
For example: "{ACAD_REACTORS" indicates the start of the AutoCAD persistent reactors group.

application-defined codes: Group codes and values within the 102 groups are application defined (optional).

End of group, "}" (optional), with Group code 102.

Parameters:
fpa DXF file pointer to an output file (or device).
linea pointer to a DXF 3DLINE entity.

Definition at line 484 of file 3dline.c.

References _, dxf_file_struct::acad_version_number, AutoCAD_11, AutoCAD_12, AutoCAD_13, AutoCAD_14, AutoCAD_2000, AutoCAD_2002, AutoCAD_2004, AutoCAD_2008, AutoCAD_2009, dxf_3dline_get_binary_graphics_data(), dxf_3dline_get_color(), dxf_3dline_get_color_name(), dxf_3dline_get_color_value(), dxf_3dline_get_dictionary_owner_hard(), dxf_3dline_get_dictionary_owner_soft(), dxf_3dline_get_elevation(), dxf_3dline_get_extr_x0(), dxf_3dline_get_extr_y0(), dxf_3dline_get_extr_z0(), dxf_3dline_get_graphics_data_size(), dxf_3dline_get_id_code(), dxf_3dline_get_layer(), dxf_3dline_get_linetype(), dxf_3dline_get_linetype_scale(), dxf_3dline_get_lineweight(), dxf_3dline_get_material(), dxf_3dline_get_paperspace(), dxf_3dline_get_plot_style_name(), dxf_3dline_get_shadow_mode(), dxf_3dline_get_thickness(), dxf_3dline_get_transparency(), dxf_3dline_get_visibility(), dxf_3dline_get_x0(), dxf_3dline_get_x1(), dxf_3dline_get_y0(), dxf_3dline_get_y1(), dxf_3dline_get_z0(), dxf_3dline_get_z1(), dxf_3dline_set_layer(), dxf_3dline_set_linetype(), dxf_binary_graphics_data_get_data_line(), dxf_binary_graphics_data_get_next(), DXF_COLOR_BYLAYER, DXF_DEBUG_BEGIN, DXF_DEBUG_END, DXF_DEFAULT_LAYER, DXF_DEFAULT_LINETYPE, dxf_entity_skip(), DXF_FLATLAND, DXF_PAPERSPACE, and dxf_file_struct::fp.

Here is the call graph for this function:

int dxf_3dline_free ( Dxf3dline line)

Free the allocated memory for a DXF 3DLINE entity and all it's data fields.

Returns:
EXIT_SUCCESS when done, or EXIT_FAILURE when an error occurred.
Parameters:
linea pointer to the memory occupied by the DXF 3DLINE entity.

Definition at line 695 of file 3dline.c.

References _, dxf_3dline_get_binary_graphics_data(), dxf_3dline_get_color_name(), dxf_3dline_get_dictionary_owner_hard(), dxf_3dline_get_dictionary_owner_soft(), dxf_3dline_get_layer(), dxf_3dline_get_linetype(), dxf_3dline_get_material(), dxf_3dline_get_p0(), dxf_3dline_get_p1(), dxf_3dline_get_plot_style_name(), dxf_binary_graphics_data_free_chain(), DXF_DEBUG_BEGIN, DXF_DEBUG_END, dxf_point_free(), and dxf_3dline_struct::next.

Referenced by dxf_3dline_free_chain().

Here is the call graph for this function:

void dxf_3dline_free_chain ( Dxf3dline lines)

Free the allocated memory for a chain of DXF 3DLINE entities and all their data fields.

Parameters:
linesa pointer to the chain of DXF 3DLINE entities.

Definition at line 743 of file 3dline.c.

References _, dxf_3dline_free(), DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_3dline_struct::next.

Here is the call graph for this function:

int dxf_3dline_get_id_code ( Dxf3dline line)

Get the ID code from a DXF 3DLINE entity.

Returns:
ID code.
Parameters:
linea pointer to a DXF 3DLINE entity.

Definition at line 776 of file 3dline.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_3dline_struct::id_code.

Referenced by dxf_3dline_write().

Dxf3dline* dxf_3dline_set_id_code ( Dxf3dline line,
int  id_code 
)

Set the ID code for a DXF 3DLINE entity.

Parameters:
linea pointer to a DXF 3DLINE entity.
id_codeIdentification number for the entity.
This is to be an unique (sequential) number in the DXF file.

Definition at line 811 of file 3dline.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_3dline_struct::id_code.

Referenced by dxf_3dline_init().

char* dxf_3dline_get_linetype ( Dxf3dline line)

Get the linetype from a DXF 3DLINE entity.

Returns:
linetype when sucessful, NULL when an error occurred.
Parameters:
linea pointer to a DXF 3DLINE entity.

Definition at line 853 of file 3dline.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_3dline_struct::linetype.

Referenced by dxf_3dline_free(), and dxf_3dline_write().

Dxf3dline* dxf_3dline_set_linetype ( Dxf3dline line,
char *  linetype 
)

Set the linetype for a DXF 3DLINE entity.

Parameters:
linea pointer to a DXF 3DLINE entity.
linetypea string containing the linetype for the entity.

Definition at line 888 of file 3dline.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_3dline_struct::linetype.

Referenced by dxf_3dline_init(), and dxf_3dline_write().

char* dxf_3dline_get_layer ( Dxf3dline line)

Get the layer from a DXF 3DLINE entity.

Returns:
layer when sucessful, NULL when an error occurred.
Parameters:
linea pointer to a DXF 3DLINE entity.

Definition at line 928 of file 3dline.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_3dline_struct::layer.

Referenced by dxf_3dline_free(), and dxf_3dline_write().

Dxf3dline* dxf_3dline_set_layer ( Dxf3dline line,
char *  layer 
)

Set the layer for a DXF 3DLINE entity.

Parameters:
linea pointer to a DXF 3DLINE entity.
layera string containing the layer for the entity.

Definition at line 963 of file 3dline.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_3dline_struct::layer.

Referenced by dxf_3dline_init(), and dxf_3dline_write().

double dxf_3dline_get_elevation ( Dxf3dline line)

Get the elevation from a DXF 3DLINE entity.

Returns:
elevation.
Parameters:
linea pointer to a DXF 3DLINE entity.

Definition at line 1003 of file 3dline.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_3dline_struct::elevation.

Referenced by dxf_3dline_write().

Dxf3dline* dxf_3dline_set_elevation ( Dxf3dline line,
double  elevation 
)

Set the elevation for a DXF 3DLINE entity.

Parameters:
linea pointer to a DXF 3DLINE entity.
elevationthe elevation to be set for the entity.

Definition at line 1031 of file 3dline.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_3dline_struct::elevation.

Referenced by dxf_3dline_init().

double dxf_3dline_get_thickness ( Dxf3dline line)

Get the thickness from a DXF 3DLINE entity.

Returns:
thickness.
Parameters:
linea pointer to a DXF 3DLINE entity.

Definition at line 1064 of file 3dline.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_3dline_struct::thickness.

Referenced by dxf_3dline_write().

Dxf3dline* dxf_3dline_set_thickness ( Dxf3dline line,
double  thickness 
)

Set the thickness for a DXF 3DLINE entity.

Parameters:
linea pointer to a DXF 3DLINE entity.
thicknessthe thickness to be set for the entity.

Definition at line 1099 of file 3dline.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_3dline_struct::thickness.

Referenced by dxf_3dline_init().

double dxf_3dline_get_linetype_scale ( Dxf3dline line)

Get the linetype scale from a DXF 3DLINE entity.

Returns:
linetype scale.
Note:
The linetype scale was added in DXF R13 and is included for forward compatibility.
Parameters:
linea pointer to a DXF 3DLINE entity.

Definition at line 1142 of file 3dline.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_3dline_struct::linetype_scale.

Referenced by dxf_3dline_write().

Dxf3dline* dxf_3dline_set_linetype_scale ( Dxf3dline line,
double  linetype_scale 
)

Set the linetype scale for a DXF 3DLINE entity.

Note:
The linetype scale was added in DXF R13 and is included for forward compatibility.
Parameters:
linea pointer to a DXF 3DLINE entity.
linetype_scalethe linetype scale to be set for the entity.

Definition at line 1180 of file 3dline.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_3dline_struct::linetype_scale.

Referenced by dxf_3dline_init().

int16_t dxf_3dline_get_visibility ( Dxf3dline line)

Get the visibility from a DXF 3DLINE entity.

Returns:
visibility.
Note:
The visibility was added in DXF R13 and is included for forward compatibility.
Parameters:
linea pointer to a DXF 3DLINE entity.

Definition at line 1223 of file 3dline.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_3dline_struct::visibility.

Referenced by dxf_3dline_write().

Dxf3dline* dxf_3dline_set_visibility ( Dxf3dline line,
int16_t  visibility 
)

Set the visibility for a DXF 3DLINE entity.

Note:
The visibility was added in DXF R13 and is included for forward compatibility.
Parameters:
linea pointer to a DXF 3DLINE entity.
visibilitythe visibility to be set for the entity.

Definition at line 1268 of file 3dline.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_3dline_struct::visibility.

Referenced by dxf_3dline_init().

int dxf_3dline_get_color ( Dxf3dline line)

Get the color from a DXF 3DLINE entity.

Returns:
color.
Parameters:
linea pointer to a DXF 3DLINE entity.

Definition at line 1315 of file 3dline.c.

References _, dxf_3dline_struct::color, DXF_DEBUG_BEGIN, and DXF_DEBUG_END.

Referenced by dxf_3dline_write().

Dxf3dline* dxf_3dline_set_color ( Dxf3dline line,
int  color 
)

Set the color for a DXF 3DLINE entity.

Parameters:
linea pointer to a DXF 3DLINE entity.
colorthe color to be set for the entity.

Definition at line 1349 of file 3dline.c.

References _, dxf_3dline_struct::color, DXF_DEBUG_BEGIN, and DXF_DEBUG_END.

Referenced by dxf_3dline_init().

int dxf_3dline_get_paperspace ( Dxf3dline line)

Get the paperspace flag value from a DXF 3DLINE entity.

Returns:
paperspace flag value.
Parameters:
linea pointer to a DXF 3DLINE entity.

Definition at line 1388 of file 3dline.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_3dline_struct::paperspace.

Referenced by dxf_3dline_write().

Dxf3dline* dxf_3dline_set_paperspace ( Dxf3dline line,
int  paperspace 
)

Set the paperspace flag for a DXF 3DLINE entity.

Note:
the paperpspace flag was added in DXF R13 and is included for forward compatibility.
Parameters:
linea pointer to a DXF 3DLINE entity.
paperspacethe paperspace flag value to be set for the entity.

Definition at line 1431 of file 3dline.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_3dline_struct::paperspace.

Referenced by dxf_3dline_init().

int dxf_3dline_get_graphics_data_size ( Dxf3dline line)

Get the graphics_data_size value from a DXF 3DLINE entity.

Returns:
graphics_data_size value when successful, or EXIT_FAILURE when an error occurred.
Parameters:
linea pointer to a DXF 3DLINE entity.

Definition at line 1480 of file 3dline.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_3dline_struct::graphics_data_size.

Referenced by dxf_3dline_write().

Dxf3dline* dxf_3dline_set_graphics_data_size ( Dxf3dline line,
int  graphics_data_size 
)

Set the graphics_data_size value for a DXF 3DLINE entity.

Returns:
a pointer to line when successful, or NULL when an error occurred.
Parameters:
linea pointer to a DXF 3DLINE entity.
graphics_data_sizethe graphics_data_size value to be set for the entity.

Definition at line 1524 of file 3dline.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_3dline_struct::graphics_data_size.

Referenced by dxf_3dline_init().

int16_t dxf_3dline_get_shadow_mode ( Dxf3dline line)

Get the shadow_mode from a DXF 3DLINE entity.

Returns:
shadow_mode when successful, or EXIT_FAILURE when an error occurred.
Parameters:
linea pointer to a DXF 3DLINE entity.

Definition at line 1573 of file 3dline.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_3dline_struct::shadow_mode.

Referenced by dxf_3dline_write().

Dxf3dline* dxf_3dline_set_shadow_mode ( Dxf3dline line,
int16_t  shadow_mode 
)

Set the shadow_mode for a DXF 3DLINE entity.

Returns:
a pointer to line when successful, or NULL when an error occurred.
Parameters:
linea pointer to a DXF 3DLINE entity.
shadow_modethe shadow mode to be set for the entity.

Definition at line 1618 of file 3dline.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_3dline_struct::shadow_mode.

Referenced by dxf_3dline_init().

DxfBinaryGraphicsData* dxf_3dline_get_binary_graphics_data ( Dxf3dline line)

Get the pointer to the binary graphics data from a DXF 3DLINE entity.

Returns:
pointer to the binary graphics data.
Warning:
No checks are performed on the returned pointer.
Parameters:
linea pointer to a DXF 3DLINE entity.

Definition at line 1668 of file 3dline.c.

References _, dxf_3dline_struct::binary_graphics_data, DXF_DEBUG_BEGIN, and DXF_DEBUG_END.

Referenced by dxf_3dline_free(), dxf_3dline_init(), and dxf_3dline_write().

Dxf3dline* dxf_3dline_set_binary_graphics_data ( Dxf3dline line,
DxfBinaryGraphicsData data 
)

Set the pointer to the binary_graphics_data for a DXF 3DLINE entity.

Returns:
a pointer to line when successful, or NULL when an error occurred.
Parameters:
linea pointer to a DXF 3DLINE entity.
dataa string containing the pointer to the binary_graphics_data for the entity.

Definition at line 1707 of file 3dline.c.

References _, dxf_3dline_struct::binary_graphics_data, DXF_DEBUG_BEGIN, and DXF_DEBUG_END.

Referenced by dxf_3dline_init().

char* dxf_3dline_get_dictionary_owner_soft ( Dxf3dline line)

Get the soft pointer to the dictionary owner from a DXF 3DLINE entity.

Returns:
soft pointer to the dictionary owner.
Warning:
No checks are performed on the returned pointer (string).
Parameters:
linea pointer to a DXF 3DLINE entity.

Definition at line 1751 of file 3dline.c.

References _, dxf_3dline_struct::dictionary_owner_soft, DXF_DEBUG_BEGIN, and DXF_DEBUG_END.

Referenced by dxf_3dline_free(), and dxf_3dline_write().

Dxf3dline* dxf_3dline_set_dictionary_owner_soft ( Dxf3dline line,
char *  dictionary_owner_soft 
)

Set the pointer to the dictionary_owner_soft for a DXF 3DLINE entity.

Parameters:
linea pointer to a DXF 3DLINE entity.
dictionary_owner_softa string containing the pointer to the dictionary_owner_soft for the entity.

Definition at line 1787 of file 3dline.c.

References _, dxf_3dline_struct::dictionary_owner_soft, DXF_DEBUG_BEGIN, and DXF_DEBUG_END.

Referenced by dxf_3dline_init().

char* dxf_3dline_get_material ( Dxf3dline line)

Get the pointer to the material from a DXF 3DLINE entity.

Returns:
a pointer to material when successful, or NULL when an error occurred.
Warning:
No checks are performed on the returned pointer.
Parameters:
linea pointer to a DXF 3DLINE entity.

Definition at line 1831 of file 3dline.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_3dline_struct::material.

Referenced by dxf_3dline_free(), and dxf_3dline_write().

Dxf3dline* dxf_3dline_set_material ( Dxf3dline line,
char *  material 
)

Set the pointer to the material for a DXF 3DLINE entity.

Returns:
a pointer to 3dline when successful, or NULL when an error occurred.
Parameters:
linea pointer to a DXF 3DLINE entity.
materiala string containing the pointer to the material for the entity.

Definition at line 1869 of file 3dline.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_3dline_struct::material.

Referenced by dxf_3dline_init().

char* dxf_3dline_get_dictionary_owner_hard ( Dxf3dline line)

Get the hard pointer to the dictionary owner from a DXF 3DLINE entity.

Returns:
hard pointer to the dictionary owner.
Warning:
No checks are performed on the returned pointer (string).
Parameters:
linea pointer to a DXF 3DLINE entity.

Definition at line 1913 of file 3dline.c.

References _, dxf_3dline_struct::dictionary_owner_hard, DXF_DEBUG_BEGIN, and DXF_DEBUG_END.

Referenced by dxf_3dline_free(), and dxf_3dline_write().

Dxf3dline* dxf_3dline_set_dictionary_owner_hard ( Dxf3dline line,
char *  dictionary_owner_hard 
)

Set the pointer to the dictionary_owner_hard for a DXF 3DLINE entity.

Parameters:
linea pointer to a DXF 3DLINE entity.
dictionary_owner_harda string containing the pointer to the dictionary_owner_hard for the entity.

Definition at line 1949 of file 3dline.c.

References _, dxf_3dline_struct::dictionary_owner_hard, DXF_DEBUG_BEGIN, and DXF_DEBUG_END.

Referenced by dxf_3dline_init().

int16_t dxf_3dline_get_lineweight ( Dxf3dline line)

Get the lineweight from a DXF 3DLINE entity.

Returns:
lineweight when successful, or EXIT_FAILURE when an error occurred.
Parameters:
linea pointer to a DXF 3DLINE entity.

Definition at line 1991 of file 3dline.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_3dline_struct::lineweight.

Referenced by dxf_3dline_write().

Dxf3dline* dxf_3dline_set_lineweight ( Dxf3dline line,
int16_t  lineweight 
)

Set the lineweight for a DXF 3DLINE entity.

Returns:
a pointer to line when successful, or NULL when an error occurred.
Parameters:
linea pointer to a DXF 3DLINE entity.
lineweightthe lineweight to be set for the entity.

Definition at line 2022 of file 3dline.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_3dline_struct::lineweight.

Referenced by dxf_3dline_init().

char* dxf_3dline_get_plot_style_name ( Dxf3dline line)

Get the plot_style_name from a DXF 3DLINE entity.

Returns:
plot_style_name when sucessful, or NULL when an error occurred.
Parameters:
linea pointer to a DXF 3DLINE entity.

Definition at line 2056 of file 3dline.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_3dline_struct::plot_style_name.

Referenced by dxf_3dline_free(), and dxf_3dline_write().

Dxf3dline* dxf_3dline_set_plot_style_name ( Dxf3dline line,
char *  plot_style_name 
)

Set the plot_style_name for a DXF 3DLINE entity.

Returns:
a pointer to line when successful, or NULL when an error occurred.
Parameters:
linea pointer to a DXF 3DLINE entity.
plot_style_namea string containing the plot_style_name for the entity.

Definition at line 2094 of file 3dline.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_3dline_struct::plot_style_name.

Referenced by dxf_3dline_init().

long dxf_3dline_get_color_value ( Dxf3dline line)

Get the color_value from a DXF 3DLINE entity.

Returns:
color_value when successful, or EXIT_FAILURE when an error occurred.
Parameters:
linea pointer to a DXF 3DLINE entity.

Definition at line 2136 of file 3dline.c.

References _, dxf_3dline_struct::color_value, DXF_DEBUG_BEGIN, and DXF_DEBUG_END.

Referenced by dxf_3dline_write().

Dxf3dline* dxf_3dline_set_color_value ( Dxf3dline line,
long  color_value 
)

Set the color_value for a DXF 3DLINE entity.

Returns:
a pointer to line when successful, or NULL when an error occurred.
Parameters:
linea pointer to a DXF 3DLINE entity.
color_valuethe color_value to be set for the entity.

Definition at line 2167 of file 3dline.c.

References _, dxf_3dline_struct::color_value, DXF_DEBUG_BEGIN, and DXF_DEBUG_END.

Referenced by dxf_3dline_init().

char* dxf_3dline_get_color_name ( Dxf3dline line)

Get the color_name from a DXF 3DLINE entity.

Returns:
color_name when sucessful, or NULL when an error occurred.
Parameters:
linea pointer to a DXF 3DLINE entity.

Definition at line 2201 of file 3dline.c.

References _, dxf_3dline_struct::color_name, DXF_DEBUG_BEGIN, and DXF_DEBUG_END.

Referenced by dxf_3dline_free(), and dxf_3dline_write().

Dxf3dline* dxf_3dline_set_color_name ( Dxf3dline line,
char *  color_name 
)

Set the color_name for a DXF 3DLINE entity.

Returns:
a pointer to line when successful, or NULL when an error occurred.
Parameters:
linea pointer to a DXF 3DLINE entity.
color_namea string containing the color_name for the entity.

Definition at line 2239 of file 3dline.c.

References _, dxf_3dline_struct::color_name, DXF_DEBUG_BEGIN, and DXF_DEBUG_END.

Referenced by dxf_3dline_init().

long dxf_3dline_get_transparency ( Dxf3dline line)

Get the transparency from a DXF 3DLINE entity.

Returns:
transparency when successful, or EXIT_FAILURE when an error occurred.
Parameters:
linea pointer to a DXF 3DLINE entity.

Definition at line 2281 of file 3dline.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_3dline_struct::transparency.

Referenced by dxf_3dline_write().

Dxf3dline* dxf_3dline_set_transparency ( Dxf3dline line,
long  transparency 
)

Set the transparency for a DXF 3DLINE entity.

Returns:
a pointer to line when successful, or NULL when an error occurred.
Parameters:
linea pointer to a DXF 3DLINE entity.
transparencythe transparency to be set for the entity.

Definition at line 2312 of file 3dline.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_3dline_struct::transparency.

Referenced by dxf_3dline_init().

DxfPoint* dxf_3dline_get_p0 ( Dxf3dline line)

Get the start point p0 of a DXF 3DLINE entity.

Returns:
the start point p0.
Parameters:
linea pointer to a DXF 3DLINE entity.

Definition at line 2345 of file 3dline.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_3dline_struct::p0.

Referenced by dxf_3dline_free(), and dxf_3dline_init().

Dxf3dline* dxf_3dline_set_p0 ( Dxf3dline line,
DxfPoint p0 
)

Set the start point of a DXF 3DLINE entity.

Returns:
a pointer to a DXF 3DLINE entity.
Parameters:
linea pointer to a DXF 3DLINE entity.
p0a pointer to a DXF POINT entity.

Definition at line 2382 of file 3dline.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_3dline_struct::p0.

Referenced by dxf_3dline_init().

double dxf_3dline_get_x0 ( Dxf3dline line)

Get the X-value of the start point of a DXF 3DLINE entity.

Returns:
the X-value of the start point.
Parameters:
linea pointer to a DXF 3DLINE entity.

Definition at line 2422 of file 3dline.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, dxf_3dline_struct::p0, and dxf_point_struct::x0.

Referenced by dxf_3dline_write().

Dxf3dline* dxf_3dline_set_x0 ( Dxf3dline line,
double  x0 
)

Set the X-value of the start point of a DXF 3DLINE entity.

Returns:
a pointer to a DXF 3DLINE entity.
Parameters:
linea pointer to a DXF 3DLINE entity.
x0the X-value of the start point of a DXF 3DLINE entity.

Definition at line 2460 of file 3dline.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, dxf_3dline_struct::p0, and dxf_point_struct::x0.

Referenced by dxf_3dline_init().

double dxf_3dline_get_y0 ( Dxf3dline line)

Get the Y-value of the start point of a DXF 3DLINE entity.

Returns:
the Y-value of the start point.
Parameters:
linea pointer to a DXF 3DLINE entity.

Definition at line 2501 of file 3dline.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, dxf_3dline_struct::p0, and dxf_point_struct::y0.

Referenced by dxf_3dline_write().

Dxf3dline* dxf_3dline_set_y0 ( Dxf3dline line,
double  y0 
)

Set the Y-value of the start point of a DXF 3DLINE entity.

Returns:
a pointer to a DXF 3DLINE entity.
Parameters:
linea pointer to a DXF 3DLINE entity.
y0the Y-value of the start point of a DXF 3DLINE entity.

Definition at line 2539 of file 3dline.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, dxf_3dline_struct::p0, and dxf_point_struct::y0.

Referenced by dxf_3dline_init().

double dxf_3dline_get_z0 ( Dxf3dline line)

Get the Z-value of the start point of a DXF 3DLINE entity.

Returns:
the Z-value of the start point.
Parameters:
linea pointer to a DXF 3DLINE entity.

Definition at line 2580 of file 3dline.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, dxf_3dline_struct::p0, and dxf_point_struct::z0.

Referenced by dxf_3dline_write().

Dxf3dline* dxf_3dline_set_z0 ( Dxf3dline line,
double  z0 
)

Set the Z-value of the start point of a DXF 3DLINE entity.

Returns:
a pointer to a DXF 3DLINE entity.
Parameters:
linea pointer to a DXF 3DLINE entity.
z0the Z-value of the start point of a DXF 3DLINE entity.

Definition at line 2618 of file 3dline.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, dxf_3dline_struct::p0, and dxf_point_struct::z0.

Referenced by dxf_3dline_init().

DxfPoint* dxf_3dline_get_p1 ( Dxf3dline line)

Get the end point p1 of a DXF 3DLINE entity.

Returns:
the end point p1.
Parameters:
linea pointer to a DXF 3DLINE entity.

Definition at line 2659 of file 3dline.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, dxf_3dline_struct::p0, dxf_3dline_struct::p1, dxf_point_struct::x0, dxf_point_struct::y0, and dxf_point_struct::z0.

Referenced by dxf_3dline_free(), and dxf_3dline_init().

Dxf3dline* dxf_3dline_set_p1 ( Dxf3dline line,
DxfPoint p1 
)

Set the end point of a DXF 3DLINE entity.

Returns:
a pointer to a DXF 3DLINE entity.
Parameters:
linea pointer to a DXF 3DLINE entity.
p1a pointer to a DXF POINT entity.

Definition at line 2704 of file 3dline.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_3dline_struct::p1.

Referenced by dxf_3dline_init().

double dxf_3dline_get_x1 ( Dxf3dline line)

Get the X-value of the end point of a DXF 3DLINE entity.

Returns:
the X-value of the end point.
Parameters:
linea pointer to a DXF 3DLINE entity.

Definition at line 2744 of file 3dline.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, dxf_3dline_struct::p1, and dxf_point_struct::x0.

Referenced by dxf_3dline_write().

Dxf3dline* dxf_3dline_set_x1 ( Dxf3dline line,
double  x1 
)

Set the X-value of the end point of a DXF 3DLINE entity.

Returns:
a pointer to a DXF 3DLINE entity.
Parameters:
linea pointer to a DXF 3DLINE entity.
x1the X-value of the end point of a DXF 3DLINE entity.

Definition at line 2782 of file 3dline.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, dxf_3dline_struct::p1, and dxf_point_struct::x0.

Referenced by dxf_3dline_init().

double dxf_3dline_get_y1 ( Dxf3dline line)

Get the Y-value of the end point of a DXF 3DLINE entity.

Returns:
the Y-value of the end point.
Parameters:
linea pointer to a DXF 3DLINE entity.

Definition at line 2823 of file 3dline.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, dxf_3dline_struct::p1, and dxf_point_struct::y0.

Referenced by dxf_3dline_write().

Dxf3dline* dxf_3dline_set_y1 ( Dxf3dline line,
double  y1 
)

Set the Y-value of the end point of a DXF 3DLINE entity.

Returns:
a pointer to a DXF 3DLINE entity.
Parameters:
linea pointer to a DXF 3DLINE entity.
y1the Y-value of the end point of a DXF 3DLINE entity.

Definition at line 2861 of file 3dline.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, dxf_3dline_struct::p1, and dxf_point_struct::y0.

Referenced by dxf_3dline_init().

double dxf_3dline_get_z1 ( Dxf3dline line)

Get the Z-value of the end point of a DXF 3DLINE entity.

Returns:
the Z-value of the end point.
Parameters:
linea pointer to a DXF 3DLINE entity.

Definition at line 2902 of file 3dline.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, dxf_3dline_struct::p1, and dxf_point_struct::z0.

Referenced by dxf_3dline_write().

Dxf3dline* dxf_3dline_set_z1 ( Dxf3dline line,
double  z1 
)

Set the Z-value of the end point of a DXF 3DLINE entity.

Returns:
a pointer to a DXF 3DLINE entity.
Parameters:
linea pointer to a DXF 3DLINE entity.
z1the Z-value of the end point of a DXF 3DLINE entity.

Definition at line 2940 of file 3dline.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, dxf_3dline_struct::p1, and dxf_point_struct::z0.

Referenced by dxf_3dline_init().

double dxf_3dline_get_extr_x0 ( Dxf3dline line)

Get the X-value of the extrusion vector of a DXF 3DLINE entity.

Returns:
the X-value of the extrusion vector.
Parameters:
linea pointer to a DXF 3DLINE entity.

Definition at line 2982 of file 3dline.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_3dline_struct::extr_x0.

Referenced by dxf_3dline_write().

Dxf3dline* dxf_3dline_set_extr_x0 ( Dxf3dline line,
double  extr_x0 
)

Set the X-value of the extrusion vector of a DXF 3DLINE entity.

Returns:
a pointer to a DXF 3DLINE entity when successful, NULL when an error occurred.
Parameters:
linea pointer to a DXF 3DLINE entity.
extr_x0the X-value of the extrusion vector of a DXF 3DLINE entity.

Definition at line 3015 of file 3dline.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_3dline_struct::extr_x0.

Referenced by dxf_3dline_init().

double dxf_3dline_get_extr_y0 ( Dxf3dline line)

Get the Y-value of the extrusion vector of a DXF 3DLINE entity.

Returns:
the Y-value of the extrusion vector.
Parameters:
linea pointer to a DXF 3DLINE entity.

Definition at line 3050 of file 3dline.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_3dline_struct::extr_y0.

Referenced by dxf_3dline_write().

Dxf3dline* dxf_3dline_set_extr_y0 ( Dxf3dline line,
double  extr_y0 
)

Set the Y-value of the extrusion vector of a DXF 3DLINE entity.

Returns:
a pointer to a DXF 3DLINE entity when successful, NULL when an error occurred.
Parameters:
linea pointer to a DXF 3DLINE entity.
extr_y0the Y-value of the extrusion vector of a DXF 3DLINE entity.

Definition at line 3083 of file 3dline.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_3dline_struct::extr_y0.

Referenced by dxf_3dline_init().

double dxf_3dline_get_extr_z0 ( Dxf3dline line)

Get the Z-value of the extrusion vector of a DXF 3DLINE entity.

Returns:
the Z-value of the extrusion vector.
Parameters:
linea pointer to a DXF 3DLINE entity.

Definition at line 3118 of file 3dline.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_3dline_struct::extr_z0.

Referenced by dxf_3dline_write().

Dxf3dline* dxf_3dline_set_extr_z0 ( Dxf3dline line,
double  extr_z0 
)

Set the Z-value of the extrusion vector of a DXF 3DLINE entity.

Returns:
a pointer to a DXF 3DLINE entity when successful, NULL when an error occurred.
Parameters:
linea pointer to a DXF 3DLINE entity.
extr_z0the Z-value of the extrusion vector of a DXF 3DLINE entity.

Definition at line 3151 of file 3dline.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_3dline_struct::extr_z0.

Referenced by dxf_3dline_init().

DxfPoint* dxf_3dline_get_extrusion_vector_as_point ( Dxf3dline line)

Get the extrusion vector as a DXF POINT entity from a DXF 3DLINE entity.

Returns:
a DXF POINT containing the extrusion coordinates.
Warning:
No other members are copied into the DXF POINT.
Parameters:
linea pointer to a DXF 3DLINE entity.

Definition at line 3188 of file 3dline.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, dxf_point_init(), dxf_3dline_struct::extr_x0, dxf_3dline_struct::extr_y0, dxf_3dline_struct::extr_z0, dxf_3dline_struct::p0, dxf_3dline_struct::p1, dxf_point_struct::x0, dxf_point_struct::y0, and dxf_point_struct::z0.

Here is the call graph for this function:

Dxf3dline* dxf_3dline_set_extrusion_vector_from_point ( Dxf3dline line,
DxfPoint point 
)

Set the extrusion vector from a DXF POINT for a DXF 3DLINE entity.

Parameters:
linea pointer to a DXF 3DLINE entity.
pointa pointer to a DXF POINT entity.

Definition at line 3239 of file 3dline.c.

References _, DEBUG, DXF_DEBUG_BEGIN, DXF_DEBUG_END, dxf_3dline_struct::extr_x0, dxf_3dline_struct::extr_y0, dxf_3dline_struct::extr_z0, dxf_point_struct::x0, dxf_point_struct::y0, and dxf_point_struct::z0.

Dxf3dline* dxf_3dline_set_extrusion_vector ( Dxf3dline line,
double  extr_x0,
double  extr_y0,
double  extr_z0 
)

Set the extrusion vector for a DXF 3DLINE entity.

Parameters:
linea pointer to a DXF 3DLINE entity.
extr_x0X-value of the extrusion direction.
extr_y0Y-value of the extrusion direction.
extr_z0Z-value of the extrusion direction.

Definition at line 3279 of file 3dline.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, dxf_3dline_struct::extr_x0, dxf_3dline_struct::extr_y0, and dxf_3dline_struct::extr_z0.

DxfPoint* dxf_3dline_get_mid_point ( Dxf3dline line,
int  id_code,
int  inheritance 
)

Get the mid point of a DXF 3DLINE entity.

Returns:
the mid point.
Parameters:
linea pointer to a DXF 3DLINE entity.
id_codeIdentification number for the entity.
This is to be an unique (sequential) number in the DXF file.
inheritanceInherit layer, linetype, color and other relevant properties from either:

  1. Default (as initialised).
  2. 3DLINE.

Definition at line 3318 of file 3dline.c.

References _, dxf_3dline_struct::color, dxf_3dline_struct::dictionary_owner_hard, dxf_3dline_struct::dictionary_owner_soft, DXF_DEBUG_BEGIN, DXF_DEBUG_END, dxf_point_init(), dxf_3dline_struct::id_code, dxf_3dline_struct::layer, dxf_3dline_struct::linetype, dxf_3dline_struct::linetype_scale, dxf_3dline_struct::p0, dxf_3dline_struct::p1, dxf_3dline_struct::paperspace, dxf_3dline_struct::thickness, dxf_3dline_struct::visibility, dxf_point_struct::x0, dxf_point_struct::y0, and dxf_point_struct::z0.

Here is the call graph for this function:

double dxf_3dline_get_length ( Dxf3dline line)

Get the length of a DXF 3DLINE (straight distance between start point and end point).

Returns:
the length of the line in drawing units.
Parameters:
linea pointer to a DXF 3DLINE entity.

Definition at line 3426 of file 3dline.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, dxf_3dline_struct::p0, dxf_3dline_struct::p1, dxf_point_struct::x0, dxf_point_struct::y0, and dxf_point_struct::z0.

Dxf3dline* dxf_3dline_create_from_points ( DxfPoint p0,
DxfPoint p1,
int  id_code,
int  inheritance 
)

Create a DXF 3DLINE by means of two DXF POINT entities.

Returns:
NULL when failed, a pointer to the DXF 3DLINE entity when successful.
Warning:
Both DXF POINT entities need to be freed by the caller.
Parameters:
p0a pointer to a DXF POINT entity.
p1a pointer to a DXF POINT entity.
id_codeIdentification number for the entity.
This is to be an unique (sequential) number in the DXF file.
inheritanceInherit layer, linetype, color and other relevant properties from either:

  1. Default (as initialised).
  2. Point 0.
  3. Point 1.

Definition at line 3473 of file 3dline.c.

References _, dxf_point_struct::color, dxf_point_struct::dictionary_owner_hard, dxf_point_struct::dictionary_owner_soft, dxf_3dline_init(), DXF_DEBUG_BEGIN, DXF_DEBUG_END, dxf_3dline_struct::id_code, dxf_point_struct::layer, dxf_point_struct::linetype, dxf_point_struct::linetype_scale, dxf_point_struct::paperspace, dxf_point_struct::thickness, dxf_point_struct::visibility, dxf_point_struct::x0, dxf_point_struct::y0, and dxf_point_struct::z0.

Here is the call graph for this function:

Dxf3dline* dxf_3dline_get_next ( Dxf3dline line)

Get the pointer to the next 3DLINE entity from a DXF 3DLINE entity.

Returns:
pointer to the next 3DLINE entity.
Warning:
No checks are performed on the returned pointer.
Parameters:
linea pointer to a DXF 3DLINE entity.

Definition at line 3617 of file 3dline.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_3dline_struct::next.

Dxf3dline* dxf_3dline_set_next ( Dxf3dline line,
Dxf3dline next 
)

Set the pointer to the next 3DLINE for a DXF 3DLINE entity.

Parameters:
linea pointer to a DXF 3DLINE entity.
nexta pointer to the next 3DLINE for the entity.

Definition at line 3653 of file 3dline.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_3dline_struct::next.

Referenced by dxf_3dline_init().

Dxf3dline* dxf_3dline_get_last ( Dxf3dline line)

Get the pointer to the last 3DLINE entity from a linked list of DXF 3DLINE entities.

Returns:
pointer to the last 3DLINE entity.
Warning:
No checks are performed on the returned pointer.
Parameters:
linea pointer to a DXF 3DLINE entity.

Definition at line 3696 of file 3dline.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_3dline_struct::next.