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

hatch.c File Reference

Functions for a DXF hatch entity (HATCH). More...

#include "hatch.h"
Include dependency graph for hatch.c:

Go to the source code of this file.

Functions

DxfHatchdxf_hatch_new ()
 Allocate memory for a DXF HATCH.
DxfHatchdxf_hatch_init (DxfHatch *hatch)
 Allocate memory and initialize data fields in a DXF HATCH entity.
int dxf_hatch_write (DxfFile *fp, DxfHatch *hatch)
 Write DXF output to a file for a hatch entity (HATCH).
int dxf_hatch_free (DxfHatch *hatch)
 Free the allocated memory for a DXF HATCH and all it's data fields.
void dxf_hatch_free_chain (DxfHatch *hatches)
 Free the allocated memory for a chain of DXF HATCH entities and all their data fields.
int dxf_hatch_get_id_code (DxfHatch *hatch)
 Get the ID code from a DXF HATCH.
DxfHatchdxf_hatch_set_id_code (DxfHatch *hatch, int id_code)
 Set the ID code for a DXF HATCH.
char * dxf_hatch_get_linetype (DxfHatch *hatch)
 Get the linetype from a DXF HATCH entity.
DxfHatchdxf_hatch_set_linetype (DxfHatch *hatch, char *linetype)
 Set the linetype for a DXF HATCH entity.
char * dxf_hatch_get_layer (DxfHatch *hatch)
 Get the layer from a DXF HATCH entity.
DxfHatchdxf_hatch_set_layer (DxfHatch *hatch, char *layer)
 Set the layer for a DXF HATCH entity.
double dxf_hatch_get_elevation (DxfHatch *hatch)
 Get the elevation from a DXF HATCH entity.
DxfHatchdxf_hatch_set_elevation (DxfHatch *hatch, double elevation)
 Set the elevation for a DXF HATCH entity.
double dxf_hatch_get_thickness (DxfHatch *hatch)
 Get the thickness from a DXF HATCH entity.
DxfHatchdxf_hatch_set_thickness (DxfHatch *hatch, double thickness)
 Set the thickness for a DXF HATCH entity.
double dxf_hatch_get_linetype_scale (DxfHatch *hatch)
 Get the linetype scale from a DXF HATCH entity.
DxfHatchdxf_hatch_set_linetype_scale (DxfHatch *hatch, double linetype_scale)
 Set the linetype scale for a DXF HATCH entity.
int16_t dxf_hatch_get_visibility (DxfHatch *hatch)
 Get the visibility from a DXF HATCH entity.
DxfHatchdxf_hatch_set_visibility (DxfHatch *hatch, int16_t visibility)
 Set the visibility for a DXF HATCH entity.
int dxf_hatch_get_color (DxfHatch *hatch)
 Get the color from a DXF HATCH entity.
DxfHatchdxf_hatch_set_color (DxfHatch *hatch, int color)
 Set the color for a DXF HATCH entity.
int dxf_hatch_get_paperspace (DxfHatch *hatch)
 Get the paperspace flag value from a DXF HATCH entity.
DxfHatchdxf_hatch_set_paperspace (DxfHatch *hatch, int paperspace)
 Set the paperspace flag for a DXF HATCH entity.
int dxf_hatch_get_graphics_data_size (DxfHatch *hatch)
 Get the graphics data size value from a DXF HATCH entity.
DxfHatchdxf_hatch_set_graphics_data_size (DxfHatch *hatch, int graphics_data_size)
 Set the graphics data size value for a DXF HATCH entity.
DxfBinaryGraphicsDatadxf_hatch_get_binary_graphics_data (DxfHatch *hatch)
 Get the pointer to the binary graphics data from a DXF HATCH entity.
DxfHatchdxf_hatch_set_binary_graphics_data (DxfHatch *hatch, DxfBinaryGraphicsData *data)
 Set the pointer to the binary_graphics_data for a DXF HATCH entity.
char * dxf_hatch_get_dictionary_owner_soft (DxfHatch *hatch)
 Get the soft pointer to the dictionary owner from a DXF HATCH entity.
DxfHatchdxf_hatch_set_dictionary_owner_soft (DxfHatch *hatch, char *dictionary_owner_soft)
 Set the pointer to the dictionary_owner_soft for a DXF HATCH entity.
char * dxf_hatch_get_dictionary_owner_hard (DxfHatch *hatch)
 Get the hard pointer to the dictionary owner from a DXF HATCH entity.
DxfHatchdxf_hatch_set_dictionary_owner_hard (DxfHatch *hatch, char *dictionary_owner_hard)
 Set the pointer to the dictionary_owner_hard for a DXF HATCH entity.
char * dxf_hatch_get_pattern_name (DxfHatch *hatch)
 Get the pattern name from a DXF HATCH entity.
DxfHatchdxf_hatch_set_pattern_name (DxfHatch *hatch, char *pattern_name)
 Set the pattern name for a DXF HATCH entity.
double dxf_hatch_get_x0 (DxfHatch *hatch)
 Get the base point X-value from a DXF HATCH.
DxfHatchdxf_hatch_set_x0 (DxfHatch *hatch, double x0)
 Set the base point X-value for a DXF HATCH.
double dxf_hatch_get_y0 (DxfHatch *hatch)
 Get the base point Y-value from a DXF HATCH.
DxfHatchdxf_hatch_set_y0 (DxfHatch *hatch, double y0)
 Set the base point Y-value for a DXF HATCH.
double dxf_hatch_get_z0 (DxfHatch *hatch)
 Get the base point Z-value from a DXF HATCH.
DxfHatchdxf_hatch_set_z0 (DxfHatch *hatch, double z0)
 Set the base point Z-value for a DXF HATCH.
double dxf_hatch_get_pattern_scale (DxfHatch *hatch)
 Get the pattern scale from a DXF HATCH.
DxfHatchdxf_hatch_set_pattern_scale (DxfHatch *hatch, double pattern_scale)
 Set the pattern scale for a DXF HATCH.
double dxf_hatch_get_pixel_size (DxfHatch *hatch)
 Get the pixel size from a DXF HATCH.
DxfHatchdxf_hatch_set_pixel_size (DxfHatch *hatch, double pixel_size)
 Set the pixel size for a DXF HATCH.
double dxf_hatch_get_pattern_angle (DxfHatch *hatch)
 Get the pattern angle from a DXF HATCH.
DxfHatchdxf_hatch_set_pattern_angle (DxfHatch *hatch, double pattern_angle)
 Set the pattern angle for a DXF HATCH.
int dxf_hatch_get_solid_fill (DxfHatch *hatch)
 Get the solid fill flag value from a DXF HATCH.
DxfHatchdxf_hatch_set_solid_fill (DxfHatch *hatch, int solid_fill)
 Set the solid fill flag value for a DXF HATCH.
int dxf_hatch_get_associative (DxfHatch *hatch)
 Get the associative flag value from a DXF HATCH.
DxfHatchdxf_hatch_set_associative (DxfHatch *hatch, int associative)
 Set the associative flag value for a DXF HATCH.
int dxf_hatch_get_hatch_style (DxfHatch *hatch)
 Get the hatch_style flag value from a DXF HATCH.
DxfHatchdxf_hatch_set_hatch_style (DxfHatch *hatch, int hatch_style)
 Set the hatch_style flag value for a DXF HATCH.
int dxf_hatch_get_hatch_pattern_type (DxfHatch *hatch)
 Get the hatch_pattern_type flag value from a DXF HATCH.
DxfHatchdxf_hatch_set_hatch_pattern_type (DxfHatch *hatch, int hatch_pattern_type)
 Set the hatch_pattern_type flag value for a DXF HATCH.
int dxf_hatch_get_pattern_double (DxfHatch *hatch)
 Get the pattern_double flag value from a DXF HATCH.
DxfHatchdxf_hatch_set_pattern_double (DxfHatch *hatch, int pattern_double)
 Set the pattern_double flag value for a DXF HATCH.
double dxf_hatch_get_extr_x0 (DxfHatch *hatch)
 Get the X-value of the extrusion direction from a DXF HATCH.
DxfHatchdxf_hatch_set_extr_x0 (DxfHatch *hatch, double extr_x0)
 Set the X-value of the extrusion direction for a DXF HATCH.
double dxf_hatch_get_extr_y0 (DxfHatch *hatch)
 Get the Y-value of the extrusion direction from a DXF HATCH.
DxfHatchdxf_hatch_set_extr_y0 (DxfHatch *hatch, double extr_y0)
 Set the Y-value of the extrusion direction for a DXF HATCH.
double dxf_hatch_get_extr_z0 (DxfHatch *hatch)
 Get the Z-value of the extrusion direction from a DXF HATCH.
DxfHatchdxf_hatch_set_extr_z0 (DxfHatch *hatch, double extr_z0)
 Set the Z-value of the extrusion direction for a DXF HATCH.
DxfHatchBoundaryPathdxf_hatch_get_boundary_paths (DxfHatch *hatch)
 Get the first boundary path from a DXF HATCH.
DxfHatchdxf_hatch_set_boundary_paths (DxfHatch *hatch, DxfHatchBoundaryPath *paths)
 Set the first boundary path for a DXF HATCH.
DxfHatchPatterndxf_hatch_get_patterns (DxfHatch *hatch)
 Get the first pattern from a DXF HATCH.
DxfHatchdxf_hatch_set_patterns (DxfHatch *hatch, DxfHatchPattern *patterns)
 Set the first pattern for a DXF HATCH.
DxfHatchdxf_hatch_get_next (DxfHatch *hatch)
 Get the pointer to the next HATCH entity from a DXF HATCH entity.
DxfHatchdxf_hatch_set_next (DxfHatch *hatch, DxfHatch *next)
 Set the pointer to the next HATCH for a DXF HATCH entity.
DxfHatchdxf_hatch_get_last (DxfHatch *hatch)
 Get the pointer to the last HATCH entity from a linked list of DXF HATCH entities.
DxfHatchPatterndxf_hatch_pattern_new ()
 Allocate memory for a DXF HATCH pattern.
DxfHatchPatterndxf_hatch_pattern_init (DxfHatchPattern *pattern)
 Allocate memory and initialize data fields in a DXF HATCH pattern entity.
int dxf_hatch_pattern_free (DxfHatchPattern *pattern)
 Free the allocated memory for a DXF HATCH pattern and all it's data fields.
void dxf_hatch_pattern_free_chain (DxfHatchPattern *patterns)
 Free the allocated memory for a chain of DXF HATCH patterns and all their data fields.
int dxf_hatch_pattern_get_id_code (DxfHatchPattern *pattern)
 Get the ID code from a DXF HATCH pattern.
DxfHatchPatterndxf_hatch_pattern_set_id_code (DxfHatchPattern *pattern, int id_code)
 Set the ID code for a DXF HATCH pattern.
int dxf_hatch_pattern_get_number_of_def_lines (DxfHatchPattern *pattern)
 Get the number of hatch pattern definition lines from a DXF HATCH pattern.
DxfHatchPatterndxf_hatch_pattern_set_number_of_def_lines (DxfHatchPattern *pattern, int number_of_def_lines)
 Set the number of hatch pattern definition lines for a DXF HATCH pattern.
DxfHatchPatternDefLinedxf_hatch_pattern_get_def_lines (DxfHatchPattern *pattern)
 Get a pointer to the first definition line from a DXF HATCH pattern.
DxfHatchPatterndxf_hatch_pattern_set_def_lines (DxfHatchPattern *pattern, DxfHatchPatternDefLine *def_lines)
 Set the pointer for the first definition line for a DXF HATCH pattern.
int dxf_hatch_pattern_get_number_of_seed_points (DxfHatchPattern *pattern)
 Get the number of hatch pattern seed points from a DXF HATCH pattern.
DxfHatchPatterndxf_hatch_pattern_set_number_of_seed_points (DxfHatchPattern *pattern, int number_of_seed_points)
 Set the number of hatch pattern seed points for a DXF HATCH pattern.
DxfHatchPatternSeedPointdxf_hatch_pattern_get_seed_points (DxfHatchPattern *pattern)
 Get a pointer to the first seed point from a DXF HATCH pattern.
DxfHatchPatterndxf_hatch_pattern_set_seed_points (DxfHatchPattern *pattern, DxfHatchPatternSeedPoint *seed_points)
 Set the pointer for the first seed point for a DXF HATCH pattern.
DxfHatchPatterndxf_hatch_pattern_get_next (DxfHatchPattern *pattern)
 Get the pointer to the next HATCH pattern from a DXF HATCH pattern def line.
DxfHatchPatterndxf_hatch_pattern_set_next (DxfHatchPattern *pattern, DxfHatchPatternDefLine *next)
 Set the pointer to the next HATCH pattern for a DXF HATCH pattern.
DxfHatchPatterndxf_hatch_pattern_get_last (DxfHatchPattern *pattern)
 Get the pointer to the last HATCH pattern from a linked list of DXF HATCH patterns.
DxfHatchPatternDefLineDashdxf_hatch_pattern_def_line_dash_new ()
 Allocate memory for a DXF HATCH pattern definition line dash.
DxfHatchPatternDefLineDashdxf_hatch_pattern_def_line_dash_init (DxfHatchPatternDefLineDash *dash)
 Allocate memory and initialize data fields in a DXF HATCH pattern definition line dash entity.
int dxf_hatch_pattern_def_line_dash_free (DxfHatchPatternDefLineDash *dash)
 Free the allocated memory for a DXF HATCH pattern definition line dash and all it's data fields.
void dxf_hatch_pattern_def_line_dash_free_chain (DxfHatchPatternDefLineDash *dashes)
 Free the allocated memory for a chain of DXF HATCH pattern definition line dashes and all their data fields.
double dxf_hatch_pattern_def_line_dash_get_length (DxfHatchPatternDefLineDash *dash)
 Get the length value from a DXF HATCH pattern def line dash.
DxfHatchPatternDefLineDashdxf_hatch_pattern_def_line_dash_set_length (DxfHatchPatternDefLineDash *dash, double length)
 Set the length value for a DXF HATCH pattern def line dash.
DxfHatchPatternDefLineDashdxf_hatch_pattern_def_line_dash_get_next (DxfHatchPatternDefLineDash *dash)
 Get the pointer to the next HATCH pattern def line dash from a DXF HATCH pattern def line dash.
DxfHatchPatternDefLineDashdxf_hatch_pattern_def_line_dash_set_next (DxfHatchPatternDefLineDash *dash, DxfHatchPatternDefLineDash *next)
 Set the pointer to the next HATCH pattern def line dash for a DXF HATCH pattern def line dash.
DxfHatchPatternDefLineDashdxf_hatch_pattern_def_line_dash_get_last (DxfHatchPatternDefLineDash *dash)
 Get the pointer to the last HATCH pattern def line dash from a linked list of DXF HATCH pattern def line dashes.
DxfHatchPatternDefLinedxf_hatch_pattern_def_line_new ()
 Allocate memory for a DXF HATCH pattern definition line.
DxfHatchPatternDefLinedxf_hatch_pattern_def_line_init (DxfHatchPatternDefLine *line)
 Allocate memory and initialize data fields in a DXF HATCH pattern definition line entity.
int dxf_hatch_pattern_def_line_write (DxfFile *fp, DxfHatchPatternDefLine *line)
 Write DXF output to a file for a DXF HATCH pattern definition line.
int dxf_hatch_pattern_def_line_free (DxfHatchPatternDefLine *line)
 Free the allocated memory for a DXF HATCH pattern definition line and all it's data fields.
void dxf_hatch_pattern_def_line_free_chain (DxfHatchPatternDefLine *lines)
 Free the allocated memory for a chain of DXF HATCH pattern definition lines and all their data fields.
int dxf_hatch_pattern_def_line_get_id_code (DxfHatchPatternDefLine *line)
 Get the ID code from a DXF HATCH pattern def line.
DxfHatchPatternDefLinedxf_hatch_pattern_def_line_set_id_code (DxfHatchPatternDefLine *line, int id_code)
 Set the ID code for a DXF HATCH pattern def line.
double dxf_hatch_pattern_def_line_get_angle (DxfHatchPatternDefLine *line)
 Get the angle from a DXF HATCH pattern def line.
DxfHatchPatternDefLinedxf_hatch_pattern_def_line_set_angle (DxfHatchPatternDefLine *line, double angle)
 Set the angle for a DXF HATCH pattern def line.
double dxf_hatch_pattern_def_line_get_x0 (DxfHatchPatternDefLine *line)
 Get the base point X-value from a DXF HATCH pattern def line.
DxfHatchPatternDefLinedxf_hatch_pattern_def_line_set_x0 (DxfHatchPatternDefLine *line, double x0)
 Set the base point X-value for a DXF HATCH pattern def line.
double dxf_hatch_pattern_def_line_get_y0 (DxfHatchPatternDefLine *line)
 Get the base point Y-value from a DXF HATCH pattern def line.
DxfHatchPatternDefLinedxf_hatch_pattern_def_line_set_y0 (DxfHatchPatternDefLine *line, double y0)
 Set the base point Y-value for a DXF HATCH pattern def line.
double dxf_hatch_pattern_def_line_get_x1 (DxfHatchPatternDefLine *line)
 Get the offset point X-value from a DXF HATCH pattern def line.
DxfHatchPatternDefLinedxf_hatch_pattern_def_line_set_x1 (DxfHatchPatternDefLine *line, double x1)
 Set the offset point X-value for a DXF HATCH pattern def line.
double dxf_hatch_pattern_def_line_get_y1 (DxfHatchPatternDefLine *line)
 Get the offset point Y-value from a DXF HATCH pattern def line.
DxfHatchPatternDefLinedxf_hatch_pattern_def_line_set_y1 (DxfHatchPatternDefLine *line, double y1)
 Set the offset point Y-value for a DXF HATCH pattern def line.
int dxf_hatch_pattern_def_line_get_number_of_dash_items (DxfHatchPatternDefLine *line)
 Get the number of hatch pattern definition line dash items from a DXF HATCH pattern def line.
DxfHatchPatternDefLinedxf_hatch_pattern_def_line_set_number_of_dash_items (DxfHatchPatternDefLine *line, int number_of_dash_items)
 Set the number of hatch pattern definition line dash items for a DXF HATCH pattern def line.
DxfHatchPatternDefLineDashdxf_hatch_pattern_def_line_get_dashes (DxfHatchPatternDefLine *line)
 Get a pointer to the first dash from a DXF HATCH pattern def line.
DxfHatchPatternDefLinedxf_hatch_pattern_def_line_set_dashes (DxfHatchPatternDefLine *line, DxfHatchPatternDefLineDash *dashes)
 Set the pointer for the first dash for a DXF HATCH pattern def line.
DxfHatchPatternDefLinedxf_hatch_pattern_def_line_get_next (DxfHatchPatternDefLine *line)
 Get the pointer to the next HATCH pattern def line from a DXF HATCH pattern def line.
DxfHatchPatternDefLinedxf_hatch_pattern_def_line_set_next (DxfHatchPatternDefLine *line, DxfHatchPatternDefLine *next)
 Set the pointer to the next HATCH pattern def line for a DXF HATCH pattern def line.
DxfHatchPatternDefLinedxf_hatch_pattern_def_line_get_last (DxfHatchPatternDefLine *line)
 Get the pointer to the last HATCH pattern def line from a linked list of DXF HATCH pattern def lines.
DxfHatchPatternSeedPointdxf_hatch_pattern_seedpoint_new ()
 Allocate memory for a DXF HATCH pattern seedpoint.
DxfHatchPatternSeedPointdxf_hatch_pattern_seedpoint_init (DxfHatchPatternSeedPoint *seedpoint)
 Allocate memory and initialize data fields in a DXF HATCH pattern seedpoint entity.
int dxf_hatch_pattern_seedpoint_write (DxfFile *fp, DxfHatchPatternSeedPoint *seedpoint)
 Write DXF output to a file for a DXF HATCH pattern seed point.
int dxf_hatch_pattern_seedpoint_free (DxfHatchPatternSeedPoint *seedpoint)
 Free the allocated memory for a DXF HATCH pattern seedpoint and all it's data fields.
void dxf_hatch_pattern_seedpoint_free_chain (DxfHatchPatternSeedPoint *hatch_pattern_seed_points)
 Free the allocated memory for a chain of DXF HATCH pattern seed points and all their data fields.
int dxf_hatch_pattern_seedpoint_get_id_code (DxfHatchPatternSeedPoint *point)
 Get the ID code from a DXF HATCH pattern seed point.
DxfHatchPatternSeedPointdxf_hatch_pattern_seedpoint_set_id_code (DxfHatchPatternSeedPoint *point, int id_code)
 Set the ID code for a DXF HATCH pattern seed point.
double dxf_hatch_pattern_seedpoint_get_x0 (DxfHatchPatternSeedPoint *point)
 Get the X-value from a DXF HATCH pattern seed point.
DxfHatchPatternSeedPointdxf_hatch_pattern_seedpoint_set_x0 (DxfHatchPatternSeedPoint *point, double x0)
 Set the X-value for a DXF HATCH pattern seed point.
double dxf_hatch_pattern_seedpoint_get_y0 (DxfHatchPatternSeedPoint *point)
 Get the Y-value from a DXF HATCH pattern seed point.
DxfHatchPatternSeedPointdxf_hatch_pattern_seedpoint_set_y0 (DxfHatchPatternSeedPoint *point, double y0)
 Set the Y-value for a DXF HATCH pattern seed point.
DxfHatchPatternSeedPointdxf_hatch_pattern_seedpoint_get_next (DxfHatchPatternSeedPoint *point)
 Get the pointer to the next HATCH pattern seed point from a DXF HATCH pattern seed point.
DxfHatchPatternSeedPointdxf_hatch_pattern_seedpoint_set_next (DxfHatchPatternSeedPoint *point, DxfHatchPatternSeedPoint *next)
 Set the pointer to the next HATCH pattern seed point for a DXF HATCH pattern seed point.
DxfHatchPatternSeedPointdxf_hatch_pattern_seedpoint_get_last (DxfHatchPatternSeedPoint *point)
 Get the pointer to the last HATCH pattern seed point from a linked list of DXF HATCH pattern seed points.
DxfHatchBoundaryPathdxf_hatch_boundary_path_new ()
 Allocate memory for a DXF HATCH boundary path.
DxfHatchBoundaryPathdxf_hatch_boundary_path_init (DxfHatchBoundaryPath *path)
 Allocate memory and initialize data fields in a DXF HATCH boundary path entity.
int dxf_hatch_boundary_path_write (DxfFile *fp, DxfHatchBoundaryPath *path)
 Write DXF output to a file for hatch boundary entities.
int dxf_hatch_boundary_path_free (DxfHatchBoundaryPath *path)
 Free the allocated memory for a DXF HATCH boundary path and all it's data fields.
void dxf_hatch_boundary_path_free_chain (DxfHatchBoundaryPath *hatch_boundary_paths)
 Free the allocated memory for a chain of DXF HATCH boundary paths and all their data fields.
int dxf_hatch_boundary_path_get_id_code (DxfHatchBoundaryPath *path)
 Get the ID code from a DXF HATCH boundary path.
DxfHatchBoundaryPathdxf_hatch_boundary_path_set_id_code (DxfHatchBoundaryPath *path, int id_code)
 Set the ID code for a DXF HATCH boundary path.
DxfHatchBoundaryPathEdgedxf_hatch_boundary_path_get_edges (DxfHatchBoundaryPath *path)
 Get the edges from a DXF HATCH boundary path.
DxfHatchBoundaryPathdxf_hatch_boundary_path_set_edges (DxfHatchBoundaryPath *path, DxfHatchBoundaryPathEdge *edges)
 Set the edges for a DXF HATCH boundary path.
DxfHatchBoundaryPathPolylinedxf_hatch_boundary_path_get_polylines (DxfHatchBoundaryPath *path)
 Get the polylines from a DXF HATCH boundary path.
DxfHatchBoundaryPathdxf_hatch_boundary_path_set_polylines (DxfHatchBoundaryPath *path, DxfHatchBoundaryPathPolyline *polylines)
 Set the plylines for a DXF HATCH boundary path.
DxfHatchBoundaryPathdxf_hatch_boundary_path_get_next (DxfHatchBoundaryPath *path)
 Get the pointer to the next HATCH boundary path from a DXF HATCH boundary path.
DxfHatchBoundaryPathdxf_hatch_boundary_path_set_next (DxfHatchBoundaryPath *path, DxfHatchBoundaryPath *next)
 Set the pointer to the next HATCH boundary path for a DXF HATCH boundary path.
DxfHatchBoundaryPathdxf_hatch_boundary_path_get_last (DxfHatchBoundaryPath *path)
 Get the pointer to the last HATCH boundary path from a linked list of DXF HATCH boundary paths.
DxfHatchBoundaryPathPolylinedxf_hatch_boundary_path_polyline_new ()
 Allocate memory for a DXF HATCH boundary path polyline.
DxfHatchBoundaryPathPolylinedxf_hatch_boundary_path_polyline_init (DxfHatchBoundaryPathPolyline *polyline)
 Allocate memory and initialize data fields in a DXF HATCH boundary path polyline entity.
int dxf_hatch_boundary_path_polyline_write (DxfFile *fp, DxfHatchBoundaryPathPolyline *polyline)
 Write DXF output to a file for a hatch boundary path polyline.
int dxf_hatch_boundary_path_polyline_free (DxfHatchBoundaryPathPolyline *polyline)
 Free the allocated memory for a DXF HATCH boundary path polyline and all it's data fields.
void dxf_hatch_boundary_path_polyline_free_chain (DxfHatchBoundaryPathPolyline *polylines)
 Free the allocated memory for a chain of DXF HATCH boundary path polylines and all their data fields.
int dxf_hatch_boundary_path_polyline_get_id_code (DxfHatchBoundaryPathPolyline *polyline)
 Get the ID code from a DXF HATCH boundary path polyline.
DxfHatchBoundaryPathPolylinedxf_hatch_boundary_path_polyline_set_id_code (DxfHatchBoundaryPathPolyline *polyline, int id_code)
 Set the ID code for a DXF HATCH boundary path polyline.
int dxf_hatch_boundary_path_polyline_get_is_closed (DxfHatchBoundaryPathPolyline *polyline)
 Get the is_closed flag value from a DXF HATCH boundary path polyline.
DxfHatchBoundaryPathPolylinedxf_hatch_boundary_path_polyline_set_is_closed (DxfHatchBoundaryPathPolyline *polyline, int is_closed)
 Set the is_closed flag value for a DXF HATCH boundary path polyline.
int dxf_hatch_boundary_path_polyline_get_number_of_vertices (DxfHatchBoundaryPathPolyline *polyline)
 Get the number_of_vertices value from a DXF HATCH boundary path polyline.
DxfHatchBoundaryPathPolylinedxf_hatch_boundary_path_polyline_set_number_of_vertices (DxfHatchBoundaryPathPolyline *polyline, int number_of_vertices)
 Set the number_of_vertices value for a DXF HATCH boundary path polyline.
DxfHatchBoundaryPathPolylineVertexdxf_hatch_boundary_path_polyline_get_vertices (DxfHatchBoundaryPathPolyline *polyline)
 Get the vertices from a DXF HATCH boundary path polyline.
DxfHatchBoundaryPathPolylinedxf_hatch_boundary_path_polyline_set_vertices (DxfHatchBoundaryPathPolyline *polyline, DxfHatchBoundaryPathPolylineVertex *vertices)
 Set the vertices for a DXF HATCH boundary path polyline.
int dxf_hatch_boundary_path_polyline_close_polyline (DxfHatchBoundaryPathPolyline *polyline)
 Test if a hatch boundary polyline is closed and add the missing vertex.
int dxf_hatch_boundary_path_polyline_point_inside_polyline (DxfHatchBoundaryPathPolyline *polyline, DxfPoint *point)
 Compute if the coordinates of a point p lie inside or outside a DXF hatch boundary path polyline polyline entity.
DxfHatchBoundaryPathPolylinedxf_hatch_boundary_path_polyline_get_next (DxfHatchBoundaryPathPolyline *polyline)
 Get the pointer to the next HATCH boundary path polyline from a DXF HATCH boundary path polyline.
DxfHatchBoundaryPathPolylinedxf_hatch_boundary_path_polyline_set_next (DxfHatchBoundaryPathPolyline *polyline, DxfHatchBoundaryPathPolyline *next)
 Set the pointer to the next HATCH boundary path polyline for a DXF HATCH boundary path polyline.
DxfHatchBoundaryPathPolylinedxf_hatch_boundary_path_polyline_get_last (DxfHatchBoundaryPathPolyline *polyline)
 Get the pointer to the last HATCH boundary path polyline from a linked list of DXF HATCH boundary path polylines.
DxfHatchBoundaryPathPolylineVertexdxf_hatch_boundary_path_polyline_vertex_new ()
 Allocate memory for a DXF HATCH boundary path polyline vertex.
DxfHatchBoundaryPathPolylineVertexdxf_hatch_boundary_path_polyline_vertex_init (DxfHatchBoundaryPathPolylineVertex *vertex)
 Allocate memory and initialize data fields in a DXF HATCH boundary path polyline vertex entity.
int dxf_hatch_boundary_path_polyline_vertex_write (DxfFile *fp, DxfHatchBoundaryPathPolylineVertex *vertex)
 Write DXF output to a file for a hatch boundary polyline vertex.
int dxf_hatch_boundary_path_polyline_vertex_free (DxfHatchBoundaryPathPolylineVertex *vertex)
 Free the allocated memory for a DXF HATCH boundary path polyline vertex and all it's data fields.
void dxf_hatch_boundary_path_polyline_vertex_free_chain (DxfHatchBoundaryPathPolylineVertex *hatch_boundary_path_polyline_vertices)
 Free the allocated memory for a chain of DXF HATCH boundary path polyline vertices and all their data fields.
int dxf_hatch_boundary_path_polyline_vertex_get_id_code (DxfHatchBoundaryPathPolylineVertex *vertex)
 Get the ID code from a DXF HATCH boundary path polyline vertex.
DxfHatchBoundaryPathPolylineVertexdxf_hatch_boundary_path_polyline_vertex_set_id_code (DxfHatchBoundaryPathPolylineVertex *vertex, int id_code)
 Set the ID code for a DXF HATCH boundary path polyline vertex.
double dxf_hatch_boundary_path_polyline_vertex_get_x0 (DxfHatchBoundaryPathPolylineVertex *vertex)
 Get the X-value of the coordinate from a DXF HATCH boundary path polyline vertex.
DxfHatchBoundaryPathPolylineVertexdxf_hatch_boundary_path_polyline_vertex_set_x0 (DxfHatchBoundaryPathPolylineVertex *vertex, double x0)
 Set the X-value of the coordinate for a DXF HATCH boundary path polyline vertex.
double dxf_hatch_boundary_path_polyline_vertex_get_y0 (DxfHatchBoundaryPathPolylineVertex *vertex)
 Get the Y-value of the coordinate from a DXF HATCH boundary path polyline vertex.
DxfHatchBoundaryPathPolylineVertexdxf_hatch_boundary_path_polyline_vertex_set_y0 (DxfHatchBoundaryPathPolylineVertex *vertex, double y0)
 Set the Y-value of the coordinate for a DXF HATCH boundary path polyline vertex.
double dxf_hatch_boundary_path_polyline_vertex_get_bulge (DxfHatchBoundaryPathPolylineVertex *vertex)
 Get the bulge from a DXF HATCH boundary path polyline vertex.
DxfHatchBoundaryPathPolylineVertexdxf_hatch_boundary_path_polyline_vertex_set_bulge (DxfHatchBoundaryPathPolylineVertex *vertex, double bulge)
 Set the bulge value for a DXF HATCH boundary path polyline vertex.
int dxf_hatch_boundary_path_polyline_vertex_get_has_bulge (DxfHatchBoundaryPathPolylineVertex *vertex)
 Get the has_bulge flag value from a DXF HATCH boundary path polyline vertex.
DxfHatchBoundaryPathPolylineVertexdxf_hatch_boundary_path_polyline_vertex_set_has_bulge (DxfHatchBoundaryPathPolylineVertex *vertex, int has_bulge)
 Set the has_bulge flag value for a DXF HATCH boundary path polyline vertex.
double dxf_hatch_boundary_path_polyline_vertex_angle (DxfHatchBoundaryPathPolylineVertex *vertex_0, DxfHatchBoundaryPathPolylineVertex *vertex_1)
 Return the angle between two vertices on a plane (2D).
DxfHatchBoundaryPathPolylineVertexdxf_hatch_boundary_path_polyline_vertex_get_next (DxfHatchBoundaryPathPolylineVertex *vertex)
 Get the pointer to the next HATCH boundary path polyline vertex from a DXF HATCH boundary path polyline vertex.
DxfHatchBoundaryPathPolylineVertexdxf_hatch_boundary_path_polyline_vertex_set_next (DxfHatchBoundaryPathPolylineVertex *vertex, DxfHatchBoundaryPathPolylineVertex *next)
 Set the pointer to the next HATCH boundary path polyline vertex for a DXF HATCH boundary path polyline vertex.
DxfHatchBoundaryPathPolylineVertexdxf_hatch_boundary_path_polyline_vertex_get_last (DxfHatchBoundaryPathPolylineVertex *vertex)
 Get the pointer to the last HATCH boundary path polyline vertex from a linked list of DXF HATCH boundary path polyline vertices.
DxfHatchBoundaryPathEdgedxf_hatch_boundary_path_edge_new ()
 Allocate memory for a DXF HATCH boundary path edge.
DxfHatchBoundaryPathEdgedxf_hatch_boundary_path_edge_init (DxfHatchBoundaryPathEdge *edge)
 Allocate memory and initialize data fields in a DXF HATCH boundary path edge entity.
int dxf_hatch_boundary_path_edge_free (DxfHatchBoundaryPathEdge *edge)
 Free the allocated memory for a DXF HATCH boundary path edge and all it's data fields.
void dxf_hatch_boundary_path_edge_free_chain (DxfHatchBoundaryPathEdge *edges)
 Free the allocated memory for a chain of DXF HATCH boundary path edges and all their data fields.
int dxf_hatch_boundary_path_edge_get_id_code (DxfHatchBoundaryPathEdge *edge)
 Get the ID code from a DXF HATCH boundary path edge.
DxfHatchBoundaryPathEdgedxf_hatch_boundary_path_edge_set_id_code (DxfHatchBoundaryPathEdge *edge, int id_code)
 Set the ID code for a DXF HATCH boundary path edge.
DxfHatchBoundaryPathEdgeArcdxf_hatch_boundary_path_edge_get_arcs (DxfHatchBoundaryPathEdge *edge)
 Get the pointer to the first arc of a linked list of arcs from a DXF HATCH boundary path edge.
DxfHatchBoundaryPathEdgedxf_hatch_boundary_path_edge_set_arcs (DxfHatchBoundaryPathEdge *edge, DxfHatchBoundaryPathEdgeArc *arcs)
 Set the pointer to the first arc of a linked list of arcs for a DXF HATCH boundary path edge.
DxfHatchBoundaryPathEdgeEllipsedxf_hatch_boundary_path_edge_get_ellipses (DxfHatchBoundaryPathEdge *edge)
 Get the pointer to the first ellipse of a linked list of ellipses from a DXF HATCH boundary path edge.
DxfHatchBoundaryPathEdgedxf_hatch_boundary_path_edge_set_ellipses (DxfHatchBoundaryPathEdge *edge, DxfHatchBoundaryPathEdgeEllipse *ellipses)
 Set the pointer to the first ellipse of a linked list of ellipses for a DXF HATCH boundary path edge.
DxfHatchBoundaryPathEdgeLinedxf_hatch_boundary_path_edge_get_lines (DxfHatchBoundaryPathEdge *edge)
 Get the pointer to the first line of a linked list of lines from a DXF HATCH boundary path edge.
DxfHatchBoundaryPathEdgedxf_hatch_boundary_path_edge_set_lines (DxfHatchBoundaryPathEdge *edge, DxfHatchBoundaryPathEdgeLine *lines)
 Set the pointer to the first line of a linked list of lines for a DXF HATCH boundary path edge.
DxfHatchBoundaryPathEdgeSplinedxf_hatch_boundary_path_edge_get_splines (DxfHatchBoundaryPathEdge *edge)
 Get the pointer to the first spline of a linked list of splines from a DXF HATCH boundary path edge.
DxfHatchBoundaryPathEdgedxf_hatch_boundary_path_edge_set_splines (DxfHatchBoundaryPathEdge *edge, DxfHatchBoundaryPathEdgeSpline *splines)
 Set the pointer to the first spline of a linked list of splines for a DXF HATCH boundary path edge.
DxfHatchBoundaryPathEdgedxf_hatch_boundary_path_edge_get_next (DxfHatchBoundaryPathEdge *edge)
 Get the pointer to the next HATCH boundary path edge from a DXF HATCH boundary path edge.
DxfHatchBoundaryPathEdgedxf_hatch_boundary_path_edge_set_next (DxfHatchBoundaryPathEdge *edge, DxfHatchBoundaryPathEdge *next)
 Set the pointer to the next HATCH boundary path edge for a DXF HATCH boundary path edge.
DxfHatchBoundaryPathEdgedxf_hatch_boundary_path_edge_get_last (DxfHatchBoundaryPathEdge *edge)
 Get the pointer to the last HATCH boundary path edge from a linked list of DXF HATCH boundary path edge.
DxfHatchBoundaryPathEdgeArcdxf_hatch_boundary_path_edge_arc_new ()
 Allocate memory for a DXF HATCH boundary path edge arc.
DxfHatchBoundaryPathEdgeArcdxf_hatch_boundary_path_edge_arc_init (DxfHatchBoundaryPathEdgeArc *arc)
 Allocate memory and initialize data fields in a DXF HATCH boundary path edge arc entity.
int dxf_hatch_boundary_path_edge_arc_free (DxfHatchBoundaryPathEdgeArc *arc)
 Free the allocated memory for a DXF HATCH boundary path edge arc and all it's data fields.
void dxf_hatch_boundary_path_edge_arc_free_chain (DxfHatchBoundaryPathEdgeArc *hatch_boundary_path_edge_arcs)
 Free the allocated memory for a chain of DXF HATCH boundary path edge arcs and all their data fields.
int dxf_hatch_boundary_path_edge_arc_get_id_code (DxfHatchBoundaryPathEdgeArc *arc)
 Get the ID code from a DXF HATCH boundary path edge arc.
DxfHatchBoundaryPathEdgeArcdxf_hatch_boundary_path_edge_arc_set_id_code (DxfHatchBoundaryPathEdgeArc *arc, int id_code)
 Set the ID code for a DXF HATCH boundary path edge arc.
double dxf_hatch_boundary_path_edge_arc_get_x0 (DxfHatchBoundaryPathEdgeArc *arc)
 Get the X-value of the center point coordinate from a DXF HATCH boundary path edge arc.
DxfHatchBoundaryPathEdgeArcdxf_hatch_boundary_path_edge_arc_set_x0 (DxfHatchBoundaryPathEdgeArc *arc, double x0)
 Set the X-value of the center point coordinate for a DXF HATCH boundary path edge arc.
double dxf_hatch_boundary_path_edge_arc_get_y0 (DxfHatchBoundaryPathEdgeArc *arc)
 Get the Y-value of the center point coordinate from a DXF HATCH boundary path edge arc.
DxfHatchBoundaryPathEdgeArcdxf_hatch_boundary_path_edge_arc_set_y0 (DxfHatchBoundaryPathEdgeArc *arc, double y0)
 Set the Y-value of the center point coordinate for a DXF HATCH boundary path edge arc.
DxfPointdxf_hatch_boundary_path_edge_arc_get_center_point (DxfHatchBoundaryPathEdgeArc *arc, int id_code)
 Get the center point of a DXF HATCH boundary path edge arc.
DxfHatchBoundaryPathEdgeArcdxf_hatch_boundary_path_edge_arc_set_center_point (DxfHatchBoundaryPathEdgeArc *arc, DxfPoint *point)
 Set the center point of a DXF HATCH boundary path edge arc.
double dxf_hatch_boundary_path_edge_arc_get_radius (DxfHatchBoundaryPathEdgeArc *arc)
 Get the radius from a DXF HATCH boundary path edge arc.
DxfHatchBoundaryPathEdgeArcdxf_hatch_boundary_path_edge_arc_set_radius (DxfHatchBoundaryPathEdgeArc *arc, double radius)
 Set the radius for a DXF HATCH boundary path edge arc.
double dxf_hatch_boundary_path_edge_arc_get_start_angle (DxfHatchBoundaryPathEdgeArc *arc)
 Get the start angle from a DXF HATCH boundary path edge arc.
DxfHatchBoundaryPathEdgeArcdxf_hatch_boundary_path_edge_arc_set_start_angle (DxfHatchBoundaryPathEdgeArc *arc, double start_angle)
 Set the start angle for a DXF HATCH boundary path edge arc.
double dxf_hatch_boundary_path_edge_arc_get_end_angle (DxfHatchBoundaryPathEdgeArc *arc)
 Get the end angle from a DXF HATCH boundary path edge arc.
DxfHatchBoundaryPathEdgeArcdxf_hatch_boundary_path_edge_arc_set_end_angle (DxfHatchBoundaryPathEdgeArc *arc, double end_angle)
 Set the end angle for a DXF HATCH boundary path edge arc.
int dxf_hatch_boundary_path_edge_arc_get_is_ccw (DxfHatchBoundaryPathEdgeArc *arc)
 Get the arc is ccw value from a DXF HATCH boundary path edge arc.
DxfHatchBoundaryPathEdgeArcdxf_hatch_boundary_path_edge_arc_set_is_ccw (DxfHatchBoundaryPathEdgeArc *arc, int is_ccw)
 Set the arc is ccw value for a DXF HATCH boundary path edge arc.
DxfHatchBoundaryPathEdgeArcdxf_hatch_boundary_path_edge_arc_get_next (DxfHatchBoundaryPathEdgeArc *arc)
 Get the pointer to the next HATCH boundary path edge arc from a DXF HATCH boundary path edge arc.
DxfHatchBoundaryPathEdgeArcdxf_hatch_boundary_path_edge_arc_set_next (DxfHatchBoundaryPathEdgeArc *arc, DxfHatchBoundaryPathEdgeArc *next)
 Set the pointer to the next HATCH boundary path edge arc for a DXF HATCH boundary path edge arc.
DxfHatchBoundaryPathEdgeArcdxf_hatch_boundary_path_edge_arc_get_last (DxfHatchBoundaryPathEdgeArc *arc)
 Get the pointer to the last HATCH boundary path edge arc from a linked list of DXF HATCH boundary path edge arcs.
DxfHatchBoundaryPathEdgeEllipsedxf_hatch_boundary_path_edge_ellipse_new ()
 Allocate memory for a DXF HATCH boundary path edge ellipse.
DxfHatchBoundaryPathEdgeEllipsedxf_hatch_boundary_path_edge_ellipse_init (DxfHatchBoundaryPathEdgeEllipse *ellipse)
 Allocate memory and initialize data fields in a DXF HATCH boundary path edge ellipse entity.
int dxf_hatch_boundary_path_edge_ellipse_free (DxfHatchBoundaryPathEdgeEllipse *ellipse)
 Free the allocated memory for a DXF HATCH boundary path edge ellipse and all it's data fields.
void dxf_hatch_boundary_path_edge_ellipse_free_chain (DxfHatchBoundaryPathEdgeEllipse *hatch_boundary_path_edge_ellipses)
 Free the allocated memory for a chain of DXF HATCH boundary path edge ellipses and all their data fields.
int dxf_hatch_boundary_path_edge_ellipse_get_id_code (DxfHatchBoundaryPathEdgeEllipse *ellipse)
 Get the ID code from a DXF HATCH boundary path edge ellipse.
DxfHatchBoundaryPathEdgeEllipsedxf_hatch_boundary_path_edge_ellipse_set_id_code (DxfHatchBoundaryPathEdgeEllipse *ellipse, int id_code)
 Set the ID code for a DXF HATCH boundary path edge ellipse.
double dxf_hatch_boundary_path_edge_ellipse_get_x0 (DxfHatchBoundaryPathEdgeEllipse *ellipse)
 Get the X-value of the center point coordinate from a DXF HATCH boundary path edge ellipse.
DxfHatchBoundaryPathEdgeEllipsedxf_hatch_boundary_path_edge_ellipse_set_x0 (DxfHatchBoundaryPathEdgeEllipse *ellipse, double x0)
 Set the X-value of the center point coordinate for a DXF HATCH boundary path edge ellipse.
double dxf_hatch_boundary_path_edge_ellipse_get_y0 (DxfHatchBoundaryPathEdgeEllipse *ellipse)
 Get the Y-value of the center point coordinate from a DXF HATCH boundary path edge ellipse.
DxfHatchBoundaryPathEdgeEllipsedxf_hatch_boundary_path_edge_ellipse_set_y0 (DxfHatchBoundaryPathEdgeEllipse *ellipse, double y0)
 Set the Y-value of the center point coordinate for a DXF HATCH boundary path edge ellipse.
DxfPointdxf_hatch_boundary_path_edge_ellipse_get_center_point (DxfHatchBoundaryPathEdgeEllipse *ellipse, int id_code)
 Get the center point of a DXF HATCH boundary path edge ellipse.
DxfHatchBoundaryPathEdgeEllipsedxf_hatch_boundary_path_edge_ellipse_set_center_point (DxfHatchBoundaryPathEdgeEllipse *ellipse, DxfPoint *point)
 Set the center point of a DXF HATCH boundary path edge ellipse.
double dxf_hatch_boundary_path_edge_ellipse_get_x1 (DxfHatchBoundaryPathEdgeEllipse *ellipse)
 Get the X-value of the end point coordinate coordinate of the major axis from a DXF HATCH boundary path edge ellipse.
DxfHatchBoundaryPathEdgeEllipsedxf_hatch_boundary_path_edge_ellipse_set_x1 (DxfHatchBoundaryPathEdgeEllipse *ellipse, double x1)
 Set the X-value of the end point coordinate coordinate of the major axis for a DXF HATCH boundary path edge ellipse.
double dxf_hatch_boundary_path_edge_ellipse_get_y1 (DxfHatchBoundaryPathEdgeEllipse *ellipse)
 Get the Y-value of the end point coordinate coordinate of the major axis from a DXF HATCH boundary path edge ellipse.
DxfHatchBoundaryPathEdgeEllipsedxf_hatch_boundary_path_edge_ellipse_set_y1 (DxfHatchBoundaryPathEdgeEllipse *ellipse, double y1)
 Set the Y-value of the end point coordinate coordinate of the major axis for a DXF HATCH boundary path edge ellipse.
DxfPointdxf_hatch_boundary_path_edge_ellipse_get_end_point (DxfHatchBoundaryPathEdgeEllipse *ellipse, int id_code)
 Get the endpoint of the major axis (relative to the center) of a DXF HATCH boundary path edge ellipse.
DxfHatchBoundaryPathEdgeEllipsedxf_hatch_boundary_path_edge_ellipse_set_end_point (DxfHatchBoundaryPathEdgeEllipse *ellipse, DxfPoint *point)
 Set the endpoint of the major axis (relative to the center) of a DXF HATCH boundary path edge ellipse.
double dxf_hatch_boundary_path_edge_ellipse_get_ratio (DxfHatchBoundaryPathEdgeEllipse *ellipse)
 Get the ratio of minor axis to major axis from a DXF HATCH boundary path edge ellipse.
DxfHatchBoundaryPathEdgeEllipsedxf_hatch_boundary_path_edge_ellipse_set_ratio (DxfHatchBoundaryPathEdgeEllipse *ellipse, double ratio)
 Set the ratio of minor axis to major axis for a DXF HATCH boundary path edge ellipse.
double dxf_hatch_boundary_path_edge_ellipse_get_start_angle (DxfHatchBoundaryPathEdgeEllipse *ellipse)
 Get the start angle from a DXF HATCH boundary path edge ellipse.
DxfHatchBoundaryPathEdgeEllipsedxf_hatch_boundary_path_edge_ellipse_set_start_angle (DxfHatchBoundaryPathEdgeEllipse *ellipse, double start_angle)
 Set the start angle for a DXF HATCH boundary path edge ellipse.
double dxf_hatch_boundary_path_edge_ellipse_get_end_angle (DxfHatchBoundaryPathEdgeEllipse *ellipse)
 Get the end angle from a DXF HATCH boundary path edge ellipse.
DxfHatchBoundaryPathEdgeEllipsedxf_hatch_boundary_path_edge_ellipse_set_end_angle (DxfHatchBoundaryPathEdgeEllipse *ellipse, double end_angle)
 Set the end angle for a DXF HATCH boundary path edge ellipse.
int dxf_hatch_boundary_path_edge_ellipse_get_is_ccw (DxfHatchBoundaryPathEdgeEllipse *ellipse)
 Get the is_ccw value from a DXF HATCH boundary path edge ellipse.
DxfHatchBoundaryPathEdgeEllipsedxf_hatch_boundary_path_edge_ellipse_set_is_ccw (DxfHatchBoundaryPathEdgeEllipse *ellipse, int is_ccw)
 Set the is_ccw value for a DXF HATCH boundary path edge ellipse.
DxfHatchBoundaryPathEdgeEllipsedxf_hatch_boundary_path_edge_ellipse_get_next (DxfHatchBoundaryPathEdgeEllipse *ellipse)
 Get the pointer to the next HATCH boundary path edge ellipse from a DXF HATCH boundary path edge ellipse.
DxfHatchBoundaryPathEdgeEllipsedxf_hatch_boundary_path_edge_ellipse_set_next (DxfHatchBoundaryPathEdgeEllipse *ellipse, DxfHatchBoundaryPathEdgeEllipse *next)
 Set the pointer to the next HATCH boundary path edge ellipse for a DXF HATCH boundary path edge ellipse.
DxfHatchBoundaryPathEdgeEllipsedxf_hatch_boundary_path_edge_ellipse_get_last (DxfHatchBoundaryPathEdgeEllipse *ellipse)
 Get the pointer to the last HATCH boundary path edge ellipse from a linked list of DXF HATCH boundary path edge ellipse.
DxfHatchBoundaryPathEdgeLinedxf_hatch_boundary_path_edge_line_new ()
 Allocate memory for a DXF HATCH boundary path edge line.
DxfHatchBoundaryPathEdgeLinedxf_hatch_boundary_path_edge_line_init (DxfHatchBoundaryPathEdgeLine *line)
 Allocate memory and initialize data fields in a DXF HATCH boundary path edge line entity.
int dxf_hatch_boundary_path_edge_line_free (DxfHatchBoundaryPathEdgeLine *line)
 Free the allocated memory for a DXF HATCH boundary path edge line and all it's data fields.
void dxf_hatch_boundary_path_edge_line_free_chain (DxfHatchBoundaryPathEdgeLine *hatch_boundary_path_edge_lines)
 Free the allocated memory for a chain of DXF HATCH boundary path edge lines and all their data fields.
int dxf_hatch_boundary_path_edge_line_get_id_code (DxfHatchBoundaryPathEdgeLine *line)
 Get the ID code from a DXF HATCH boundary path edge line.
DxfHatchBoundaryPathEdgeLinedxf_hatch_boundary_path_edge_line_set_id_code (DxfHatchBoundaryPathEdgeLine *line, int id_code)
 Set the ID code for a DXF HATCH boundary path edge line.
double dxf_hatch_boundary_path_edge_line_get_x0 (DxfHatchBoundaryPathEdgeLine *line)
 Get the X-value of the start point coordinate from a DXF HATCH boundary path edge line.
DxfHatchBoundaryPathEdgeLinedxf_hatch_boundary_path_edge_line_set_x0 (DxfHatchBoundaryPathEdgeLine *line, double x0)
 Set the X-value of the start point coordinate for a DXF HATCH boundary path edge line.
double dxf_hatch_boundary_path_edge_line_get_y0 (DxfHatchBoundaryPathEdgeLine *line)
 Get the Y-value of the start point coordinate from a DXF HATCH boundary path edge line.
DxfHatchBoundaryPathEdgeLinedxf_hatch_boundary_path_edge_line_set_y0 (DxfHatchBoundaryPathEdgeLine *line, double y0)
 Set the Y-value of the start point coordinate for a DXF HATCH boundary path edge line.
DxfPointdxf_hatch_boundary_path_edge_line_get_start_point (DxfHatchBoundaryPathEdgeLine *line, int id_code)
 Get the start point of a DXF HATCH boundary path edge line.
DxfHatchBoundaryPathEdgeLinedxf_hatch_boundary_path_edge_line_set_start_point (DxfHatchBoundaryPathEdgeLine *line, DxfPoint *point)
 Set the start point of a DXF HATCH boundary path edge line.
double dxf_hatch_boundary_path_edge_line_get_x1 (DxfHatchBoundaryPathEdgeLine *line)
 Get the X-value of the end point coordinate from a DXF HATCH boundary path edge line.
DxfHatchBoundaryPathEdgeLinedxf_hatch_boundary_path_edge_line_set_x1 (DxfHatchBoundaryPathEdgeLine *line, double x1)
 Set the X-value of the end point coordinate for a DXF HATCH boundary path edge line.
double dxf_hatch_boundary_path_edge_line_get_y1 (DxfHatchBoundaryPathEdgeLine *line)
 Get the Y-value of the end point coordinate from a DXF HATCH boundary path edge line.
DxfHatchBoundaryPathEdgeLinedxf_hatch_boundary_path_edge_line_set_y1 (DxfHatchBoundaryPathEdgeLine *line, double y1)
 Set the Y-value of the end point coordinate for a DXF HATCH boundary path edge line.
DxfPointdxf_hatch_boundary_path_edge_line_get_end_point (DxfHatchBoundaryPathEdgeLine *line, int id_code)
 Get the end point of a DXF HATCH boundary path edge line.
DxfHatchBoundaryPathEdgeLinedxf_hatch_boundary_path_edge_line_set_end_point (DxfHatchBoundaryPathEdgeLine *line, DxfPoint *point)
 Set the end point of a DXF HATCH boundary path edge line.
DxfHatchBoundaryPathEdgeLinedxf_hatch_boundary_path_edge_line_get_next (DxfHatchBoundaryPathEdgeLine *line)
 Get the pointer to the next HATCH boundary path edge line from a DXF HATCH boundary path edge line.
DxfHatchBoundaryPathEdgeLinedxf_hatch_boundary_path_edge_line_set_next (DxfHatchBoundaryPathEdgeLine *line, DxfHatchBoundaryPathEdgeLine *next)
 Set the pointer to the next HATCH boundary path edge line for a DXF HATCH boundary path edge line.
DxfHatchBoundaryPathEdgeLinedxf_hatch_boundary_path_edge_line_get_last (DxfHatchBoundaryPathEdgeLine *line)
 Get the pointer to the last HATCH boundary path edge line from a linked list of DXF HATCH boundary path edge line.
DxfHatchBoundaryPathEdgeSplinedxf_hatch_boundary_path_edge_spline_new ()
 Allocate memory for a DXF HATCH boundary path edge spline.
DxfHatchBoundaryPathEdgeSplinedxf_hatch_boundary_path_edge_spline_init (DxfHatchBoundaryPathEdgeSpline *spline)
 Allocate memory and initialize data fields in a DXF HATCH boundary path edge spline entity.
int dxf_hatch_boundary_path_edge_spline_free (DxfHatchBoundaryPathEdgeSpline *spline)
 Free the allocated memory for a DXF HATCH boundary path edge spline and all it's data fields.
void dxf_hatch_boundary_path_edge_spline_free_chain (DxfHatchBoundaryPathEdgeSpline *hatch_boundary_path_edge_splines)
 Free the allocated memory for a chain of DXF HATCH boundary path edge splines and all their data fields.
int dxf_hatch_boundary_path_edge_spline_get_id_code (DxfHatchBoundaryPathEdgeSpline *spline)
 Get the ID code from a DXF HATCH boundary path spline.
DxfHatchBoundaryPathEdgeSplinedxf_hatch_boundary_path_edge_spline_set_id_code (DxfHatchBoundaryPathEdgeSpline *spline, int id_code)
 Set the ID code for a DXF HATCH boundary path spline.
int dxf_hatch_boundary_path_edge_spline_get_degree (DxfHatchBoundaryPathEdgeSpline *spline)
 Get the degree from a DXF HATCH boundary path spline.
DxfHatchBoundaryPathEdgeSplinedxf_hatch_boundary_path_edge_spline_set_degree (DxfHatchBoundaryPathEdgeSpline *spline, int degree)
 Set the degree for a DXF HATCH boundary path spline.
int dxf_hatch_boundary_path_edge_spline_get_rational (DxfHatchBoundaryPathEdgeSpline *spline)
 Get the rational from a DXF HATCH boundary path spline.
DxfHatchBoundaryPathEdgeSplinedxf_hatch_boundary_path_edge_spline_set_rational (DxfHatchBoundaryPathEdgeSpline *spline, int rational)
 Set the rational for a DXF HATCH boundary path spline.
int dxf_hatch_boundary_path_edge_spline_get_periodic (DxfHatchBoundaryPathEdgeSpline *spline)
 Get the periodic from a DXF HATCH boundary path spline.
DxfHatchBoundaryPathEdgeSplinedxf_hatch_boundary_path_edge_spline_set_periodic (DxfHatchBoundaryPathEdgeSpline *spline, int periodic)
 Set the periodic for a DXF HATCH boundary path spline.
int dxf_hatch_boundary_path_edge_spline_get_number_of_knots (DxfHatchBoundaryPathEdgeSpline *spline)
 Get the number_of_knots from a DXF HATCH boundary path spline.
DxfHatchBoundaryPathEdgeSplinedxf_hatch_boundary_path_edge_spline_set_number_of_knots (DxfHatchBoundaryPathEdgeSpline *spline, int number_of_knots)
 Set the number_of_knots for a DXF HATCH boundary path spline.
int dxf_hatch_boundary_path_edge_spline_get_knots (DxfHatchBoundaryPathEdgeSpline *spline, double knots[DXF_MAX_HATCH_BOUNDARY_PATH_EDGE_SPLINE_KNOTS])
 Get the knot values from a DXF HATCH boundary path spline.
DxfHatchBoundaryPathEdgeSplinedxf_hatch_boundary_path_edge_spline_set_knots (DxfHatchBoundaryPathEdgeSpline *spline, double knots[DXF_MAX_HATCH_BOUNDARY_PATH_EDGE_SPLINE_KNOTS])
 Set the knot values for a DXF HATCH boundary path spline.
int dxf_hatch_boundary_path_edge_spline_get_number_of_control_points (DxfHatchBoundaryPathEdgeSpline *spline)
 Get the number_of_control_points from a DXF HATCH boundary path spline.
DxfHatchBoundaryPathEdgeSplinedxf_hatch_boundary_path_edge_spline_set_number_of_control_points (DxfHatchBoundaryPathEdgeSpline *spline, int number_of_control_points)
 Set the number_of_control_points for a DXF HATCH boundary path spline.
DxfHatchBoundaryPathEdgeSplineCpdxf_hatch_boundary_path_edge_spline_get_control_points (DxfHatchBoundaryPathEdgeSpline *spline)
 Get the control points from a DXF HATCH boundary path spline.
DxfHatchBoundaryPathEdgeSplinedxf_hatch_boundary_path_edge_spline_set_control_points (DxfHatchBoundaryPathEdgeSpline *spline, DxfHatchBoundaryPathEdgeSplineCp *control_points)
 Set the control_points for a DXF HATCH boundary path spline.
int dxf_hatch_boundary_path_edge_spline_append_control_point (DxfHatchBoundaryPathEdgeSpline *spline, DxfHatchBoundaryPathEdgeSplineCp *control_point)
 Append a control point to a HATCH boundary path edge spline entity.
int dxf_hatch_boundary_path_edge_spline_prepend_control_point (DxfHatchBoundaryPathEdgeSpline *spline, DxfHatchBoundaryPathEdgeSplineCp *control_point)
 Prepend a control point to a HATCH boundary path edge spline entity.
DxfHatchBoundaryPathEdgeSplineCpdxf_hatch_boundary_path_edge_spline_get_control_point (DxfHatchBoundaryPathEdgeSpline *spline, int position)
 Get a control point to a HATCH boundary path edge spline entity.
int dxf_hatch_boundary_path_edge_spline_set_control_point (DxfHatchBoundaryPathEdgeSpline *spline, int position, DxfHatchBoundaryPathEdgeSplineCp *control_point)
 Set a control point to a HATCH boundary path edge spline entity.
int dxf_hatch_boundary_path_edge_spline_insert_control_point (DxfHatchBoundaryPathEdgeSpline *spline, int position, DxfHatchBoundaryPathEdgeSplineCp *control_point)
 Insert a control point to a HATCH boundary path edge spline entity.
int dxf_hatch_boundary_path_edge_spline_remove_control_point (DxfHatchBoundaryPathEdgeSpline *spline, int position)
 Remove a control point from a HATCH boundary path edge spline entity.
DxfHatchBoundaryPathEdgeSplineCpdxf_hatch_boundary_path_edge_spline_copy_control_points (DxfHatchBoundaryPathEdgeSpline *spline)
 Copy control points from a HATCH boundary path edge spline entity into a new chain of control points.
int dxf_hatch_boundary_path_edge_spline_append_knot_value (DxfHatchBoundaryPathEdgeSpline *spline, double knot_value)
 Append a knot value to a HATCH boundary path edge spline entity.
int dxf_hatch_boundary_path_edge_spline_prepend_knot_value (DxfHatchBoundaryPathEdgeSpline *spline, double knot_value)
 Prepend a knot value to a HATCH boundary path edge spline entity.
double dxf_hatch_boundary_path_edge_spline_get_knot_value (DxfHatchBoundaryPathEdgeSpline *spline, int position)
 Get a knot value from a HATCH boundary path edge spline entity.
int dxf_hatch_boundary_path_edge_spline_set_knot_value (DxfHatchBoundaryPathEdgeSpline *spline, int position, double knot_value)
 Set a knot value to a HATCH boundary path edge spline entity.
int dxf_hatch_boundary_path_edge_spline_insert_knot_value (DxfHatchBoundaryPathEdgeSpline *spline, int position, double knot_value)
 Insert a knot value into a HATCH boundary path edge spline entity.
int dxf_hatch_boundary_path_edge_spline_remove_knot_value (DxfHatchBoundaryPathEdgeSpline *spline, int position)
 Remove a knot value from a HATCH boundary path edge spline entity.
int dxf_hatch_boundary_path_edge_spline_copy_knot_values (DxfHatchBoundaryPathEdgeSpline *spline, double *knot_values[DXF_MAX_HATCH_BOUNDARY_PATH_EDGE_SPLINE_KNOTS])
 Copy knot values from a HATCH boundary path edge spline entity into an array.
DxfHatchBoundaryPathEdgeSplinedxf_hatch_boundary_path_edge_spline_get_next (DxfHatchBoundaryPathEdgeSpline *spline)
 Get the pointer to the next HATCH boundary path edge spline entity from a DXF HATCH boundary path edge spline entity.
DxfHatchBoundaryPathEdgeSplinedxf_hatch_boundary_path_edge_spline_set_next (DxfHatchBoundaryPathEdgeSpline *spline, DxfHatchBoundaryPathEdgeSpline *next)
 Set the pointer to the next HATCH boundary path spline for a DXF HATCH boundary path spline.
DxfHatchBoundaryPathEdgeSplinedxf_hatch_boundary_path_edge_spline_get_last (DxfHatchBoundaryPathEdgeSpline *spline)
 Get the pointer to the last HATCH boundary path spline from a linked list of DXF HATCH boundary path splines.
DxfHatchBoundaryPathEdgeSplineCpdxf_hatch_boundary_path_edge_spline_control_point_new ()
 Allocate memory for a DXF HATCH boundary path edge spline control point.
DxfHatchBoundaryPathEdgeSplineCpdxf_hatch_boundary_path_edge_spline_control_point_init (DxfHatchBoundaryPathEdgeSplineCp *control_point)
 Allocate memory and initialize data fields in a DXF HATCH boundary path edge spline control point entity.
int dxf_hatch_boundary_path_edge_spline_control_point_free (DxfHatchBoundaryPathEdgeSplineCp *control_point)
 Free the allocated memory for a DXF HATCH boundary path edge spline control point and all it's data fields.
void dxf_hatch_boundary_path_edge_spline_control_point_free_chain (DxfHatchBoundaryPathEdgeSplineCp *hatch_boundary_path_edge_spline_control_points)
 Free the allocated memory for a chain of DXF HATCH boundary path edge spline control points and all their data fields.
int dxf_hatch_boundary_path_edge_spline_cp_get_id_code (DxfHatchBoundaryPathEdgeSplineCp *control_point)
 Get the ID code from a DXF HATCH boundary path spline control point.
DxfHatchBoundaryPathEdgeSplineCpdxf_hatch_boundary_path_edge_spline_cp_set_id_code (DxfHatchBoundaryPathEdgeSplineCp *control_point, int id_code)
 Set the ID code for a DXF HATCH boundary path spline control point.
double dxf_hatch_boundary_path_edge_spline_cp_get_x0 (DxfHatchBoundaryPathEdgeSplineCp *control_point)
 Get the X-value of the coordinate from a DXF HATCH boundary path edge spline control point.
DxfHatchBoundaryPathEdgeSplineCpdxf_hatch_boundary_path_edge_spline_cp_set_x0 (DxfHatchBoundaryPathEdgeSplineCp *control_point, double x0)
 Set the X-value of the coordinate for a DXF HATCH boundary path edge spline control point.
double dxf_hatch_boundary_path_edge_spline_cp_get_y0 (DxfHatchBoundaryPathEdgeSplineCp *control_point)
 Get the Y-value of the coordinate from a DXF HATCH boundary path edge spline control point.
DxfHatchBoundaryPathEdgeSplineCpdxf_hatch_boundary_path_edge_spline_cp_set_y0 (DxfHatchBoundaryPathEdgeSplineCp *control_point, double y0)
 Set the Y-value of the coordinate for a DXF HATCH boundary path edge spline control point.
DxfPointdxf_hatch_boundary_path_edge_spline_cp_get_point (DxfHatchBoundaryPathEdgeSplineCp *control_point, int id_code)
 Get the point of a DXF HATCH boundary path spline control point.
DxfHatchBoundaryPathEdgeSplineCpdxf_hatch_boundary_path_edge_spline_cp_set_point (DxfHatchBoundaryPathEdgeSplineCp *control_point, DxfPoint *point)
 Set the point of a DXF HATCH boundary path spline control point.
double dxf_hatch_boundary_path_edge_spline_cp_get_weight (DxfHatchBoundaryPathEdgeSplineCp *control_point)
 Get the weight value from a HATCH boundary path edge spline control point.
DxfHatchBoundaryPathEdgeSplineCpdxf_hatch_boundary_path_edge_spline_cp_set_weight (DxfHatchBoundaryPathEdgeSplineCp *control_point, double weight)
 Set the weight value to a HATCH boundary path edge spline control point.
DxfHatchBoundaryPathEdgeSplineCpdxf_hatch_boundary_path_edge_spline_cp_get_next (DxfHatchBoundaryPathEdgeSplineCp *control_point)
 Get the pointer to the next HATCH boundary path edge arc from a DXF HATCH boundary path edge arc.
DxfHatchBoundaryPathEdgeSplineCpdxf_hatch_boundary_path_edge_spline_cp_set_next (DxfHatchBoundaryPathEdgeSplineCp *control_point, DxfHatchBoundaryPathEdgeSplineCp *next)
 Set the pointer to the next HATCH boundary path edge spline control point for a DXF HATCH boundary path edge spline control point.
DxfHatchBoundaryPathEdgeSplineCpdxf_hatch_boundary_path_edge_spline_cp_get_last (DxfHatchBoundaryPathEdgeSplineCp *control_point)
 Get the pointer to the last HATCH boundary path edge spline control point from a linked list of DXF HATCH boundary path edge spline control points.

Detailed Description

Functions for a DXF hatch entity (HATCH).

Author:
Copyright (C) 2008, 2010, 2012, 2014, 2015, 2016, 2017 by Bert Timmerman <bert.timmerman@xs4all.nl>.
Copyright (C) 2010 by Luis Matos <gass@otiliamatos.ath.cx>.
Warning:
The hatch entity requires AutoCAD version R14 or higher.
HATCH entity

Introduction.

A hatch entity is a rather complex and intricate object to write to a DXF file, nevertheless, we'll have to try.
First a header and common values for the hatch is written to file, then follows the hatch boundary data and the hatch pattern data.

  1. dxf_hatch_write ():
    write hatch header and common values.

    Now follows the hatch boundary path data and the hatch pattern data:

  2. dxf_hatch_boundary_path_write ():
    write boundary data which consists of one or more of either:

    1. dxf_hatch_boundary_path_edge_write ():
      write the edges of one or more boundary paths, edges consisting of either:

      1. dxf_hatch_boundary_path_edge_line_write ():
        write a line entity.

      2. dxf_hatch_boundary_path_edge_arc_write ():
        write an arc entity.

      3. dxf_hatch_boundary_path_edge_ellipse_write ():
        write an ellipse entity.

      4. dxf_hatch_boundary_path_edge_spline_write ():
        write a spline entity.

      The edge entities making a boundary path should form a closed loop, for else the hatch pattern will "escape" from this area through the "gaps" in the boundary path.

      In case a very dense hatch pattern is chosen, it may take very long for AutoCAD (or any other CAD application using the DXF file) to load the hatch entity, for it will try to apply the hatch pattern to it's entire universe ;-(

      It is for this reason that applying a very dense hatch pattern is considered a Bad Thing (TM); better use the SOLID hatch pattern to obtain a similar result.

    2. dxf_hatch_boundary_path_polyline_write ():
      write a polyline entity and vertices.

      1. dxf_hatch_boundary_polyline_vertex_write ():
        write a series of vertices (minimum should be 3).

      The polyline making a boundary path should form a closed loop, for else the hatch pattern will "escape" from this area through the "gaps" in the boundary path.

      In case a very dense hatch pattern is chosen, it may take very long for AutoCAD (or any other CAD application using the DXF file) to load the hatch entity, for it will try to apply the hatch pattern to it's entire universe ;-(

      It is for this reason that applying a very dense hatch pattern is considered a Bad Thing (TM); better use the SOLID hatch pattern to obtain a similar result.

  3. dxf_hatch_hatch_pattern_data_write ():
    write hatch pattern data consisting of definition line(s) and seed point(s).

    1. dxf_hatch_pattern_def_line_write ();
      write one or more pattern definition lines which are either continuous or dashed.
    2. dxf_hatch_pattern_seed_point_write ();
      write one or more seed points.



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 hatch.c.


Function Documentation

DxfHatch* dxf_hatch_new ( )

Allocate memory for a DXF HATCH.

Fill the memory contents with zeros.

Definition at line 53 of file hatch.c.

References _, DXF_DEBUG_BEGIN, and DXF_DEBUG_END.

Referenced by dxf_hatch_init().

DxfHatch* dxf_hatch_init ( DxfHatch hatch)

Allocate memory and initialize data fields in a DXF HATCH entity.

Returns:
NULL when no memory was allocated, a pointer to the allocated memory when succesful.
Parameters:
hatchDXF hatch entity.

Definition at line 91 of file hatch.c.

References _, dxf_hatch_struct::associative, dxf_hatch_struct::binary_graphics_data, dxf_hatch_struct::color, dxf_hatch_struct::def_lines, dxf_hatch_struct::dictionary_owner_hard, dxf_hatch_struct::dictionary_owner_soft, dxf_binary_graphics_data_init(), DXF_COLOR_BYLAYER, DXF_DEBUG_BEGIN, DXF_DEBUG_END, DXF_DEFAULT_LAYER, DXF_DEFAULT_LINETYPE, DXF_DEFAULT_LINETYPE_SCALE, DXF_DEFAULT_VISIBILITY, dxf_hatch_boundary_path_init(), dxf_hatch_new(), dxf_hatch_pattern_def_line_init(), dxf_hatch_pattern_init(), dxf_hatch_pattern_seedpoint_init(), DXF_MODELSPACE, dxf_hatch_struct::extr_x0, dxf_hatch_struct::extr_y0, dxf_hatch_struct::extr_z0, dxf_hatch_struct::graphics_data_size, dxf_hatch_struct::hatch_pattern_type, dxf_hatch_struct::hatch_style, dxf_hatch_struct::id_code, dxf_hatch_struct::layer, dxf_hatch_struct::linetype, dxf_hatch_struct::linetype_scale, dxf_hatch_struct::next, dxf_hatch_struct::number_of_boundary_paths, dxf_hatch_struct::number_of_pattern_def_lines, dxf_hatch_struct::number_of_seed_points, dxf_hatch_struct::paperspace, dxf_hatch_struct::paths, dxf_hatch_struct::pattern_angle, dxf_hatch_struct::pattern_double, dxf_hatch_struct::pattern_scale, dxf_hatch_struct::patterns, dxf_hatch_struct::pixel_size, dxf_hatch_struct::seed_points, dxf_hatch_struct::solid_fill, dxf_hatch_struct::thickness, dxf_hatch_struct::visibility, dxf_hatch_struct::x0, dxf_hatch_struct::y0, and dxf_hatch_struct::z0.

Here is the call graph for this function:

int dxf_hatch_write ( DxfFile fp,
DxfHatch hatch 
)

Write DXF output to a file for a hatch entity (HATCH).

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:
fpfile pointer to output file (or device).
hatchDXF hatch entity.

Definition at line 160 of file hatch.c.

References _, dxf_file_struct::acad_version_number, dxf_hatch_struct::associative, AutoCAD_11, AutoCAD_13, AutoCAD_14, dxf_hatch_struct::binary_graphics_data, dxf_hatch_struct::color, dxf_binary_graphics_data_struct::data_line, dxf_hatch_struct::def_lines, dxf_hatch_struct::dictionary_owner_hard, dxf_hatch_struct::dictionary_owner_soft, dxf_binary_graphics_data_get_next(), DXF_COLOR_BYLAYER, DXF_DEBUG_BEGIN, DXF_DEBUG_END, DXF_DEFAULT_LAYER, DXF_DEFAULT_LINETYPE, DXF_FLATLAND, dxf_hatch_boundary_path_write(), dxf_hatch_pattern_def_line_free(), dxf_hatch_pattern_def_line_write(), dxf_hatch_pattern_seedpoint_free(), dxf_hatch_pattern_seedpoint_write(), DXF_PAPERSPACE, dxf_hatch_struct::elevation, dxf_hatch_struct::extr_x0, dxf_hatch_struct::extr_y0, dxf_hatch_struct::extr_z0, dxf_file_struct::fp, dxf_hatch_struct::graphics_data_size, dxf_hatch_struct::hatch_pattern_type, dxf_hatch_struct::hatch_style, dxf_hatch_struct::id_code, dxf_hatch_struct::layer, dxf_hatch_struct::linetype, dxf_hatch_struct::linetype_scale, dxf_hatch_pattern_seedpoint_struct::next, dxf_hatch_pattern_def_line_struct::next, dxf_hatch_struct::number_of_boundary_paths, dxf_hatch_struct::number_of_pattern_def_lines, dxf_hatch_struct::number_of_seed_points, dxf_hatch_struct::paperspace, dxf_hatch_struct::paths, dxf_hatch_struct::pattern_angle, dxf_hatch_struct::pattern_double, dxf_hatch_struct::pattern_name, dxf_hatch_struct::pattern_scale, dxf_hatch_struct::pixel_size, dxf_hatch_struct::seed_points, dxf_hatch_struct::solid_fill, dxf_hatch_struct::thickness, dxf_hatch_struct::visibility, dxf_hatch_struct::x0, dxf_hatch_struct::y0, and dxf_hatch_struct::z0.

Here is the call graph for this function:

int dxf_hatch_free ( DxfHatch hatch)

Free the allocated memory for a DXF HATCH and all it's data fields.

Returns:
EXIT_SUCCESS when done, or EXIT_FAILURE when an error occurred.
Parameters:
hatchPointer to the memory occupied by the DXF HATCH entity.

Definition at line 353 of file hatch.c.

References _, dxf_hatch_struct::binary_graphics_data, dxf_hatch_struct::def_lines, dxf_hatch_struct::dictionary_owner_hard, dxf_hatch_struct::dictionary_owner_soft, dxf_binary_graphics_data_free_chain(), DXF_DEBUG_BEGIN, DXF_DEBUG_END, dxf_hatch_pattern_free_chain(), dxf_hatch_struct::layer, dxf_hatch_struct::linetype, dxf_hatch_struct::next, dxf_hatch_struct::paths, dxf_hatch_struct::pattern_name, dxf_hatch_struct::patterns, and dxf_hatch_struct::seed_points.

Referenced by dxf_hatch_free_chain().

Here is the call graph for this function:

void dxf_hatch_free_chain ( DxfHatch hatches)

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

Parameters:
hatchespointer to the chain of DXF HATCH entities.

Definition at line 402 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, dxf_hatch_free(), and dxf_hatch_struct::next.

Here is the call graph for this function:

int dxf_hatch_get_id_code ( DxfHatch hatch)

Get the ID code from a DXF HATCH.

Returns:
ID code.
Parameters:
hatcha pointer to a DXF HATCH.

Definition at line 436 of file hatch.c.

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

DxfHatch* dxf_hatch_set_id_code ( DxfHatch hatch,
int  id_code 
)

Set the ID code for a DXF HATCH.

Parameters:
hatcha pointer to a DXF HATCH pattern.
id_codeIdentification number for the entity.
This is to be an unique (sequential) number in the DXF file.

Definition at line 474 of file hatch.c.

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

char* dxf_hatch_get_linetype ( DxfHatch hatch)

Get the linetype from a DXF HATCH entity.

Returns:
linetype when sucessful, NULL when an error occurred.
Parameters:
hatcha pointer to a DXF HATCH entity.

Definition at line 516 of file hatch.c.

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

DxfHatch* dxf_hatch_set_linetype ( DxfHatch hatch,
char *  linetype 
)

Set the linetype for a DXF HATCH entity.

Parameters:
hatcha pointer to a DXF HATCH entity.
linetypea string containing the linetype for the entity.

Definition at line 554 of file hatch.c.

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

char* dxf_hatch_get_layer ( DxfHatch hatch)

Get the layer from a DXF HATCH entity.

Returns:
layer when sucessful, NULL when an error occurred.
Parameters:
hatcha pointer to a DXF HATCH entity.

Definition at line 594 of file hatch.c.

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

DxfHatch* dxf_hatch_set_layer ( DxfHatch hatch,
char *  layer 
)

Set the layer for a DXF HATCH entity.

Parameters:
hatcha pointer to a DXF HATCH entity.
layera string containing the layer for the entity.

Definition at line 632 of file hatch.c.

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

double dxf_hatch_get_elevation ( DxfHatch hatch)

Get the elevation from a DXF HATCH entity.

Returns:
elevation.
Parameters:
hatcha pointer to a DXF HATCH entity.

Definition at line 672 of file hatch.c.

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

DxfHatch* dxf_hatch_set_elevation ( DxfHatch hatch,
double  elevation 
)

Set the elevation for a DXF HATCH entity.

Parameters:
hatcha pointer to a DXF HATCH entity.
elevationthe elevation to be set for the entity.

Definition at line 703 of file hatch.c.

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

double dxf_hatch_get_thickness ( DxfHatch hatch)

Get the thickness from a DXF HATCH entity.

Returns:
thickness.
Parameters:
hatcha pointer to a DXF HATCH entity.

Definition at line 736 of file hatch.c.

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

DxfHatch* dxf_hatch_set_thickness ( DxfHatch hatch,
double  thickness 
)

Set the thickness for a DXF HATCH entity.

Parameters:
hatcha pointer to a DXF HATCH entity.
thicknessthe thickness to be set for the entity.

Definition at line 773 of file hatch.c.

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

double dxf_hatch_get_linetype_scale ( DxfHatch hatch)

Get the linetype scale from a DXF HATCH entity.

Returns:
linetype scale.
Parameters:
hatcha pointer to a DXF HATCH entity.

Definition at line 812 of file hatch.c.

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

DxfHatch* dxf_hatch_set_linetype_scale ( DxfHatch hatch,
double  linetype_scale 
)

Set the linetype scale for a DXF HATCH entity.

Parameters:
hatcha pointer to a DXF HATCH entity.
linetype_scalethe linetype scale to be set for the entity.

Definition at line 850 of file hatch.c.

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

int16_t dxf_hatch_get_visibility ( DxfHatch hatch)

Get the visibility from a DXF HATCH entity.

Returns:
visibility.
Parameters:
hatcha pointer to a DXF HATCH entity.

Definition at line 890 of file hatch.c.

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

DxfHatch* dxf_hatch_set_visibility ( DxfHatch hatch,
int16_t  visibility 
)

Set the visibility for a DXF HATCH entity.

Parameters:
hatcha pointer to a DXF HATCH entity.
visibilitythe visibility to be set for the entity.

Definition at line 935 of file hatch.c.

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

int dxf_hatch_get_color ( DxfHatch hatch)

Get the color from a DXF HATCH entity.

Returns:
color.
Parameters:
hatcha pointer to a DXF HATCH entity.

Definition at line 982 of file hatch.c.

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

DxfHatch* dxf_hatch_set_color ( DxfHatch hatch,
int  color 
)

Set the color for a DXF HATCH entity.

Parameters:
hatcha pointer to a DXF HATCH entity.
colorthe color to be set for the entity.

Definition at line 1019 of file hatch.c.

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

int dxf_hatch_get_paperspace ( DxfHatch hatch)

Get the paperspace flag value from a DXF HATCH entity.

Returns:
paperspace flag value.
Parameters:
hatcha pointer to a DXF HATCH entity.

Definition at line 1060 of file hatch.c.

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

DxfHatch* dxf_hatch_set_paperspace ( DxfHatch hatch,
int  paperspace 
)

Set the paperspace flag for a DXF HATCH entity.

Parameters:
hatcha pointer to a DXF HATCH entity.
paperspacethe paperspace flag value to be set for the entity.

Definition at line 1103 of file hatch.c.

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

int dxf_hatch_get_graphics_data_size ( DxfHatch hatch)

Get the graphics data size value from a DXF HATCH entity.

Returns:
graphics data size flag value.
Parameters:
hatcha pointer to a DXF HATCH entity.

Definition at line 1150 of file hatch.c.

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

DxfHatch* dxf_hatch_set_graphics_data_size ( DxfHatch hatch,
int  graphics_data_size 
)

Set the graphics data size value for a DXF HATCH entity.

Parameters:
hatcha pointer to a DXF HATCH entity.
graphics_data_sizethe graphics data size value to be set for the entity.

Definition at line 1193 of file hatch.c.

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

DxfBinaryGraphicsData* dxf_hatch_get_binary_graphics_data ( DxfHatch hatch)

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

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

Definition at line 1244 of file hatch.c.

References _, dxf_hatch_struct::binary_graphics_data, DEBUG, DXF_DEBUG_BEGIN, and DXF_DEBUG_END.

DxfHatch* dxf_hatch_set_binary_graphics_data ( DxfHatch hatch,
DxfBinaryGraphicsData data 
)

Set the pointer to the binary_graphics_data for a DXF HATCH entity.

Parameters:
hatcha pointer to a DXF HATCH entity.
dataa string containing the pointer to the binary_graphics_data for the entity.

Definition at line 1283 of file hatch.c.

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

char* dxf_hatch_get_dictionary_owner_soft ( DxfHatch hatch)

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

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

Definition at line 1327 of file hatch.c.

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

DxfHatch* dxf_hatch_set_dictionary_owner_soft ( DxfHatch hatch,
char *  dictionary_owner_soft 
)

Set the pointer to the dictionary_owner_soft for a DXF HATCH entity.

Parameters:
hatcha pointer to a DXF HATCH entity.
dictionary_owner_softa string containing the pointer to the dictionary_owner_soft for the entity.

Definition at line 1366 of file hatch.c.

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

char* dxf_hatch_get_dictionary_owner_hard ( DxfHatch hatch)

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

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

Definition at line 1410 of file hatch.c.

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

DxfHatch* dxf_hatch_set_dictionary_owner_hard ( DxfHatch hatch,
char *  dictionary_owner_hard 
)

Set the pointer to the dictionary_owner_hard for a DXF HATCH entity.

Parameters:
hatcha pointer to a DXF HATCH entity.
dictionary_owner_harda string containing the pointer to the dictionary_owner_hard for the entity.

Definition at line 1449 of file hatch.c.

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

char* dxf_hatch_get_pattern_name ( DxfHatch hatch)

Get the pattern name from a DXF HATCH entity.

Returns:
pattern name when sucessful, NULL when an error occurred.
Parameters:
hatcha pointer to a DXF HATCH entity.

Definition at line 1490 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_hatch_struct::pattern_name.

DxfHatch* dxf_hatch_set_pattern_name ( DxfHatch hatch,
char *  pattern_name 
)

Set the pattern name for a DXF HATCH entity.

Parameters:
hatcha pointer to a DXF HATCH entity.
pattern_namea string containing the pattern_name for the entity.

Definition at line 1528 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_hatch_struct::pattern_name.

double dxf_hatch_get_x0 ( DxfHatch hatch)

Get the base point X-value from a DXF HATCH.

Returns:
base point X-value.
Parameters:
hatcha pointer to a DXF HATCH.

Definition at line 1568 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_hatch_struct::x0.

DxfHatch* dxf_hatch_set_x0 ( DxfHatch hatch,
double  x0 
)

Set the base point X-value for a DXF HATCH.

Parameters:
hatcha pointer to a DXF HATCH.
x0the base point X-value to be set for the entity.

Definition at line 1599 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_hatch_struct::x0.

double dxf_hatch_get_y0 ( DxfHatch hatch)

Get the base point Y-value from a DXF HATCH.

Returns:
base point Y-value.
Parameters:
hatcha pointer to a DXF HATCH.

Definition at line 1632 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_hatch_struct::y0.

DxfHatch* dxf_hatch_set_y0 ( DxfHatch hatch,
double  y0 
)

Set the base point Y-value for a DXF HATCH.

Parameters:
hatcha pointer to a DXF HATCH.
y0the base point Y-value to be set for the entity.

Definition at line 1663 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_hatch_struct::y0.

double dxf_hatch_get_z0 ( DxfHatch hatch)

Get the base point Z-value from a DXF HATCH.

Returns:
base point Z-value.
Parameters:
hatcha pointer to a DXF HATCH.

Definition at line 1696 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_hatch_struct::z0.

DxfHatch* dxf_hatch_set_z0 ( DxfHatch hatch,
double  z0 
)

Set the base point Z-value for a DXF HATCH.

Parameters:
hatcha pointer to a DXF HATCH.
z0the base point Z-value to be set for the entity.

Definition at line 1727 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_hatch_struct::z0.

double dxf_hatch_get_pattern_scale ( DxfHatch hatch)

Get the pattern scale from a DXF HATCH.

Returns:
pattern scale.
Parameters:
hatcha pointer to a DXF HATCH.

Definition at line 1760 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_hatch_struct::pattern_scale.

DxfHatch* dxf_hatch_set_pattern_scale ( DxfHatch hatch,
double  pattern_scale 
)

Set the pattern scale for a DXF HATCH.

Parameters:
hatcha pointer to a DXF HATCH.
pattern_scalethe pattern scale to be set for the entity.

Definition at line 1791 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_hatch_struct::pattern_scale.

double dxf_hatch_get_pixel_size ( DxfHatch hatch)

Get the pixel size from a DXF HATCH.

Returns:
pixel size.
Parameters:
hatcha pointer to a DXF HATCH.

Definition at line 1824 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_hatch_struct::pixel_size.

DxfHatch* dxf_hatch_set_pixel_size ( DxfHatch hatch,
double  pixel_size 
)

Set the pixel size for a DXF HATCH.

Parameters:
hatcha pointer to a DXF HATCH.
pixel_sizethe pixel size to be set for the entity.

Definition at line 1855 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_hatch_struct::pixel_size.

double dxf_hatch_get_pattern_angle ( DxfHatch hatch)

Get the pattern angle from a DXF HATCH.

Returns:
pattern angle.
Parameters:
hatcha pointer to a DXF HATCH.

Definition at line 1888 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_hatch_struct::pattern_angle.

DxfHatch* dxf_hatch_set_pattern_angle ( DxfHatch hatch,
double  pattern_angle 
)

Set the pattern angle for a DXF HATCH.

Parameters:
hatcha pointer to a DXF HATCH.
pattern_anglethe pattern angle to be set for the entity.

Definition at line 1919 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_hatch_struct::pattern_angle.

int dxf_hatch_get_solid_fill ( DxfHatch hatch)

Get the solid fill flag value from a DXF HATCH.

Returns:
solid fill flag value.
Parameters:
hatcha pointer to a DXF HATCH.

Definition at line 1952 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_hatch_struct::solid_fill.

DxfHatch* dxf_hatch_set_solid_fill ( DxfHatch hatch,
int  solid_fill 
)

Set the solid fill flag value for a DXF HATCH.

Parameters:
hatcha pointer to a DXF HATCH pattern.
solid_fillthe solid fill flag value for the entity.

Definition at line 1997 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_hatch_struct::solid_fill.

int dxf_hatch_get_associative ( DxfHatch hatch)

Get the associative flag value from a DXF HATCH.

Returns:
associative flag value.
Parameters:
hatcha pointer to a DXF HATCH.

Definition at line 2044 of file hatch.c.

References _, dxf_hatch_struct::associative, DXF_DEBUG_BEGIN, and DXF_DEBUG_END.

DxfHatch* dxf_hatch_set_associative ( DxfHatch hatch,
int  associative 
)

Set the associative flag value for a DXF HATCH.

Parameters:
hatcha pointer to a DXF HATCH pattern.
associativethe associative flag value for the entity.

Definition at line 2089 of file hatch.c.

References _, dxf_hatch_struct::associative, DXF_DEBUG_BEGIN, and DXF_DEBUG_END.

int dxf_hatch_get_hatch_style ( DxfHatch hatch)

Get the hatch_style flag value from a DXF HATCH.

Returns:
hatch_style flag value.
Parameters:
hatcha pointer to a DXF HATCH.

Definition at line 2136 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_hatch_struct::hatch_style.

DxfHatch* dxf_hatch_set_hatch_style ( DxfHatch hatch,
int  hatch_style 
)

Set the hatch_style flag value for a DXF HATCH.

Parameters:
hatcha pointer to a DXF HATCH pattern.
hatch_stylethe hatch_style flag value for the entity.

Definition at line 2181 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_hatch_struct::hatch_style.

int dxf_hatch_get_hatch_pattern_type ( DxfHatch hatch)

Get the hatch_pattern_type flag value from a DXF HATCH.

Returns:
hatch_pattern_type flag value.
Parameters:
hatcha pointer to a DXF HATCH.

Definition at line 2228 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_hatch_struct::hatch_pattern_type.

DxfHatch* dxf_hatch_set_hatch_pattern_type ( DxfHatch hatch,
int  hatch_pattern_type 
)

Set the hatch_pattern_type flag value for a DXF HATCH.

Parameters:
hatcha pointer to a DXF HATCH pattern.
hatch_pattern_typethe hatch_pattern_type flag value for the entity.

Definition at line 2273 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_hatch_struct::hatch_pattern_type.

int dxf_hatch_get_pattern_double ( DxfHatch hatch)

Get the pattern_double flag value from a DXF HATCH.

Returns:
pattern_double flag value.
Parameters:
hatcha pointer to a DXF HATCH.

Definition at line 2320 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_hatch_struct::pattern_double.

DxfHatch* dxf_hatch_set_pattern_double ( DxfHatch hatch,
int  pattern_double 
)

Set the pattern_double flag value for a DXF HATCH.

Parameters:
hatcha pointer to a DXF HATCH pattern.
pattern_doublethe pattern_double flag value for the entity.

Definition at line 2365 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_hatch_struct::pattern_double.

double dxf_hatch_get_extr_x0 ( DxfHatch hatch)

Get the X-value of the extrusion direction from a DXF HATCH.

Returns:
X-value.
Parameters:
hatcha pointer to a DXF HATCH.

Definition at line 2412 of file hatch.c.

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

DxfHatch* dxf_hatch_set_extr_x0 ( DxfHatch hatch,
double  extr_x0 
)

Set the X-value of the extrusion direction for a DXF HATCH.

Parameters:
hatcha pointer to a DXF HATCH.
extr_x0the X-value of the extrusion direction to be set for the entity.

Definition at line 2443 of file hatch.c.

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

double dxf_hatch_get_extr_y0 ( DxfHatch hatch)

Get the Y-value of the extrusion direction from a DXF HATCH.

Returns:
Y-value.
Parameters:
hatcha pointer to a DXF HATCH.

Definition at line 2476 of file hatch.c.

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

DxfHatch* dxf_hatch_set_extr_y0 ( DxfHatch hatch,
double  extr_y0 
)

Set the Y-value of the extrusion direction for a DXF HATCH.

Parameters:
hatcha pointer to a DXF HATCH.
extr_y0the Y-value of the extrusion direction to be set for the entity.

Definition at line 2507 of file hatch.c.

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

double dxf_hatch_get_extr_z0 ( DxfHatch hatch)

Get the Z-value of the extrusion direction from a DXF HATCH.

Returns:
Z-value.
Parameters:
hatcha pointer to a DXF HATCH.

Definition at line 2540 of file hatch.c.

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

DxfHatch* dxf_hatch_set_extr_z0 ( DxfHatch hatch,
double  extr_z0 
)

Set the Z-value of the extrusion direction for a DXF HATCH.

Parameters:
hatcha pointer to a DXF HATCH.
extr_z0the Z-value of the extrusion direction to be set for the entity.

Definition at line 2571 of file hatch.c.

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

DxfHatchBoundaryPath* dxf_hatch_get_boundary_paths ( DxfHatch hatch)

Get the first boundary path from a DXF HATCH.

Returns:
pointer to the first boundary path.
Warning:
No checks are performed on the returned pointer.
Parameters:
hatcha pointer to a DXF HATCH.

Definition at line 2606 of file hatch.c.

References _, DEBUG, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_hatch_struct::paths.

DxfHatch* dxf_hatch_set_boundary_paths ( DxfHatch hatch,
DxfHatchBoundaryPath paths 
)

Set the first boundary path for a DXF HATCH.

Parameters:
hatcha pointer to a DXF HATCH.
pathsthe first boundary path to be set for the entity.

Definition at line 2644 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_hatch_struct::paths.

DxfHatchPattern* dxf_hatch_get_patterns ( DxfHatch hatch)

Get the first pattern from a DXF HATCH.

Returns:
pointer to the first pattern.
Warning:
No checks are performed on the returned pointer.
Parameters:
hatcha pointer to a DXF HATCH.

Definition at line 2686 of file hatch.c.

References _, DEBUG, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_hatch_struct::patterns.

DxfHatch* dxf_hatch_set_patterns ( DxfHatch hatch,
DxfHatchPattern patterns 
)

Set the first pattern for a DXF HATCH.

Parameters:
hatcha pointer to a DXF HATCH.
patternsthe first pattern to be set for the entity.

Definition at line 2724 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_hatch_struct::patterns.

DxfHatch* dxf_hatch_get_next ( DxfHatch hatch)

Get the pointer to the next HATCH entity from a DXF HATCH entity.

Returns:
pointer to the next HATCH entity.
Warning:
No checks are performed on the returned pointer.
Parameters:
hatcha pointer to a DXF HATCH entity.

Definition at line 2767 of file hatch.c.

References _, DEBUG, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_hatch_struct::next.

DxfHatch* dxf_hatch_set_next ( DxfHatch hatch,
DxfHatch next 
)

Set the pointer to the next HATCH for a DXF HATCH entity.

Parameters:
hatcha pointer to a DXF HATCH entity.
nexta pointer to the next HATCH for the entity.

Definition at line 2806 of file hatch.c.

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

DxfHatch* dxf_hatch_get_last ( DxfHatch hatch)

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

Returns:
pointer to the last HATCH entity.
Warning:
No checks are performed on the returned pointer.
Parameters:
hatcha pointer to a DXF HATCH entity.

Definition at line 2849 of file hatch.c.

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

DxfHatchPattern* dxf_hatch_pattern_new ( )

Allocate memory for a DXF HATCH pattern.

Fill the memory contents with zeros.

Definition at line 2893 of file hatch.c.

References _, DXF_DEBUG_BEGIN, and DXF_DEBUG_END.

Referenced by dxf_hatch_pattern_init().

DxfHatchPattern* dxf_hatch_pattern_init ( DxfHatchPattern pattern)

Allocate memory and initialize data fields in a DXF HATCH pattern entity.

Returns:
NULL when no memory was allocated, a pointer to the allocated memory when succesful.
Parameters:
patternDXF hatch pattern entity.

Definition at line 2931 of file hatch.c.

References _, dxf_hatch_pattern_struct::def_lines, DXF_DEBUG_BEGIN, DXF_DEBUG_END, dxf_hatch_pattern_def_line_init(), dxf_hatch_pattern_new(), dxf_hatch_pattern_seedpoint_init(), dxf_hatch_pattern_struct::id_code, dxf_hatch_pattern_struct::next, dxf_hatch_pattern_struct::number_of_def_lines, dxf_hatch_pattern_struct::number_of_seed_points, and dxf_hatch_pattern_struct::seed_points.

Referenced by dxf_hatch_init().

Here is the call graph for this function:

int dxf_hatch_pattern_free ( DxfHatchPattern pattern)

Free the allocated memory for a DXF HATCH pattern and all it's data fields.

Returns:
EXIT_SUCCESS when done, or EXIT_FAILURE when an error occurred.
Parameters:
patternPointer to the memory occupied by the DXF HATCH pattern entity.

Definition at line 2976 of file hatch.c.

References _, dxf_hatch_pattern_struct::def_lines, DXF_DEBUG_BEGIN, DXF_DEBUG_END, dxf_hatch_pattern_struct::next, and dxf_hatch_pattern_struct::seed_points.

Referenced by dxf_hatch_pattern_free_chain().

void dxf_hatch_pattern_free_chain ( DxfHatchPattern patterns)

Free the allocated memory for a chain of DXF HATCH patterns and all their data fields.

Parameters:
patternspointer to the chain of DXF HATCH patterns.

Definition at line 3017 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, dxf_hatch_pattern_free(), and dxf_hatch_pattern_struct::next.

Referenced by dxf_hatch_free().

Here is the call graph for this function:

int dxf_hatch_pattern_get_id_code ( DxfHatchPattern pattern)

Get the ID code from a DXF HATCH pattern.

Returns:
ID code.
Parameters:
patterna pointer to a DXF HATCH pattern.

Definition at line 3051 of file hatch.c.

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

DxfHatchPattern* dxf_hatch_pattern_set_id_code ( DxfHatchPattern pattern,
int  id_code 
)

Set the ID code for a DXF HATCH pattern.

Parameters:
patterna pointer to a DXF HATCH pattern.
id_codeIdentification number for the entity.
This is to be an unique (sequential) number in the DXF file.

Definition at line 3089 of file hatch.c.

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

int dxf_hatch_pattern_get_number_of_def_lines ( DxfHatchPattern pattern)

Get the number of hatch pattern definition lines from a DXF HATCH pattern.

Returns:
Number of hatch pattern definition lines.
Parameters:
patterna pointer to a DXF HATCH pattern.

Definition at line 3132 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_hatch_pattern_struct::number_of_def_lines.

DxfHatchPattern* dxf_hatch_pattern_set_number_of_def_lines ( DxfHatchPattern pattern,
int  number_of_def_lines 
)

Set the number of hatch pattern definition lines for a DXF HATCH pattern.

Parameters:
patterna pointer to a DXF HATCH pattern.
number_of_def_linesNumber of hatch pattern definition lines.

Definition at line 3171 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_hatch_pattern_struct::number_of_def_lines.

DxfHatchPatternDefLine* dxf_hatch_pattern_get_def_lines ( DxfHatchPattern pattern)

Get a pointer to the first definition line from a DXF HATCH pattern.

Returns:
pointer a pointer to the definition line.
Warning:
No checks are performed on the returned pointer.
Parameters:
patterna pointer to a DXF HATCH pattern def line.

Definition at line 3214 of file hatch.c.

References _, DEBUG, dxf_hatch_pattern_struct::def_lines, DXF_DEBUG_BEGIN, and DXF_DEBUG_END.

DxfHatchPattern* dxf_hatch_pattern_set_def_lines ( DxfHatchPattern pattern,
DxfHatchPatternDefLine def_lines 
)

Set the pointer for the first definition line for a DXF HATCH pattern.

Parameters:
patterna pointer to a DXF HATCH pattern.
def_linesa pointer to the first definition line.

Definition at line 3246 of file hatch.c.

References _, dxf_hatch_pattern_struct::def_lines, DXF_DEBUG_BEGIN, and DXF_DEBUG_END.

int dxf_hatch_pattern_get_number_of_seed_points ( DxfHatchPattern pattern)

Get the number of hatch pattern seed points from a DXF HATCH pattern.

Returns:
Number of hatch pattern seed points.
Parameters:
patterna pointer to a DXF HATCH pattern.

Definition at line 3287 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_hatch_pattern_struct::number_of_seed_points.

DxfHatchPattern* dxf_hatch_pattern_set_number_of_seed_points ( DxfHatchPattern pattern,
int  number_of_seed_points 
)

Set the number of hatch pattern seed points for a DXF HATCH pattern.

Parameters:
patterna pointer to a DXF HATCH pattern.
number_of_seed_pointsnumber of hatch pattern seed points.

Definition at line 3326 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_hatch_pattern_struct::number_of_seed_points.

DxfHatchPatternSeedPoint* dxf_hatch_pattern_get_seed_points ( DxfHatchPattern pattern)

Get a pointer to the first seed point from a DXF HATCH pattern.

Returns:
pointer a pointer to the seed point.
Warning:
No checks are performed on the returned pointer.
Parameters:
patterna pointer to a DXF HATCH pattern def line.

Definition at line 3369 of file hatch.c.

References _, DEBUG, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_hatch_pattern_struct::seed_points.

DxfHatchPattern* dxf_hatch_pattern_set_seed_points ( DxfHatchPattern pattern,
DxfHatchPatternSeedPoint seed_points 
)

Set the pointer for the first seed point for a DXF HATCH pattern.

Parameters:
patterna pointer to a DXF HATCH pattern.
seed_pointsa pointer to the first seed point.

Definition at line 3401 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_hatch_pattern_struct::seed_points.

DxfHatchPattern* dxf_hatch_pattern_get_next ( DxfHatchPattern pattern)

Get the pointer to the next HATCH pattern from a DXF HATCH pattern def line.

Returns:
pointer to the next HATCH pattern.
Warning:
No checks are performed on the returned pointer.
Parameters:
patterna pointer to a DXF HATCH pattern.

Definition at line 3444 of file hatch.c.

References _, DEBUG, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_hatch_pattern_struct::next.

DxfHatchPattern* dxf_hatch_pattern_set_next ( DxfHatchPattern pattern,
DxfHatchPatternDefLine next 
)

Set the pointer to the next HATCH pattern for a DXF HATCH pattern.

Parameters:
patterna pointer to a DXF HATCH pattern.
nexta pointer to the next HATCH pattern for the entity.

Definition at line 3483 of file hatch.c.

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

DxfHatchPattern* dxf_hatch_pattern_get_last ( DxfHatchPattern pattern)

Get the pointer to the last HATCH pattern from a linked list of DXF HATCH patterns.

Returns:
pointer to the last HATCH pattern.
Warning:
No checks are performed on the returned pointer.
Parameters:
patterna pointer to a DXF HATCH pattern.

Definition at line 3527 of file hatch.c.

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

DxfHatchPatternDefLineDash* dxf_hatch_pattern_def_line_dash_new ( )

Allocate memory for a DXF HATCH pattern definition line dash.

Fill the memory contents with zeros.

Definition at line 3571 of file hatch.c.

References _, DXF_DEBUG_BEGIN, and DXF_DEBUG_END.

Referenced by dxf_hatch_pattern_def_line_dash_init().

DxfHatchPatternDefLineDash* dxf_hatch_pattern_def_line_dash_init ( DxfHatchPatternDefLineDash dash)

Allocate memory and initialize data fields in a DXF HATCH pattern definition line dash entity.

Returns:
NULL when no memory was allocated, a pointer to the allocated memory when succesful.
Parameters:
dashDXF hatch pattern definition line dash entity.

Definition at line 3609 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, dxf_hatch_pattern_def_line_dash_new(), dxf_hatch_pattern_def_line_dash_struct::length, and dxf_hatch_pattern_def_line_dash_struct::next.

Here is the call graph for this function:

int dxf_hatch_pattern_def_line_dash_free ( DxfHatchPatternDefLineDash dash)

Free the allocated memory for a DXF HATCH pattern definition line dash and all it's data fields.

Returns:
EXIT_SUCCESS when done, or EXIT_FAILURE when an error occurred.
Parameters:
dashPointer to the memory occupied by the DXF HATCH pattern definition line dash entity.

Definition at line 3644 of file hatch.c.

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

Referenced by dxf_hatch_pattern_def_line_dash_free_chain().

void dxf_hatch_pattern_def_line_dash_free_chain ( DxfHatchPatternDefLineDash dashes)

Free the allocated memory for a chain of DXF HATCH pattern definition line dashes and all their data fields.

Parameters:
dashespointer to the chain of DXF HATCH pattern definition line dashes.

Definition at line 3683 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, dxf_hatch_pattern_def_line_dash_free(), and dxf_hatch_pattern_def_line_dash_struct::next.

Here is the call graph for this function:

double dxf_hatch_pattern_def_line_dash_get_length ( DxfHatchPatternDefLineDash dash)

Get the length value from a DXF HATCH pattern def line dash.

Returns:
length value.
Parameters:
dasha pointer to a DXF HATCH pattern def line dash.

Definition at line 3719 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_hatch_pattern_def_line_dash_struct::length.

DxfHatchPatternDefLineDash* dxf_hatch_pattern_def_line_dash_set_length ( DxfHatchPatternDefLineDash dash,
double  length 
)

Set the length value for a DXF HATCH pattern def line dash.

Parameters:
dasha pointer to a DXF HATCH pattern def line dash.
lengththe length value to be set for the entity.

Definition at line 3750 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_hatch_pattern_def_line_dash_struct::length.

DxfHatchPatternDefLineDash* dxf_hatch_pattern_def_line_dash_get_next ( DxfHatchPatternDefLineDash dash)

Get the pointer to the next HATCH pattern def line dash from a DXF HATCH pattern def line dash.

Returns:
pointer to the next HATCH pattern def line dash.
Warning:
No checks are performed on the returned pointer.
Parameters:
dasha pointer to a DXF HATCH pattern def line dash.

Definition at line 3786 of file hatch.c.

References _, DEBUG, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_hatch_pattern_def_line_dash_struct::next.

Referenced by dxf_hatch_pattern_def_line_write().

DxfHatchPatternDefLineDash* dxf_hatch_pattern_def_line_dash_set_next ( DxfHatchPatternDefLineDash dash,
DxfHatchPatternDefLineDash next 
)

Set the pointer to the next HATCH pattern def line dash for a DXF HATCH pattern def line dash.

Parameters:
dasha pointer to a DXF HATCH pattern def line dash.
nexta pointer to the next HATCH pattern def line dash for the entity.

Definition at line 3825 of file hatch.c.

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

DxfHatchPatternDefLineDash* dxf_hatch_pattern_def_line_dash_get_last ( DxfHatchPatternDefLineDash dash)

Get the pointer to the last HATCH pattern def line dash from a linked list of DXF HATCH pattern def line dashes.

Returns:
pointer to the last HATCH pattern def line dash.
Warning:
No checks are performed on the returned pointer.
Parameters:
dasha pointer to a DXF HATCH pattern def line dash.

Definition at line 3869 of file hatch.c.

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

DxfHatchPatternDefLine* dxf_hatch_pattern_def_line_new ( )

Allocate memory for a DXF HATCH pattern definition line.

Fill the memory contents with zeros.

Definition at line 3912 of file hatch.c.

References _, DXF_DEBUG_BEGIN, and DXF_DEBUG_END.

Referenced by dxf_hatch_pattern_def_line_init().

DxfHatchPatternDefLine* dxf_hatch_pattern_def_line_init ( DxfHatchPatternDefLine line)

Allocate memory and initialize data fields in a DXF HATCH pattern definition line entity.

Returns:
NULL when no memory was allocated, a pointer to the allocated memory when succesful.
Parameters:
lineDXF hatch pattern definition line entity.

Definition at line 3950 of file hatch.c.

References _, dxf_hatch_pattern_def_line_struct::angle, dxf_hatch_pattern_def_line_struct::dashes, DXF_DEBUG_BEGIN, DXF_DEBUG_END, dxf_hatch_pattern_def_line_new(), dxf_hatch_pattern_def_line_struct::id_code, dxf_hatch_pattern_def_line_struct::next, dxf_hatch_pattern_def_line_struct::number_of_dash_items, dxf_hatch_pattern_def_line_struct::x0, dxf_hatch_pattern_def_line_struct::x1, dxf_hatch_pattern_def_line_struct::y0, and dxf_hatch_pattern_def_line_struct::y1.

Referenced by dxf_hatch_init(), and dxf_hatch_pattern_init().

Here is the call graph for this function:

int dxf_hatch_pattern_def_line_write ( DxfFile fp,
DxfHatchPatternDefLine line 
)

Write DXF output to a file for a DXF HATCH pattern definition line.

Returns:
EXIT_SUCCESS when done, or EXIT_FAILURE when an error occurred.
Parameters:
fpDXF file pointer to an output file (or device).
lineDXF hatch pattern definition line.

Definition at line 3998 of file hatch.c.

References _, dxf_hatch_pattern_def_line_struct::angle, DXF_DEBUG_BEGIN, DXF_DEBUG_END, dxf_hatch_pattern_def_line_dash_get_next(), dxf_hatch_pattern_def_line_get_dashes(), dxf_file_struct::fp, dxf_hatch_pattern_def_line_dash_struct::length, dxf_hatch_pattern_def_line_struct::number_of_dash_items, dxf_hatch_pattern_def_line_struct::x0, dxf_hatch_pattern_def_line_struct::x1, dxf_hatch_pattern_def_line_struct::y0, and dxf_hatch_pattern_def_line_struct::y1.

Referenced by dxf_hatch_write().

Here is the call graph for this function:

int dxf_hatch_pattern_def_line_free ( DxfHatchPatternDefLine line)

Free the allocated memory for a DXF HATCH pattern definition line and all it's data fields.

Returns:
EXIT_SUCCESS when done, or EXIT_FAILURE when an error occurred.
Parameters:
linePointer to the memory occupied by the DXF HATCH pattern definition line entity.

Definition at line 4081 of file hatch.c.

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

Referenced by dxf_hatch_pattern_def_line_free_chain(), and dxf_hatch_write().

void dxf_hatch_pattern_def_line_free_chain ( DxfHatchPatternDefLine lines)

Free the allocated memory for a chain of DXF HATCH pattern definition lines and all their data fields.

Parameters:
linespointer to the chain of DXF HATCH pattern definition lines.

Definition at line 4120 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, dxf_hatch_pattern_def_line_free(), and dxf_hatch_pattern_def_line_struct::next.

Here is the call graph for this function:

int dxf_hatch_pattern_def_line_get_id_code ( DxfHatchPatternDefLine line)

Get the ID code from a DXF HATCH pattern def line.

Returns:
ID code.
Parameters:
linea pointer to a DXF HATCH pattern def line.

Definition at line 4155 of file hatch.c.

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

DxfHatchPatternDefLine* dxf_hatch_pattern_def_line_set_id_code ( DxfHatchPatternDefLine line,
int  id_code 
)

Set the ID code for a DXF HATCH pattern def line.

Parameters:
linea pointer to a DXF HATCH pattern def line.
id_codeIdentification number for the entity.
This is to be an unique (sequential) number in the DXF file.

Definition at line 4193 of file hatch.c.

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

double dxf_hatch_pattern_def_line_get_angle ( DxfHatchPatternDefLine line)

Get the angle from a DXF HATCH pattern def line.

Returns:
angle.
Parameters:
linea pointer to a DXF HATCH pattern def line.

Definition at line 4235 of file hatch.c.

References _, dxf_hatch_pattern_def_line_struct::angle, DXF_DEBUG_BEGIN, and DXF_DEBUG_END.

DxfHatchPatternDefLine* dxf_hatch_pattern_def_line_set_angle ( DxfHatchPatternDefLine line,
double  angle 
)

Set the angle for a DXF HATCH pattern def line.

Parameters:
linea pointer to a DXF HATCH pattern def line.
anglethe angle to be set for the entity.

Definition at line 4266 of file hatch.c.

References _, dxf_hatch_pattern_def_line_struct::angle, DXF_DEBUG_BEGIN, and DXF_DEBUG_END.

double dxf_hatch_pattern_def_line_get_x0 ( DxfHatchPatternDefLine line)

Get the base point X-value from a DXF HATCH pattern def line.

Returns:
base point X-value.
Parameters:
linea pointer to a DXF HATCH pattern def line.

Definition at line 4300 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_hatch_pattern_def_line_struct::x0.

DxfHatchPatternDefLine* dxf_hatch_pattern_def_line_set_x0 ( DxfHatchPatternDefLine line,
double  x0 
)

Set the base point X-value for a DXF HATCH pattern def line.

Parameters:
linea pointer to a DXF HATCH pattern def line.
x0the base point X-value to be set for the entity.

Definition at line 4331 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_hatch_pattern_def_line_struct::x0.

double dxf_hatch_pattern_def_line_get_y0 ( DxfHatchPatternDefLine line)

Get the base point Y-value from a DXF HATCH pattern def line.

Returns:
base point Y-value.
Parameters:
linea pointer to a DXF HATCH pattern def line.

Definition at line 4365 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_hatch_pattern_def_line_struct::y0.

DxfHatchPatternDefLine* dxf_hatch_pattern_def_line_set_y0 ( DxfHatchPatternDefLine line,
double  y0 
)

Set the base point Y-value for a DXF HATCH pattern def line.

Parameters:
linea pointer to a DXF HATCH pattern def line.
y0the base point Y-value to be set for the entity.

Definition at line 4396 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_hatch_pattern_def_line_struct::y0.

double dxf_hatch_pattern_def_line_get_x1 ( DxfHatchPatternDefLine line)

Get the offset point X-value from a DXF HATCH pattern def line.

Returns:
offset point X-value.
Parameters:
linea pointer to a DXF HATCH pattern def line.

Definition at line 4430 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_hatch_pattern_def_line_struct::x1.

DxfHatchPatternDefLine* dxf_hatch_pattern_def_line_set_x1 ( DxfHatchPatternDefLine line,
double  x1 
)

Set the offset point X-value for a DXF HATCH pattern def line.

Parameters:
linea pointer to a DXF HATCH pattern def line.
x1the offset point X-value to be set for the entity.

Definition at line 4462 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_hatch_pattern_def_line_struct::x1.

double dxf_hatch_pattern_def_line_get_y1 ( DxfHatchPatternDefLine line)

Get the offset point Y-value from a DXF HATCH pattern def line.

Returns:
offset point Y-value.
Parameters:
linea pointer to a DXF HATCH pattern def line.

Definition at line 4496 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_hatch_pattern_def_line_struct::y1.

DxfHatchPatternDefLine* dxf_hatch_pattern_def_line_set_y1 ( DxfHatchPatternDefLine line,
double  y1 
)

Set the offset point Y-value for a DXF HATCH pattern def line.

Parameters:
linea pointer to a DXF HATCH pattern def line.
y1the offset point Y-value to be set for the entity.

Definition at line 4528 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_hatch_pattern_def_line_struct::y1.

int dxf_hatch_pattern_def_line_get_number_of_dash_items ( DxfHatchPatternDefLine line)

Get the number of hatch pattern definition line dash items from a DXF HATCH pattern def line.

Returns:
number of hatch pattern definition line dash items.
Parameters:
linea pointer to a DXF HATCH pattern def line.

Definition at line 4562 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_hatch_pattern_def_line_struct::number_of_dash_items.

DxfHatchPatternDefLine* dxf_hatch_pattern_def_line_set_number_of_dash_items ( DxfHatchPatternDefLine line,
int  number_of_dash_items 
)

Set the number of hatch pattern definition line dash items for a DXF HATCH pattern def line.

Parameters:
linea pointer to a DXF HATCH pattern def line.
number_of_dash_itemsnumber of hatch pattern definition line dash items.

Definition at line 4601 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_hatch_pattern_def_line_struct::number_of_dash_items.

DxfHatchPatternDefLineDash* dxf_hatch_pattern_def_line_get_dashes ( DxfHatchPatternDefLine line)

Get a pointer to the first dash from a DXF HATCH pattern def line.

Returns:
pointer to the dash.
Warning:
No checks are performed on the returned pointer.
Parameters:
linea pointer to a DXF HATCH pattern def line.

Definition at line 4644 of file hatch.c.

References _, dxf_hatch_pattern_def_line_struct::dashes, DEBUG, DXF_DEBUG_BEGIN, and DXF_DEBUG_END.

Referenced by dxf_hatch_pattern_def_line_write().

DxfHatchPatternDefLine* dxf_hatch_pattern_def_line_set_dashes ( DxfHatchPatternDefLine line,
DxfHatchPatternDefLineDash dashes 
)

Set the pointer for the first dash for a DXF HATCH pattern def line.

Parameters:
linea pointer to a DXF HATCH pattern def line.
dashesa pointer to the first dash.

Definition at line 4676 of file hatch.c.

References _, dxf_hatch_pattern_def_line_struct::dashes, DXF_DEBUG_BEGIN, and DXF_DEBUG_END.

DxfHatchPatternDefLine* dxf_hatch_pattern_def_line_get_next ( DxfHatchPatternDefLine line)

Get the pointer to the next HATCH pattern def line from a DXF HATCH pattern def line.

Returns:
pointer to the next HATCH pattern def line.
Warning:
No checks are performed on the returned pointer.
Parameters:
linea pointer to a DXF HATCH pattern def line.

Definition at line 4719 of file hatch.c.

References _, DEBUG, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_hatch_pattern_def_line_struct::next.

DxfHatchPatternDefLine* dxf_hatch_pattern_def_line_set_next ( DxfHatchPatternDefLine line,
DxfHatchPatternDefLine next 
)

Set the pointer to the next HATCH pattern def line for a DXF HATCH pattern def line.

Parameters:
linea pointer to a DXF HATCH pattern def line.
nexta pointer to the next HATCH pattern def line for the entity.

Definition at line 4758 of file hatch.c.

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

DxfHatchPatternDefLine* dxf_hatch_pattern_def_line_get_last ( DxfHatchPatternDefLine line)

Get the pointer to the last HATCH pattern def line from a linked list of DXF HATCH pattern def lines.

Returns:
pointer to the last HATCH pattern def line.
Warning:
No checks are performed on the returned pointer.
Parameters:
linea pointer to a DXF HATCH pattern def line.

Definition at line 4802 of file hatch.c.

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

DxfHatchPatternSeedPoint* dxf_hatch_pattern_seedpoint_new ( )

Allocate memory for a DXF HATCH pattern seedpoint.

Fill the memory contents with zeros.

Definition at line 4845 of file hatch.c.

References _, DXF_DEBUG_BEGIN, and DXF_DEBUG_END.

Referenced by dxf_hatch_pattern_seedpoint_init().

DxfHatchPatternSeedPoint* dxf_hatch_pattern_seedpoint_init ( DxfHatchPatternSeedPoint seedpoint)

Allocate memory and initialize data fields in a DXF HATCH pattern seedpoint entity.

Returns:
NULL when no memory was allocated, a pointer to the allocated memory when succesful.
Parameters:
seedpointDXF hatch pattern seedpoint entity.

Definition at line 4883 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, dxf_hatch_pattern_seedpoint_new(), dxf_hatch_pattern_seedpoint_struct::id_code, dxf_hatch_pattern_seedpoint_struct::next, dxf_hatch_pattern_seedpoint_struct::x0, and dxf_hatch_pattern_seedpoint_struct::y0.

Referenced by dxf_hatch_init(), and dxf_hatch_pattern_init().

Here is the call graph for this function:

int dxf_hatch_pattern_seedpoint_write ( DxfFile fp,
DxfHatchPatternSeedPoint seedpoint 
)

Write DXF output to a file for a DXF HATCH pattern seed point.

Returns:
EXIT_SUCCESS when done, or EXIT_FAILURE when an error occurred.
Parameters:
fpDXF file pointer to an output file (or device).
seedpointDXF hatch pattern seedpoint.

Definition at line 4926 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, dxf_file_struct::fp, dxf_hatch_pattern_seedpoint_struct::x0, and dxf_hatch_pattern_seedpoint_struct::y0.

Referenced by dxf_hatch_write().

int dxf_hatch_pattern_seedpoint_free ( DxfHatchPatternSeedPoint seedpoint)

Free the allocated memory for a DXF HATCH pattern seedpoint and all it's data fields.

Returns:
EXIT_SUCCESS when done, or EXIT_FAILURE when an error occurred.
Parameters:
seedpointPointer to the memory occupied by the DXF HATCH pattern seedpoint entity.

Definition at line 4970 of file hatch.c.

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

Referenced by dxf_hatch_pattern_seedpoint_free_chain(), and dxf_hatch_write().

void dxf_hatch_pattern_seedpoint_free_chain ( DxfHatchPatternSeedPoint hatch_pattern_seed_points)

Free the allocated memory for a chain of DXF HATCH pattern seed points and all their data fields.

Parameters:
hatch_pattern_seed_pointspointer to the chain of DXF HATCH pattern seed points.

Definition at line 5009 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, dxf_hatch_pattern_seedpoint_free(), and dxf_hatch_pattern_seedpoint_struct::next.

Here is the call graph for this function:

int dxf_hatch_pattern_seedpoint_get_id_code ( DxfHatchPatternSeedPoint point)

Get the ID code from a DXF HATCH pattern seed point.

Returns:
ID code.
Parameters:
pointa pointer to a DXF HATCH pattern seed point.

Definition at line 5044 of file hatch.c.

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

DxfHatchPatternSeedPoint* dxf_hatch_pattern_seedpoint_set_id_code ( DxfHatchPatternSeedPoint point,
int  id_code 
)

Set the ID code for a DXF HATCH pattern seed point.

Parameters:
pointa pointer to a DXF HATCH pattern seed point.
id_codeIdentification number for the entity.
This is to be an unique (sequential) number in the DXF file.

Definition at line 5082 of file hatch.c.

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

double dxf_hatch_pattern_seedpoint_get_x0 ( DxfHatchPatternSeedPoint point)

Get the X-value from a DXF HATCH pattern seed point.

Returns:
X-value.
Parameters:
pointa pointer to a DXF HATCH pattern seed point.

Definition at line 5124 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_hatch_pattern_seedpoint_struct::x0.

DxfHatchPatternSeedPoint* dxf_hatch_pattern_seedpoint_set_x0 ( DxfHatchPatternSeedPoint point,
double  x0 
)

Set the X-value for a DXF HATCH pattern seed point.

Parameters:
pointa pointer to a DXF HATCH pattern seed point.
x0the X-value to be set for the entity.

Definition at line 5155 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_hatch_pattern_seedpoint_struct::x0.

double dxf_hatch_pattern_seedpoint_get_y0 ( DxfHatchPatternSeedPoint point)

Get the Y-value from a DXF HATCH pattern seed point.

Returns:
Y-value.
Parameters:
pointa pointer to a DXF HATCH pattern seed point.

Definition at line 5188 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_hatch_pattern_seedpoint_struct::y0.

DxfHatchPatternSeedPoint* dxf_hatch_pattern_seedpoint_set_y0 ( DxfHatchPatternSeedPoint point,
double  y0 
)

Set the Y-value for a DXF HATCH pattern seed point.

Parameters:
pointa pointer to a DXF HATCH pattern seed point.
y0the Y-value to be set for the entity.

Definition at line 5219 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_hatch_pattern_seedpoint_struct::y0.

DxfHatchPatternSeedPoint* dxf_hatch_pattern_seedpoint_get_next ( DxfHatchPatternSeedPoint point)

Get the pointer to the next HATCH pattern seed point from a DXF HATCH pattern seed point.

Returns:
pointer to the next HATCH pattern seed point.
Warning:
No checks are performed on the returned pointer.
Parameters:
pointa pointer to a DXF HATCH pattern seed point.

Definition at line 5255 of file hatch.c.

References _, DEBUG, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_hatch_pattern_seedpoint_struct::next.

DxfHatchPatternSeedPoint* dxf_hatch_pattern_seedpoint_set_next ( DxfHatchPatternSeedPoint point,
DxfHatchPatternSeedPoint next 
)

Set the pointer to the next HATCH pattern seed point for a DXF HATCH pattern seed point.

Parameters:
pointa pointer to a DXF HATCH pattern seed point.
nexta pointer to the next HATCH pattern seed point for the entity.

Definition at line 5294 of file hatch.c.

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

DxfHatchPatternSeedPoint* dxf_hatch_pattern_seedpoint_get_last ( DxfHatchPatternSeedPoint point)

Get the pointer to the last HATCH pattern seed point from a linked list of DXF HATCH pattern seed points.

Returns:
pointer to the last HATCH pattern seed point.
Warning:
No checks are performed on the returned pointer.
Parameters:
pointa pointer to a DXF HATCH pattern seed point.

Definition at line 5338 of file hatch.c.

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

DxfHatchBoundaryPath* dxf_hatch_boundary_path_new ( )

Allocate memory for a DXF HATCH boundary path.

Fill the memory contents with zeros.

Definition at line 5381 of file hatch.c.

References _, DXF_DEBUG_BEGIN, and DXF_DEBUG_END.

Referenced by dxf_hatch_boundary_path_init().

DxfHatchBoundaryPath* dxf_hatch_boundary_path_init ( DxfHatchBoundaryPath path)

Allocate memory and initialize data fields in a DXF HATCH boundary path entity.

Returns:
NULL when no memory was allocated, a pointer to the allocated memory when succesful.
Parameters:
pathDXF hatch boundary path entity.

Definition at line 5419 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, dxf_hatch_boundary_path_edge_init(), dxf_hatch_boundary_path_new(), dxf_hatch_boundary_path_polyline_init(), dxf_hatch_boundary_path_struct::edges, dxf_hatch_boundary_path_struct::id_code, dxf_hatch_boundary_path_struct::next, and dxf_hatch_boundary_path_struct::polylines.

Referenced by dxf_hatch_init().

Here is the call graph for this function:

int dxf_hatch_boundary_path_write ( DxfFile fp,
DxfHatchBoundaryPath path 
)

Write DXF output to a file for hatch boundary entities.

Requires AutoCAD version R14 or higher.

Todo:
Write edges data.

Parameters:
fpDXF file pointer to an output file (or device).
pathPointer to DXF Boundary paths (loops).

Definition at line 5460 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, dxf_hatch_boundary_path_polyline_new(), dxf_hatch_boundary_path_polyline_write(), dxf_hatch_boundary_path_struct::edges, dxf_hatch_boundary_path_struct::next, and dxf_hatch_boundary_path_struct::polylines.

Referenced by dxf_hatch_write().

Here is the call graph for this function:

int dxf_hatch_boundary_path_free ( DxfHatchBoundaryPath path)

Free the allocated memory for a DXF HATCH boundary path and all it's data fields.

Returns:
EXIT_SUCCESS when done, or EXIT_FAILURE when an error occurred.
Parameters:
pathPointer to the memory occupied by the DXF HATCH boundary path entity.

Definition at line 5547 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, dxf_hatch_boundary_path_struct::edges, dxf_hatch_boundary_path_struct::next, and dxf_hatch_boundary_path_struct::polylines.

Referenced by dxf_hatch_boundary_path_free_chain().

void dxf_hatch_boundary_path_free_chain ( DxfHatchBoundaryPath hatch_boundary_paths)

Free the allocated memory for a chain of DXF HATCH boundary paths and all their data fields.

Parameters:
hatch_boundary_pathspointer to the chain of DXF HATCH boundary paths.

Definition at line 5588 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, dxf_hatch_boundary_path_free(), and dxf_hatch_boundary_path_struct::next.

Here is the call graph for this function:

int dxf_hatch_boundary_path_get_id_code ( DxfHatchBoundaryPath path)

Get the ID code from a DXF HATCH boundary path.

Returns:
ID code.
Parameters:
patha pointer to a DXF HATCH boundary path.

Definition at line 5622 of file hatch.c.

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

DxfHatchBoundaryPath* dxf_hatch_boundary_path_set_id_code ( DxfHatchBoundaryPath path,
int  id_code 
)

Set the ID code for a DXF HATCH boundary path.

Parameters:
patha pointer to a DXF HATCH boundary path.
id_codeIdentification number for the entity.
This is to be an unique (sequential) number in the DXF file.

Definition at line 5660 of file hatch.c.

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

DxfHatchBoundaryPathEdge* dxf_hatch_boundary_path_get_edges ( DxfHatchBoundaryPath path)

Get the edges from a DXF HATCH boundary path.

Returns:
a pointer to the first edge.
Warning:
No low level copy is made of the series of edges.
Parameters:
patha pointer to a DXF HATCH boundary path.

Definition at line 5704 of file hatch.c.

References _, DEBUG, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_hatch_boundary_path_struct::edges.

DxfHatchBoundaryPath* dxf_hatch_boundary_path_set_edges ( DxfHatchBoundaryPath path,
DxfHatchBoundaryPathEdge edges 
)

Set the edges for a DXF HATCH boundary path.

Parameters:
patha pointer to a DXF HATCH boundary path.
edgesa pointer to the first edge.

Definition at line 5735 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_hatch_boundary_path_struct::edges.

DxfHatchBoundaryPathPolyline* dxf_hatch_boundary_path_get_polylines ( DxfHatchBoundaryPath path)

Get the polylines from a DXF HATCH boundary path.

Returns:
a pointer to the first plyline.
Warning:
No low level copy is made of the series of polylines.
Parameters:
patha pointer to a DXF HATCH boundary path.

Definition at line 5777 of file hatch.c.

References _, DEBUG, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_hatch_boundary_path_struct::polylines.

DxfHatchBoundaryPath* dxf_hatch_boundary_path_set_polylines ( DxfHatchBoundaryPath path,
DxfHatchBoundaryPathPolyline polylines 
)

Set the plylines for a DXF HATCH boundary path.

Parameters:
patha pointer to a DXF HATCH boundary path.
polylinesa pointer to the first polyline.

Definition at line 5808 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_hatch_boundary_path_struct::polylines.

DxfHatchBoundaryPath* dxf_hatch_boundary_path_get_next ( DxfHatchBoundaryPath path)

Get the pointer to the next HATCH boundary path from a DXF HATCH boundary path.

Returns:
pointer to the next HATCH boundary path.
Warning:
No checks are performed on the returned pointer.
Parameters:
patha pointer to a DXF HATCH boundary path.

Definition at line 5851 of file hatch.c.

References _, DEBUG, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_hatch_boundary_path_struct::next.

DxfHatchBoundaryPath* dxf_hatch_boundary_path_set_next ( DxfHatchBoundaryPath path,
DxfHatchBoundaryPath next 
)

Set the pointer to the next HATCH boundary path for a DXF HATCH boundary path.

Parameters:
patha pointer to a DXF HATCH boundary path.
nexta pointer to the next HATCH boundary path for the entity.

Definition at line 5890 of file hatch.c.

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

DxfHatchBoundaryPath* dxf_hatch_boundary_path_get_last ( DxfHatchBoundaryPath path)

Get the pointer to the last HATCH boundary path from a linked list of DXF HATCH boundary paths.

Returns:
pointer to the last HATCH boundary path.
Warning:
No checks are performed on the returned pointer.
Parameters:
patha pointer to a DXF HATCH boundary path.

Definition at line 5934 of file hatch.c.

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

DxfHatchBoundaryPathPolyline* dxf_hatch_boundary_path_polyline_new ( )

Allocate memory for a DXF HATCH boundary path polyline.

Fill the memory contents with zeros.

Definition at line 5977 of file hatch.c.

References _, DXF_DEBUG_BEGIN, and DXF_DEBUG_END.

Referenced by dxf_hatch_boundary_path_polyline_init(), and dxf_hatch_boundary_path_write().

DxfHatchBoundaryPathPolyline* dxf_hatch_boundary_path_polyline_init ( DxfHatchBoundaryPathPolyline polyline)

Allocate memory and initialize data fields in a DXF HATCH boundary path polyline entity.

Returns:
NULL when no memory was allocated, a pointer to the allocated memory when succesful.
Parameters:
polylineDXF hatch boundary path polyline entity.

Definition at line 6015 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, dxf_hatch_boundary_path_polyline_new(), dxf_hatch_boundary_path_polyline_struct::id_code, dxf_hatch_boundary_path_polyline_struct::is_closed, dxf_hatch_boundary_path_polyline_struct::next, dxf_hatch_boundary_path_polyline_struct::number_of_vertices, and dxf_hatch_boundary_path_polyline_struct::vertices.

Referenced by dxf_hatch_boundary_path_init().

Here is the call graph for this function:

int dxf_hatch_boundary_path_polyline_write ( DxfFile fp,
DxfHatchBoundaryPathPolyline polyline 
)

Write DXF output to a file for a hatch boundary path polyline.

Returns:
EXIT_SUCCESS when done, or EXIT_FAILURE when an error occurred.
Parameters:
fpfile pointer to output file (or device).
polylineDXF hatch boundary path polyline entity.

Definition at line 6058 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, dxf_hatch_boundary_path_polyline_vertex_new(), dxf_hatch_boundary_path_polyline_vertex_write(), dxf_file_struct::fp, dxf_hatch_boundary_path_polyline_struct::is_closed, dxf_hatch_boundary_path_polyline_struct::number_of_vertices, and dxf_hatch_boundary_path_polyline_struct::vertices.

Referenced by dxf_hatch_boundary_path_write().

Here is the call graph for this function:

int dxf_hatch_boundary_path_polyline_free ( DxfHatchBoundaryPathPolyline polyline)

Free the allocated memory for a DXF HATCH boundary path polyline and all it's data fields.

Returns:
EXIT_SUCCESS when done, or EXIT_FAILURE when an error occurred.
Parameters:
polylinePointer to the memory occupied by the DXF HATCH boundary path polyline entity.

Definition at line 6128 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, dxf_hatch_boundary_path_polyline_struct::next, and dxf_hatch_boundary_path_polyline_struct::vertices.

Referenced by dxf_hatch_boundary_path_polyline_free_chain().

void dxf_hatch_boundary_path_polyline_free_chain ( DxfHatchBoundaryPathPolyline polylines)

Free the allocated memory for a chain of DXF HATCH boundary path polylines and all their data fields.

Parameters:
polylinespointer to the chain of DXF HATCH boundary path polylines.

Definition at line 6168 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, dxf_hatch_boundary_path_polyline_free(), and dxf_hatch_boundary_path_polyline_struct::next.

Here is the call graph for this function:

int dxf_hatch_boundary_path_polyline_get_id_code ( DxfHatchBoundaryPathPolyline polyline)

Get the ID code from a DXF HATCH boundary path polyline.

Returns:
ID code.
Parameters:
polylinea pointer to a DXF HATCH boundary path polyline.

Definition at line 6203 of file hatch.c.

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

DxfHatchBoundaryPathPolyline* dxf_hatch_boundary_path_polyline_set_id_code ( DxfHatchBoundaryPathPolyline polyline,
int  id_code 
)

Set the ID code for a DXF HATCH boundary path polyline.

Parameters:
polylinea pointer to a DXF HATCH boundary path polyline.
id_codeIdentification number for the entity.
This is to be an unique (sequential) number in the DXF file.

Definition at line 6241 of file hatch.c.

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

int dxf_hatch_boundary_path_polyline_get_is_closed ( DxfHatchBoundaryPathPolyline polyline)

Get the is_closed flag value from a DXF HATCH boundary path polyline.

Returns:
is_closed flag value.
Parameters:
polylinea pointer to a DXF HATCH boundary path polyline.

Definition at line 6284 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_hatch_boundary_path_polyline_struct::is_closed.

DxfHatchBoundaryPathPolyline* dxf_hatch_boundary_path_polyline_set_is_closed ( DxfHatchBoundaryPathPolyline polyline,
int  is_closed 
)

Set the is_closed flag value for a DXF HATCH boundary path polyline.

Parameters:
polylinea pointer to a DXF HATCH boundary path polyline.
is_closedis_closed flag value.

Definition at line 6330 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_hatch_boundary_path_polyline_struct::is_closed.

int dxf_hatch_boundary_path_polyline_get_number_of_vertices ( DxfHatchBoundaryPathPolyline polyline)

Get the number_of_vertices value from a DXF HATCH boundary path polyline.

Returns:
number_of_vertices value.
Parameters:
polylinea pointer to a DXF HATCH boundary path polyline.

Definition at line 6378 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_hatch_boundary_path_polyline_struct::number_of_vertices.

DxfHatchBoundaryPathPolyline* dxf_hatch_boundary_path_polyline_set_number_of_vertices ( DxfHatchBoundaryPathPolyline polyline,
int  number_of_vertices 
)

Set the number_of_vertices value for a DXF HATCH boundary path polyline.

Parameters:
polylinea pointer to a DXF HATCH boundary path polyline.
number_of_verticesnumber_of_vertices value.

Definition at line 6417 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_hatch_boundary_path_polyline_struct::number_of_vertices.

DxfHatchBoundaryPathPolylineVertex* dxf_hatch_boundary_path_polyline_get_vertices ( DxfHatchBoundaryPathPolyline polyline)

Get the vertices from a DXF HATCH boundary path polyline.

Returns:
a pointer to the first vertex.
Warning:
No low level copy is made of the series of vertices.
Parameters:
polylinea pointer to a DXF HATCH boundary path edge polyline.

Definition at line 6459 of file hatch.c.

References _, DEBUG, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_hatch_boundary_path_polyline_struct::vertices.

DxfHatchBoundaryPathPolyline* dxf_hatch_boundary_path_polyline_set_vertices ( DxfHatchBoundaryPathPolyline polyline,
DxfHatchBoundaryPathPolylineVertex vertices 
)

Set the vertices for a DXF HATCH boundary path polyline.

Parameters:
polylinea pointer to a DXF HATCH boundary path polyline.
verticesa pointer to the first vertex.

Definition at line 6491 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_hatch_boundary_path_polyline_struct::vertices.

int dxf_hatch_boundary_path_polyline_close_polyline ( DxfHatchBoundaryPathPolyline polyline)

Test if a hatch boundary polyline is closed and add the missing vertex.

Returns:
EXIT_SUCCESS when done, or EXIT_FAILURE when an error occurred.

Todo:
How do we know what's the last id_code ? This should be taken from a global id_code counter.
Todo:
How do we know what's the last id_code ? This should be taken from a global id_code counter.
Todo:
add code here !

Parameters:
polylineDXF hatch boundary path polyline entity.

Definition at line 6533 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, dxf_hatch_boundary_path_polyline_vertex_new(), dxf_hatch_boundary_path_polyline_vertex_struct::id_code, dxf_hatch_boundary_path_polyline_struct::is_closed, dxf_hatch_boundary_path_polyline_vertex_struct::next, dxf_hatch_boundary_path_polyline_struct::vertices, dxf_hatch_boundary_path_polyline_vertex_struct::x0, and dxf_hatch_boundary_path_polyline_vertex_struct::y0.

Here is the call graph for this function:

int dxf_hatch_boundary_path_polyline_point_inside_polyline ( DxfHatchBoundaryPathPolyline polyline,
DxfPoint point 
)

Compute if the coordinates of a point p lie inside or outside a DXF hatch boundary path polyline polyline entity.

Author:
Paul Bourke <http://www.paulbourke.net/geometry/insidepoly/>
Adapted for libDXF by Bert Timmerman <bert.timmerman@xs4all.nl>

A solution by Philippe Reverdy is to compute the sum of the angles made between the test point and each pair of points making up the polygon.
If this sum is ( $ 2\pi $) then the point is an interior point, if 0 then the point is an exterior point.
This also works for polygons with holes given the polygon is defined with a path made up of coincident edges into and out of the hole as is common practice in many CAD packages.

Note:
For most of the "point-in-polygon" algorithms there is a pathological case if the point being queries lies exactly on a vertex.
The easiest way to cope with this is to test that as a separate process and make your own decision as to whether you want to consider them inside or outside.
It is assumed that the polygon is simple (does not intersect itself).
Returns:
INSIDE if an interior point, OUTSIDE if an exterior point, or EXIT_FAILURE if an error occurred.

Todo:
This is a dead code path.

Parameters:
polylineDXF hatch boundary path polyline entity.
pointThe point to be tested for.

Definition at line 6661 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, dxf_hatch_boundary_path_polyline_vertex_angle(), dxf_hatch_boundary_path_polyline_vertex_free(), dxf_hatch_boundary_path_polyline_vertex_new(), INSIDE, dxf_hatch_boundary_path_polyline_struct::is_closed, dxf_hatch_boundary_path_polyline_vertex_struct::next, OUTSIDE, dxf_hatch_boundary_path_polyline_struct::vertices, dxf_point_struct::x0, dxf_hatch_boundary_path_polyline_vertex_struct::x0, dxf_point_struct::y0, and dxf_hatch_boundary_path_polyline_vertex_struct::y0.

Here is the call graph for this function:

DxfHatchBoundaryPathPolyline* dxf_hatch_boundary_path_polyline_get_next ( DxfHatchBoundaryPathPolyline polyline)

Get the pointer to the next HATCH boundary path polyline from a DXF HATCH boundary path polyline.

Returns:
pointer to the next HATCH boundary path polyline.
Warning:
No checks are performed on the returned pointer.
Parameters:
polylinea pointer to a DXF HATCH boundary path polyline.

Definition at line 6745 of file hatch.c.

References _, DEBUG, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_hatch_boundary_path_polyline_struct::next.

DxfHatchBoundaryPathPolyline* dxf_hatch_boundary_path_polyline_set_next ( DxfHatchBoundaryPathPolyline polyline,
DxfHatchBoundaryPathPolyline next 
)

Set the pointer to the next HATCH boundary path polyline for a DXF HATCH boundary path polyline.

Parameters:
polylinea pointer to a DXF HATCH boundary path polyline.
nexta pointer to the next HATCH boundary path polyline for the entity.

Definition at line 6784 of file hatch.c.

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

DxfHatchBoundaryPathPolyline* dxf_hatch_boundary_path_polyline_get_last ( DxfHatchBoundaryPathPolyline polyline)

Get the pointer to the last HATCH boundary path polyline from a linked list of DXF HATCH boundary path polylines.

Returns:
pointer to the last HATCH boundary path polyline.
Warning:
No checks are performed on the returned pointer.
Parameters:
polylinea pointer to a DXF HATCH boundary path polyline.

Definition at line 6828 of file hatch.c.

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

DxfHatchBoundaryPathPolylineVertex* dxf_hatch_boundary_path_polyline_vertex_new ( )

Allocate memory for a DXF HATCH boundary path polyline vertex.

Fill the memory contents with zeros.

Definition at line 6872 of file hatch.c.

References _, DXF_DEBUG_BEGIN, and DXF_DEBUG_END.

Referenced by dxf_hatch_boundary_path_polyline_close_polyline(), dxf_hatch_boundary_path_polyline_point_inside_polyline(), dxf_hatch_boundary_path_polyline_vertex_init(), and dxf_hatch_boundary_path_polyline_write().

DxfHatchBoundaryPathPolylineVertex* dxf_hatch_boundary_path_polyline_vertex_init ( DxfHatchBoundaryPathPolylineVertex vertex)

Allocate memory and initialize data fields in a DXF HATCH boundary path polyline vertex entity.

Returns:
NULL when no memory was allocated, a pointer to the allocated memory when succesful.
Parameters:
vertexDXF hatch boundary path polyline vertex entity.

Definition at line 6910 of file hatch.c.

References _, dxf_hatch_boundary_path_polyline_vertex_struct::bulge, DXF_DEBUG_BEGIN, DXF_DEBUG_END, dxf_hatch_boundary_path_polyline_vertex_new(), dxf_hatch_boundary_path_polyline_vertex_struct::has_bulge, dxf_hatch_boundary_path_polyline_vertex_struct::id_code, dxf_hatch_boundary_path_polyline_vertex_struct::next, dxf_hatch_boundary_path_polyline_vertex_struct::x0, and dxf_hatch_boundary_path_polyline_vertex_struct::y0.

Here is the call graph for this function:

int dxf_hatch_boundary_path_polyline_vertex_write ( DxfFile fp,
DxfHatchBoundaryPathPolylineVertex vertex 
)

Write DXF output to a file for a hatch boundary polyline vertex.

Parameters:
fpfile pointer to output file (or device).
vertexDXF hatch boundary path polyline vertex entity.

Definition at line 6952 of file hatch.c.

References _, dxf_hatch_boundary_path_polyline_vertex_struct::bulge, DXF_DEBUG_BEGIN, DXF_DEBUG_END, dxf_file_struct::fp, dxf_hatch_boundary_path_polyline_vertex_struct::has_bulge, dxf_hatch_boundary_path_polyline_vertex_struct::x0, and dxf_hatch_boundary_path_polyline_vertex_struct::y0.

Referenced by dxf_hatch_boundary_path_polyline_write().

int dxf_hatch_boundary_path_polyline_vertex_free ( DxfHatchBoundaryPathPolylineVertex vertex)

Free the allocated memory for a DXF HATCH boundary path polyline vertex and all it's data fields.

Returns:
EXIT_SUCCESS when done, or EXIT_FAILURE when an error occurred.
Parameters:
vertexPointer to the memory occupied by the DXF HATCH boundary path polyline vertex entity.

Definition at line 7000 of file hatch.c.

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

Referenced by dxf_hatch_boundary_path_polyline_point_inside_polyline(), and dxf_hatch_boundary_path_polyline_vertex_free_chain().

void dxf_hatch_boundary_path_polyline_vertex_free_chain ( DxfHatchBoundaryPathPolylineVertex hatch_boundary_path_polyline_vertices)

Free the allocated memory for a chain of DXF HATCH boundary path polyline vertices and all their data fields.

Parameters:
hatch_boundary_path_polyline_verticespointer to the chain of DXF HATCH boundary path polyline vertices.

Definition at line 7039 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, dxf_hatch_boundary_path_polyline_vertex_free(), and dxf_hatch_boundary_path_polyline_vertex_struct::next.

Here is the call graph for this function:

int dxf_hatch_boundary_path_polyline_vertex_get_id_code ( DxfHatchBoundaryPathPolylineVertex vertex)

Get the ID code from a DXF HATCH boundary path polyline vertex.

Returns:
ID code.
Parameters:
vertexa pointer to a DXF HATCH boundary path polyline vertex.

Definition at line 7075 of file hatch.c.

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

DxfHatchBoundaryPathPolylineVertex* dxf_hatch_boundary_path_polyline_vertex_set_id_code ( DxfHatchBoundaryPathPolylineVertex vertex,
int  id_code 
)

Set the ID code for a DXF HATCH boundary path polyline vertex.

Parameters:
vertexa pointer to a DXF HATCH boundary path polyline vertex.
id_codeIdentification number for the entity.
This is to be an unique (sequential) number in the DXF file.

Definition at line 7115 of file hatch.c.

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

double dxf_hatch_boundary_path_polyline_vertex_get_x0 ( DxfHatchBoundaryPathPolylineVertex vertex)

Get the X-value of the coordinate from a DXF HATCH boundary path polyline vertex.

Returns:
x0.
Parameters:
vertexa pointer to a DXF HATCH boundary path polyline vertex.

Definition at line 7159 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_hatch_boundary_path_polyline_vertex_struct::x0.

DxfHatchBoundaryPathPolylineVertex* dxf_hatch_boundary_path_polyline_vertex_set_x0 ( DxfHatchBoundaryPathPolylineVertex vertex,
double  x0 
)

Set the X-value of the coordinate for a DXF HATCH boundary path polyline vertex.

Parameters:
vertexa pointer to a DXF HATCH boundary path polyline vertex.
x0the X-value of the coordinate to be set for the entity.

Definition at line 7192 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_hatch_boundary_path_polyline_vertex_struct::x0.

double dxf_hatch_boundary_path_polyline_vertex_get_y0 ( DxfHatchBoundaryPathPolylineVertex vertex)

Get the Y-value of the coordinate from a DXF HATCH boundary path polyline vertex.

Returns:
y0.
Parameters:
vertexa pointer to a DXF HATCH boundary path polyline vertex.

Definition at line 7228 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_hatch_boundary_path_polyline_vertex_struct::y0.

DxfHatchBoundaryPathPolylineVertex* dxf_hatch_boundary_path_polyline_vertex_set_y0 ( DxfHatchBoundaryPathPolylineVertex vertex,
double  y0 
)

Set the Y-value of the coordinate for a DXF HATCH boundary path polyline vertex.

Parameters:
vertexa pointer to a DXF HATCH boundary path polyline vertex.
y0the Y-value of the coordinate to be set for the entity.

Definition at line 7261 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_hatch_boundary_path_polyline_vertex_struct::y0.

double dxf_hatch_boundary_path_polyline_vertex_get_bulge ( DxfHatchBoundaryPathPolylineVertex vertex)

Get the bulge from a DXF HATCH boundary path polyline vertex.

Returns:
bulge.
Parameters:
vertexa pointer to a DXF HATCH boundary path polyline vertex.

Definition at line 7297 of file hatch.c.

References _, dxf_hatch_boundary_path_polyline_vertex_struct::bulge, DXF_DEBUG_BEGIN, and DXF_DEBUG_END.

DxfHatchBoundaryPathPolylineVertex* dxf_hatch_boundary_path_polyline_vertex_set_bulge ( DxfHatchBoundaryPathPolylineVertex vertex,
double  bulge 
)

Set the bulge value for a DXF HATCH boundary path polyline vertex.

Parameters:
vertexa pointer to a DXF HATCH boundary path polyline vertex.
bulgethe bulge value to be set for the entity.

Definition at line 7330 of file hatch.c.

References _, dxf_hatch_boundary_path_polyline_vertex_struct::bulge, DXF_DEBUG_BEGIN, and DXF_DEBUG_END.

int dxf_hatch_boundary_path_polyline_vertex_get_has_bulge ( DxfHatchBoundaryPathPolylineVertex vertex)

Get the has_bulge flag value from a DXF HATCH boundary path polyline vertex.

Returns:
has_bulge flag value.
Parameters:
vertexa pointer to a DXF HATCH boundary path polyline vertex.

Definition at line 7365 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_hatch_boundary_path_polyline_vertex_struct::has_bulge.

DxfHatchBoundaryPathPolylineVertex* dxf_hatch_boundary_path_polyline_vertex_set_has_bulge ( DxfHatchBoundaryPathPolylineVertex vertex,
int  has_bulge 
)

Set the has_bulge flag value for a DXF HATCH boundary path polyline vertex.

Parameters:
vertexa pointer to a DXF HATCH boundary path polyline vertex.
has_bulgehas_bulge flag value.

Definition at line 7412 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_hatch_boundary_path_polyline_vertex_struct::has_bulge.

double dxf_hatch_boundary_path_polyline_vertex_angle ( DxfHatchBoundaryPathPolylineVertex vertex_0,
DxfHatchBoundaryPathPolylineVertex vertex_1 
)

Return the angle between two vertices on a plane (2D).

The angle is from vertex_0 to vertex_1, positive is counterclockwise (CCW).

Returns:
The angle value is in the range ( $ -\pi \cdots \pi $) in radians.
Parameters:
vertex_0The first vertex (of the pair).
vertex_1The second vertex (of the pair).

Definition at line 7464 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, dxf_hatch_boundary_path_polyline_vertex_struct::x0, and dxf_hatch_boundary_path_polyline_vertex_struct::y0.

Referenced by dxf_hatch_boundary_path_polyline_point_inside_polyline().

DxfHatchBoundaryPathPolylineVertex* dxf_hatch_boundary_path_polyline_vertex_get_next ( DxfHatchBoundaryPathPolylineVertex vertex)

Get the pointer to the next HATCH boundary path polyline vertex from a DXF HATCH boundary path polyline vertex.

Returns:
pointer to the next HATCH boundary path polyline vertex.
Warning:
No checks are performed on the returned pointer.
Parameters:
vertexa pointer to a DXF HATCH boundary path polyline vertex.

Definition at line 7533 of file hatch.c.

References _, DEBUG, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_hatch_boundary_path_polyline_vertex_struct::next.

DxfHatchBoundaryPathPolylineVertex* dxf_hatch_boundary_path_polyline_vertex_set_next ( DxfHatchBoundaryPathPolylineVertex vertex,
DxfHatchBoundaryPathPolylineVertex next 
)

Set the pointer to the next HATCH boundary path polyline vertex for a DXF HATCH boundary path polyline vertex.

Parameters:
vertexa pointer to a DXF HATCH boundary path polyline vertex.
nexta pointer to the next HATCH boundary path polyline vertex for the entity.

Definition at line 7573 of file hatch.c.

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

DxfHatchBoundaryPathPolylineVertex* dxf_hatch_boundary_path_polyline_vertex_get_last ( DxfHatchBoundaryPathPolylineVertex vertex)

Get the pointer to the last HATCH boundary path polyline vertex from a linked list of DXF HATCH boundary path polyline vertices.

Returns:
pointer to the last HATCH boundary path polyline vertex.
Warning:
No checks are performed on the returned pointer.
Parameters:
vertexa pointer to a DXF HATCH boundary path polyline vertex.

Definition at line 7619 of file hatch.c.

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

DxfHatchBoundaryPathEdge* dxf_hatch_boundary_path_edge_new ( )

Allocate memory for a DXF HATCH boundary path edge.

Fill the memory contents with zeros.

Definition at line 7663 of file hatch.c.

References _, DXF_DEBUG_BEGIN, and DXF_DEBUG_END.

Referenced by dxf_hatch_boundary_path_edge_init().

DxfHatchBoundaryPathEdge* dxf_hatch_boundary_path_edge_init ( DxfHatchBoundaryPathEdge edge)

Allocate memory and initialize data fields in a DXF HATCH boundary path edge entity.

Returns:
NULL when no memory was allocated, a pointer to the allocated memory when succesful.
Parameters:
edgeDXF hatch boundary path edge entity.

Definition at line 7701 of file hatch.c.

References _, dxf_hatch_boundary_path_edge_struct::arcs, DXF_DEBUG_BEGIN, DXF_DEBUG_END, dxf_hatch_boundary_path_edge_new(), dxf_hatch_boundary_path_edge_struct::ellipses, dxf_hatch_boundary_path_edge_struct::id_code, dxf_hatch_boundary_path_edge_struct::lines, dxf_hatch_boundary_path_edge_struct::next, and dxf_hatch_boundary_path_edge_struct::splines.

Referenced by dxf_hatch_boundary_path_init().

Here is the call graph for this function:

int dxf_hatch_boundary_path_edge_free ( DxfHatchBoundaryPathEdge edge)

Free the allocated memory for a DXF HATCH boundary path edge and all it's data fields.

Returns:
EXIT_SUCCESS when done, or EXIT_FAILURE when an error occurred.
Parameters:
edgePointer to the memory occupied by the DXF HATCH boundary path edge entity.

Definition at line 7746 of file hatch.c.

References _, dxf_hatch_boundary_path_edge_struct::arcs, DXF_DEBUG_BEGIN, DXF_DEBUG_END, dxf_hatch_boundary_path_edge_struct::ellipses, dxf_hatch_boundary_path_edge_struct::lines, dxf_hatch_boundary_path_edge_struct::next, and dxf_hatch_boundary_path_edge_struct::splines.

Referenced by dxf_hatch_boundary_path_edge_free_chain().

void dxf_hatch_boundary_path_edge_free_chain ( DxfHatchBoundaryPathEdge edges)

Free the allocated memory for a chain of DXF HATCH boundary path edges and all their data fields.

Parameters:
edgespointer to the chain of DXF HATCH boundary path edges.

Definition at line 7789 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, dxf_hatch_boundary_path_edge_free(), and dxf_hatch_boundary_path_edge_struct::next.

Here is the call graph for this function:

int dxf_hatch_boundary_path_edge_get_id_code ( DxfHatchBoundaryPathEdge edge)

Get the ID code from a DXF HATCH boundary path edge.

Returns:
ID code.
Parameters:
edgea pointer to a DXF HATCH boundary path edge.

Definition at line 7824 of file hatch.c.

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

DxfHatchBoundaryPathEdge* dxf_hatch_boundary_path_edge_set_id_code ( DxfHatchBoundaryPathEdge edge,
int  id_code 
)

Set the ID code for a DXF HATCH boundary path edge.

Parameters:
edgea pointer to a DXF HATCH boundary path edge.
id_codeIdentification number for the entity.
This is to be an unique (sequential) number in the DXF file.

Definition at line 7862 of file hatch.c.

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

DxfHatchBoundaryPathEdgeArc* dxf_hatch_boundary_path_edge_get_arcs ( DxfHatchBoundaryPathEdge edge)

Get the pointer to the first arc of a linked list of arcs from a DXF HATCH boundary path edge.

Returns:
pointer to the first arc.
Parameters:
edgea pointer to a DXF HATCH boundary path edge.

Definition at line 7905 of file hatch.c.

References _, dxf_hatch_boundary_path_edge_struct::arcs, DEBUG, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_hatch_boundary_path_edge_arc_new().

Here is the call graph for this function:

DxfHatchBoundaryPathEdge* dxf_hatch_boundary_path_edge_set_arcs ( DxfHatchBoundaryPathEdge edge,
DxfHatchBoundaryPathEdgeArc arcs 
)

Set the pointer to the first arc of a linked list of arcs for a DXF HATCH boundary path edge.

Parameters:
edgea pointer to a DXF HATCH boundary path edge.
arcsfirst arc of a linked list of arcs for a DXF HATCH boundary path edge.

Definition at line 7952 of file hatch.c.

References _, dxf_hatch_boundary_path_edge_struct::arcs, DXF_DEBUG_BEGIN, and DXF_DEBUG_END.

DxfHatchBoundaryPathEdgeEllipse* dxf_hatch_boundary_path_edge_get_ellipses ( DxfHatchBoundaryPathEdge edge)

Get the pointer to the first ellipse of a linked list of ellipses from a DXF HATCH boundary path edge.

Returns:
pointer to the first ellipse.
Parameters:
edgea pointer to a DXF HATCH boundary path edge.

Definition at line 7994 of file hatch.c.

References _, DEBUG, DXF_DEBUG_BEGIN, DXF_DEBUG_END, dxf_hatch_boundary_path_edge_ellipse_new(), and dxf_hatch_boundary_path_edge_struct::ellipses.

Here is the call graph for this function:

DxfHatchBoundaryPathEdge* dxf_hatch_boundary_path_edge_set_ellipses ( DxfHatchBoundaryPathEdge edge,
DxfHatchBoundaryPathEdgeEllipse ellipses 
)

Set the pointer to the first ellipse of a linked list of ellipses for a DXF HATCH boundary path edge.

Parameters:
edgea pointer to a DXF HATCH boundary path edge.
ellipsesfirst ellipse of a linked list of ellipses for a DXF HATCH boundary path edge.

Definition at line 8041 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_hatch_boundary_path_edge_struct::ellipses.

DxfHatchBoundaryPathEdgeLine* dxf_hatch_boundary_path_edge_get_lines ( DxfHatchBoundaryPathEdge edge)

Get the pointer to the first line of a linked list of lines from a DXF HATCH boundary path edge.

Returns:
pointer to the first line.
Parameters:
edgea pointer to a DXF HATCH boundary path edge.

Definition at line 8083 of file hatch.c.

References _, DEBUG, DXF_DEBUG_BEGIN, DXF_DEBUG_END, dxf_hatch_boundary_path_edge_line_new(), and dxf_hatch_boundary_path_edge_struct::lines.

Here is the call graph for this function:

DxfHatchBoundaryPathEdge* dxf_hatch_boundary_path_edge_set_lines ( DxfHatchBoundaryPathEdge edge,
DxfHatchBoundaryPathEdgeLine lines 
)

Set the pointer to the first line of a linked list of lines for a DXF HATCH boundary path edge.

Parameters:
edgea pointer to a DXF HATCH boundary path edge.
linesfirst line of a linked list of lines for a DXF HATCH boundary path edge.

Definition at line 8130 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_hatch_boundary_path_edge_struct::lines.

DxfHatchBoundaryPathEdgeSpline* dxf_hatch_boundary_path_edge_get_splines ( DxfHatchBoundaryPathEdge edge)

Get the pointer to the first spline of a linked list of splines from a DXF HATCH boundary path edge.

Returns:
pointer to the first spline.
Parameters:
edgea pointer to a DXF HATCH boundary path edge.

Definition at line 8172 of file hatch.c.

References _, DEBUG, DXF_DEBUG_BEGIN, DXF_DEBUG_END, dxf_hatch_boundary_path_edge_spline_new(), and dxf_hatch_boundary_path_edge_struct::splines.

Here is the call graph for this function:

DxfHatchBoundaryPathEdge* dxf_hatch_boundary_path_edge_set_splines ( DxfHatchBoundaryPathEdge edge,
DxfHatchBoundaryPathEdgeSpline splines 
)

Set the pointer to the first spline of a linked list of splines for a DXF HATCH boundary path edge.

Parameters:
edgea pointer to a DXF HATCH boundary path edge.
splinesfirst spline of a linked list of splines for a DXF HATCH boundary path edge.

Definition at line 8219 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_hatch_boundary_path_edge_struct::splines.

DxfHatchBoundaryPathEdge* dxf_hatch_boundary_path_edge_get_next ( DxfHatchBoundaryPathEdge edge)

Get the pointer to the next HATCH boundary path edge from a DXF HATCH boundary path edge.

Returns:
pointer to the next HATCH boundary path edge.
Warning:
No checks are performed on the returned pointer.
Parameters:
edgea pointer to a DXF HATCH boundary path edge.

Definition at line 8263 of file hatch.c.

References _, DEBUG, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_hatch_boundary_path_edge_struct::next.

DxfHatchBoundaryPathEdge* dxf_hatch_boundary_path_edge_set_next ( DxfHatchBoundaryPathEdge edge,
DxfHatchBoundaryPathEdge next 
)

Set the pointer to the next HATCH boundary path edge for a DXF HATCH boundary path edge.

Parameters:
edgea pointer to a DXF HATCH boundary path edge.
nexta pointer to the next HATCH boundary path edge for the entity.

Definition at line 8302 of file hatch.c.

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

DxfHatchBoundaryPathEdge* dxf_hatch_boundary_path_edge_get_last ( DxfHatchBoundaryPathEdge edge)

Get the pointer to the last HATCH boundary path edge from a linked list of DXF HATCH boundary path edge.

Returns:
pointer to the last HATCH boundary path edge.
Warning:
No checks are performed on the returned pointer.
Parameters:
edgea pointer to a DXF HATCH boundary path edge.

Definition at line 8346 of file hatch.c.

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

DxfHatchBoundaryPathEdgeArc* dxf_hatch_boundary_path_edge_arc_new ( )

Allocate memory for a DXF HATCH boundary path edge arc.

Fill the memory contents with zeros.

Definition at line 8389 of file hatch.c.

References _, DXF_DEBUG_BEGIN, and DXF_DEBUG_END.

Referenced by dxf_hatch_boundary_path_edge_arc_init(), and dxf_hatch_boundary_path_edge_get_arcs().

DxfHatchBoundaryPathEdgeArc* dxf_hatch_boundary_path_edge_arc_init ( DxfHatchBoundaryPathEdgeArc arc)

Allocate memory and initialize data fields in a DXF HATCH boundary path edge arc entity.

Returns:
NULL when no memory was allocated, a pointer to the allocated memory when succesful.
Parameters:
arcDXF hatch boundary path edge arc entity.

Definition at line 8427 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, dxf_hatch_boundary_path_edge_arc_new(), dxf_hatch_boundary_path_edge_arc_struct::end_angle, dxf_hatch_boundary_path_edge_arc_struct::id_code, dxf_hatch_boundary_path_edge_arc_struct::is_ccw, dxf_hatch_boundary_path_edge_arc_struct::next, dxf_hatch_boundary_path_edge_arc_struct::radius, dxf_hatch_boundary_path_edge_arc_struct::start_angle, dxf_hatch_boundary_path_edge_arc_struct::x0, and dxf_hatch_boundary_path_edge_arc_struct::y0.

Here is the call graph for this function:

int dxf_hatch_boundary_path_edge_arc_free ( DxfHatchBoundaryPathEdgeArc arc)

Free the allocated memory for a DXF HATCH boundary path edge arc and all it's data fields.

Returns:
EXIT_SUCCESS when done, or EXIT_FAILURE when an error occurred.
Parameters:
arcPointer to the memory occupied by the DXF HATCH boundary path edge arc entity.

Definition at line 8474 of file hatch.c.

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

Referenced by dxf_hatch_boundary_path_edge_arc_free_chain().

void dxf_hatch_boundary_path_edge_arc_free_chain ( DxfHatchBoundaryPathEdgeArc hatch_boundary_path_edge_arcs)

Free the allocated memory for a chain of DXF HATCH boundary path edge arcs and all their data fields.

Parameters:
hatch_boundary_path_edge_arcspointer to the chain of DXF HATCH boundary path edge arcs.

Definition at line 8513 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, dxf_hatch_boundary_path_edge_arc_free(), and dxf_hatch_boundary_path_edge_arc_struct::next.

Here is the call graph for this function:

int dxf_hatch_boundary_path_edge_arc_get_id_code ( DxfHatchBoundaryPathEdgeArc arc)

Get the ID code from a DXF HATCH boundary path edge arc.

Returns:
ID code.
Parameters:
arca pointer to a DXF HATCH boundary path edge arc.

Definition at line 8548 of file hatch.c.

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

DxfHatchBoundaryPathEdgeArc* dxf_hatch_boundary_path_edge_arc_set_id_code ( DxfHatchBoundaryPathEdgeArc arc,
int  id_code 
)

Set the ID code for a DXF HATCH boundary path edge arc.

Parameters:
arca pointer to a DXF HATCH boundary path edge arc.
id_codeIdentification number for the entity.
This is to be an unique (sequential) number in the DXF file.

Definition at line 8586 of file hatch.c.

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

double dxf_hatch_boundary_path_edge_arc_get_x0 ( DxfHatchBoundaryPathEdgeArc arc)

Get the X-value of the center point coordinate from a DXF HATCH boundary path edge arc.

Returns:
x0.
Parameters:
arca pointer to a DXF HATCH boundary path edge arc.

Definition at line 8629 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_hatch_boundary_path_edge_arc_struct::x0.

DxfHatchBoundaryPathEdgeArc* dxf_hatch_boundary_path_edge_arc_set_x0 ( DxfHatchBoundaryPathEdgeArc arc,
double  x0 
)

Set the X-value of the center point coordinate for a DXF HATCH boundary path edge arc.

Parameters:
arca pointer to a DXF HATCH boundary path edge arc.
x0the X-value of the center point coordinate to be set for the entity.

Definition at line 8661 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_hatch_boundary_path_edge_arc_struct::x0.

double dxf_hatch_boundary_path_edge_arc_get_y0 ( DxfHatchBoundaryPathEdgeArc arc)

Get the Y-value of the center point coordinate from a DXF HATCH boundary path edge arc.

Returns:
y0.
Parameters:
arca pointer to a DXF HATCH boundary path edge arc.

Definition at line 8695 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_hatch_boundary_path_edge_arc_struct::y0.

DxfHatchBoundaryPathEdgeArc* dxf_hatch_boundary_path_edge_arc_set_y0 ( DxfHatchBoundaryPathEdgeArc arc,
double  y0 
)

Set the Y-value of the center point coordinate for a DXF HATCH boundary path edge arc.

Parameters:
arca pointer to a DXF HATCH boundary path edge arc.
y0the X-value of the center point coordinate to be set for the entity.

Definition at line 8727 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_hatch_boundary_path_edge_arc_struct::y0.

DxfPoint* dxf_hatch_boundary_path_edge_arc_get_center_point ( DxfHatchBoundaryPathEdgeArc arc,
int  id_code 
)

Get the center point of a DXF HATCH boundary path edge arc.

Returns:
the center point.
Parameters:
arca pointer to a DXF HATCH boundary path edge arc.
id_codeIdentification number for the DXfPoint entity.
This is to be an unique (sequential) number in the DXF file.

Definition at line 8760 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, dxf_point_init(), dxf_hatch_boundary_path_edge_arc_struct::id_code, dxf_hatch_boundary_path_edge_arc_struct::x0, and dxf_hatch_boundary_path_edge_arc_struct::y0.

Here is the call graph for this function:

DxfHatchBoundaryPathEdgeArc* dxf_hatch_boundary_path_edge_arc_set_center_point ( DxfHatchBoundaryPathEdgeArc arc,
DxfPoint point 
)

Set the center point of a DXF HATCH boundary path edge arc.

Returns:
a pointer to a DXF HATCH boundary path edge arc.
Parameters:
arca pointer to a DXF HATCH boundary path edge arc.
pointa pointer to a DXF POINT entity.

Definition at line 8813 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, dxf_point_struct::x0, dxf_hatch_boundary_path_edge_arc_struct::x0, dxf_point_struct::y0, and dxf_hatch_boundary_path_edge_arc_struct::y0.

double dxf_hatch_boundary_path_edge_arc_get_radius ( DxfHatchBoundaryPathEdgeArc arc)

Get the radius from a DXF HATCH boundary path edge arc.

Returns:
radius.
Parameters:
arca pointer to a DXF HATCH boundary path edge arc.

Definition at line 8854 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_hatch_boundary_path_edge_arc_struct::radius.

DxfHatchBoundaryPathEdgeArc* dxf_hatch_boundary_path_edge_arc_set_radius ( DxfHatchBoundaryPathEdgeArc arc,
double  radius 
)

Set the radius for a DXF HATCH boundary path edge arc.

Parameters:
arca pointer to a DXF HATCH boundary path edge arc.
radiusthe radius to be set for the entity.

Definition at line 8899 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_hatch_boundary_path_edge_arc_struct::radius.

double dxf_hatch_boundary_path_edge_arc_get_start_angle ( DxfHatchBoundaryPathEdgeArc arc)

Get the start angle from a DXF HATCH boundary path edge arc.

Returns:
start angle.
Parameters:
arca pointer to a DXF HATCH boundary path edge arc.

Definition at line 8946 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_hatch_boundary_path_edge_arc_struct::start_angle.

DxfHatchBoundaryPathEdgeArc* dxf_hatch_boundary_path_edge_arc_set_start_angle ( DxfHatchBoundaryPathEdgeArc arc,
double  start_angle 
)

Set the start angle for a DXF HATCH boundary path edge arc.

Parameters:
arca pointer to a DXF HATCH boundary path edge arc.
start_anglethe start angle to be set for the entity.

Definition at line 8977 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_hatch_boundary_path_edge_arc_struct::start_angle.

double dxf_hatch_boundary_path_edge_arc_get_end_angle ( DxfHatchBoundaryPathEdgeArc arc)

Get the end angle from a DXF HATCH boundary path edge arc.

Returns:
end angle.
Parameters:
arca pointer to a DXF HATCH boundary path edge arc.

Definition at line 9010 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_hatch_boundary_path_edge_arc_struct::end_angle.

DxfHatchBoundaryPathEdgeArc* dxf_hatch_boundary_path_edge_arc_set_end_angle ( DxfHatchBoundaryPathEdgeArc arc,
double  end_angle 
)

Set the end angle for a DXF HATCH boundary path edge arc.

Parameters:
arca pointer to a DXF HATCH boundary path edge arc.
end_anglethe end angle to be set for the entity.

Definition at line 9041 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_hatch_boundary_path_edge_arc_struct::end_angle.

int dxf_hatch_boundary_path_edge_arc_get_is_ccw ( DxfHatchBoundaryPathEdgeArc arc)

Get the arc is ccw value from a DXF HATCH boundary path edge arc.

Returns:
arc is ccw value.
Parameters:
arca pointer to a DXF HATCH boundary path edge arc.

Definition at line 9075 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_hatch_boundary_path_edge_arc_struct::is_ccw.

DxfHatchBoundaryPathEdgeArc* dxf_hatch_boundary_path_edge_arc_set_is_ccw ( DxfHatchBoundaryPathEdgeArc arc,
int  is_ccw 
)

Set the arc is ccw value for a DXF HATCH boundary path edge arc.

Parameters:
arca pointer to a DXF HATCH boundary path edge arc.
is_ccwthe arc is ccw value to be set for the entity.

Definition at line 9112 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_hatch_boundary_path_edge_arc_struct::is_ccw.

DxfHatchBoundaryPathEdgeArc* dxf_hatch_boundary_path_edge_arc_get_next ( DxfHatchBoundaryPathEdgeArc arc)

Get the pointer to the next HATCH boundary path edge arc from a DXF HATCH boundary path edge arc.

Returns:
pointer to the next HATCH boundary path edge arc.
Warning:
No checks are performed on the returned pointer.
Parameters:
arca pointer to a DXF HATCH boundary path edge arc.

Definition at line 9154 of file hatch.c.

References _, DEBUG, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_hatch_boundary_path_edge_arc_struct::next.

DxfHatchBoundaryPathEdgeArc* dxf_hatch_boundary_path_edge_arc_set_next ( DxfHatchBoundaryPathEdgeArc arc,
DxfHatchBoundaryPathEdgeArc next 
)

Set the pointer to the next HATCH boundary path edge arc for a DXF HATCH boundary path edge arc.

Parameters:
arca pointer to a DXF HATCH boundary path edge arc.
nexta pointer to the next HATCH boundary path edge arc for the entity.

Definition at line 9193 of file hatch.c.

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

DxfHatchBoundaryPathEdgeArc* dxf_hatch_boundary_path_edge_arc_get_last ( DxfHatchBoundaryPathEdgeArc arc)

Get the pointer to the last HATCH boundary path edge arc from a linked list of DXF HATCH boundary path edge arcs.

Returns:
pointer to the last HATCH boundary path edge arc.
Warning:
No checks are performed on the returned pointer.
Parameters:
arca pointer to a DXF HATCH boundary path edge arc.

Definition at line 9237 of file hatch.c.

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

DxfHatchBoundaryPathEdgeEllipse* dxf_hatch_boundary_path_edge_ellipse_new ( )

Allocate memory for a DXF HATCH boundary path edge ellipse.

Fill the memory contents with zeros.

Definition at line 9280 of file hatch.c.

References _, DXF_DEBUG_BEGIN, and DXF_DEBUG_END.

Referenced by dxf_hatch_boundary_path_edge_ellipse_init(), and dxf_hatch_boundary_path_edge_get_ellipses().

DxfHatchBoundaryPathEdgeEllipse* dxf_hatch_boundary_path_edge_ellipse_init ( DxfHatchBoundaryPathEdgeEllipse ellipse)
int dxf_hatch_boundary_path_edge_ellipse_free ( DxfHatchBoundaryPathEdgeEllipse ellipse)

Free the allocated memory for a DXF HATCH boundary path edge ellipse and all it's data fields.

Returns:
EXIT_SUCCESS when done, or EXIT_FAILURE when an error occurred.
Parameters:
ellipsePointer to the memory occupied by the DXF HATCH boundary path edge ellipse entity.

Definition at line 9367 of file hatch.c.

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

Referenced by dxf_hatch_boundary_path_edge_ellipse_free_chain().

void dxf_hatch_boundary_path_edge_ellipse_free_chain ( DxfHatchBoundaryPathEdgeEllipse hatch_boundary_path_edge_ellipses)

Free the allocated memory for a chain of DXF HATCH boundary path edge ellipses and all their data fields.

Parameters:
hatch_boundary_path_edge_ellipsespointer to the chain of DXF HATCH boundary path edge ellipses.

Definition at line 9406 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, dxf_hatch_boundary_path_edge_ellipse_free(), and dxf_hatch_boundary_path_edge_ellipse_struct::next.

Here is the call graph for this function:

int dxf_hatch_boundary_path_edge_ellipse_get_id_code ( DxfHatchBoundaryPathEdgeEllipse ellipse)

Get the ID code from a DXF HATCH boundary path edge ellipse.

Returns:
ID code.
Parameters:
ellipsea pointer to a DXF HATCH boundary path edge ellipse.

Definition at line 9442 of file hatch.c.

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

DxfHatchBoundaryPathEdgeEllipse* dxf_hatch_boundary_path_edge_ellipse_set_id_code ( DxfHatchBoundaryPathEdgeEllipse ellipse,
int  id_code 
)

Set the ID code for a DXF HATCH boundary path edge ellipse.

Parameters:
ellipsea pointer to a DXF HATCH boundary path edge ellipse.
id_codeIdentification number for the entity.
This is to be an unique (sequential) number in the DXF file.

Definition at line 9481 of file hatch.c.

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

double dxf_hatch_boundary_path_edge_ellipse_get_x0 ( DxfHatchBoundaryPathEdgeEllipse ellipse)

Get the X-value of the center point coordinate from a DXF HATCH boundary path edge ellipse.

Returns:
x0.
Parameters:
ellipsea pointer to a DXF HATCH boundary path edge ellipse.

Definition at line 9525 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_hatch_boundary_path_edge_ellipse_struct::x0.

DxfHatchBoundaryPathEdgeEllipse* dxf_hatch_boundary_path_edge_ellipse_set_x0 ( DxfHatchBoundaryPathEdgeEllipse ellipse,
double  x0 
)

Set the X-value of the center point coordinate for a DXF HATCH boundary path edge ellipse.

Parameters:
ellipsea pointer to a DXF HATCH boundary path edge ellipse.
x0the X-value of the center point coordinate to be set for the entity.

Definition at line 9558 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_hatch_boundary_path_edge_ellipse_struct::x0.

double dxf_hatch_boundary_path_edge_ellipse_get_y0 ( DxfHatchBoundaryPathEdgeEllipse ellipse)

Get the Y-value of the center point coordinate from a DXF HATCH boundary path edge ellipse.

Returns:
y0.
Parameters:
ellipsea pointer to a DXF HATCH boundary path edge ellipse.

Definition at line 9594 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_hatch_boundary_path_edge_ellipse_struct::y0.

DxfHatchBoundaryPathEdgeEllipse* dxf_hatch_boundary_path_edge_ellipse_set_y0 ( DxfHatchBoundaryPathEdgeEllipse ellipse,
double  y0 
)

Set the Y-value of the center point coordinate for a DXF HATCH boundary path edge ellipse.

Parameters:
ellipsea pointer to a DXF HATCH boundary path edge ellipse.
y0the Y-value of the center point coordinate to be set for the entity.

Definition at line 9627 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_hatch_boundary_path_edge_ellipse_struct::y0.

DxfPoint* dxf_hatch_boundary_path_edge_ellipse_get_center_point ( DxfHatchBoundaryPathEdgeEllipse ellipse,
int  id_code 
)

Get the center point of a DXF HATCH boundary path edge ellipse.

Returns:
the center point.
Parameters:
ellipsea pointer to a DXF HATCH boundary path edge ellipse.
id_codeIdentification number for the entity.
This is to be an unique (sequential) number in the DXF file.

Definition at line 9663 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, dxf_point_init(), dxf_hatch_boundary_path_edge_ellipse_struct::id_code, dxf_hatch_boundary_path_edge_ellipse_struct::x0, and dxf_hatch_boundary_path_edge_ellipse_struct::y0.

Here is the call graph for this function:

DxfHatchBoundaryPathEdgeEllipse* dxf_hatch_boundary_path_edge_ellipse_set_center_point ( DxfHatchBoundaryPathEdgeEllipse ellipse,
DxfPoint point 
)

Set the center point of a DXF HATCH boundary path edge ellipse.

Returns:
a pointer to a DXF HATCH boundary path edge ellipse.
Parameters:
ellipsea pointer to a DXF HATCH boundary path edge ellipse.
pointa pointer to a DXF POINT entity.

Definition at line 9718 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, dxf_point_struct::x0, dxf_hatch_boundary_path_edge_ellipse_struct::x0, dxf_point_struct::y0, and dxf_hatch_boundary_path_edge_ellipse_struct::y0.

double dxf_hatch_boundary_path_edge_ellipse_get_x1 ( DxfHatchBoundaryPathEdgeEllipse ellipse)

Get the X-value of the end point coordinate coordinate of the major axis from a DXF HATCH boundary path edge ellipse.

Returns:
x1.
Parameters:
ellipsea pointer to a DXF HATCH boundary path edge ellipse.

Definition at line 9761 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_hatch_boundary_path_edge_ellipse_struct::x1.

DxfHatchBoundaryPathEdgeEllipse* dxf_hatch_boundary_path_edge_ellipse_set_x1 ( DxfHatchBoundaryPathEdgeEllipse ellipse,
double  x1 
)

Set the X-value of the end point coordinate coordinate of the major axis for a DXF HATCH boundary path edge ellipse.

Parameters:
ellipsea pointer to a DXF HATCH boundary path edge ellipse.
x1the X-value of the end point coordinate coordinate of the major axis to be set for the entity.

Definition at line 9794 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_hatch_boundary_path_edge_ellipse_struct::x1.

double dxf_hatch_boundary_path_edge_ellipse_get_y1 ( DxfHatchBoundaryPathEdgeEllipse ellipse)

Get the Y-value of the end point coordinate coordinate of the major axis from a DXF HATCH boundary path edge ellipse.

Returns:
y1.
Parameters:
ellipsea pointer to a DXF HATCH boundary path edge ellipse.

Definition at line 9830 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_hatch_boundary_path_edge_ellipse_struct::y1.

DxfHatchBoundaryPathEdgeEllipse* dxf_hatch_boundary_path_edge_ellipse_set_y1 ( DxfHatchBoundaryPathEdgeEllipse ellipse,
double  y1 
)

Set the Y-value of the end point coordinate coordinate of the major axis for a DXF HATCH boundary path edge ellipse.

Parameters:
ellipsea pointer to a DXF HATCH boundary path edge ellipse.
y1the Y-value of the end point coordinate coordinate of the major axis to be set for the entity.

Definition at line 9863 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_hatch_boundary_path_edge_ellipse_struct::y1.

DxfPoint* dxf_hatch_boundary_path_edge_ellipse_get_end_point ( DxfHatchBoundaryPathEdgeEllipse ellipse,
int  id_code 
)

Get the endpoint of the major axis (relative to the center) of a DXF HATCH boundary path edge ellipse.

Returns:
the end point.
Parameters:
ellipsea pointer to a DXF HATCH boundary path edge ellipse.
id_codeIdentification number for the entity.
This is to be an unique (sequential) number in the DXF file.

Definition at line 9899 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, dxf_point_init(), dxf_hatch_boundary_path_edge_ellipse_struct::id_code, dxf_hatch_boundary_path_edge_ellipse_struct::x1, and dxf_hatch_boundary_path_edge_ellipse_struct::y1.

Here is the call graph for this function:

DxfHatchBoundaryPathEdgeEllipse* dxf_hatch_boundary_path_edge_ellipse_set_end_point ( DxfHatchBoundaryPathEdgeEllipse ellipse,
DxfPoint point 
)

Set the endpoint of the major axis (relative to the center) of a DXF HATCH boundary path edge ellipse.

Returns:
a pointer to a DXF HATCH boundary path edge ellipse.
Parameters:
ellipsea pointer to a DXF HATCH boundary path edge ellipse.
pointa pointer to a DXF POINT entity.

Definition at line 9954 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, dxf_point_struct::x0, dxf_hatch_boundary_path_edge_ellipse_struct::x1, dxf_point_struct::y0, and dxf_hatch_boundary_path_edge_ellipse_struct::y1.

double dxf_hatch_boundary_path_edge_ellipse_get_ratio ( DxfHatchBoundaryPathEdgeEllipse ellipse)

Get the ratio of minor axis to major axis from a DXF HATCH boundary path edge ellipse.

Returns:
ratio.
Parameters:
ellipsea pointer to a DXF HATCH boundary path edge ellipse.

Definition at line 9997 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_hatch_boundary_path_edge_ellipse_struct::ratio.

DxfHatchBoundaryPathEdgeEllipse* dxf_hatch_boundary_path_edge_ellipse_set_ratio ( DxfHatchBoundaryPathEdgeEllipse ellipse,
double  ratio 
)

Set the ratio of minor axis to major axis for a DXF HATCH boundary path edge ellipse.

Parameters:
ellipsea pointer to a DXF HATCH boundary path edge ellipse.
ratiothe ratio to be set for the entity.

Definition at line 10044 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_hatch_boundary_path_edge_ellipse_struct::ratio.

double dxf_hatch_boundary_path_edge_ellipse_get_start_angle ( DxfHatchBoundaryPathEdgeEllipse ellipse)

Get the start angle from a DXF HATCH boundary path edge ellipse.

Returns:
start angle.
Parameters:
ellipsea pointer to a DXF HATCH boundary path edge ellipse.

Definition at line 10093 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_hatch_boundary_path_edge_ellipse_struct::start_angle.

DxfHatchBoundaryPathEdgeEllipse* dxf_hatch_boundary_path_edge_ellipse_set_start_angle ( DxfHatchBoundaryPathEdgeEllipse ellipse,
double  start_angle 
)

Set the start angle for a DXF HATCH boundary path edge ellipse.

Parameters:
ellipsea pointer to a DXF HATCH boundary path edge ellipse.
start_anglethe start angle to be set for the entity.

Definition at line 10126 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_hatch_boundary_path_edge_ellipse_struct::start_angle.

double dxf_hatch_boundary_path_edge_ellipse_get_end_angle ( DxfHatchBoundaryPathEdgeEllipse ellipse)

Get the end angle from a DXF HATCH boundary path edge ellipse.

Returns:
end angle.
Parameters:
ellipsea pointer to a DXF HATCH boundary path edge ellipse.

Definition at line 10161 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_hatch_boundary_path_edge_ellipse_struct::end_angle.

DxfHatchBoundaryPathEdgeEllipse* dxf_hatch_boundary_path_edge_ellipse_set_end_angle ( DxfHatchBoundaryPathEdgeEllipse ellipse,
double  end_angle 
)

Set the end angle for a DXF HATCH boundary path edge ellipse.

Parameters:
ellipsea pointer to a DXF HATCH boundary path edge ellipse.
end_anglethe end angle to be set for the entity.

Definition at line 10194 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_hatch_boundary_path_edge_ellipse_struct::end_angle.

int dxf_hatch_boundary_path_edge_ellipse_get_is_ccw ( DxfHatchBoundaryPathEdgeEllipse ellipse)

Get the is_ccw value from a DXF HATCH boundary path edge ellipse.

Returns:
is_ ccw value.
Parameters:
ellipsea pointer to a DXF HATCH boundary path edge ellipse.

Definition at line 10229 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_hatch_boundary_path_edge_ellipse_struct::is_ccw.

DxfHatchBoundaryPathEdgeEllipse* dxf_hatch_boundary_path_edge_ellipse_set_is_ccw ( DxfHatchBoundaryPathEdgeEllipse ellipse,
int  is_ccw 
)

Set the is_ccw value for a DXF HATCH boundary path edge ellipse.

Parameters:
ellipsea pointer to a DXF HATCH boundary path edge ellipse.
is_ccwthe is_ccw value to be set for the entity.

Definition at line 10268 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_hatch_boundary_path_edge_ellipse_struct::is_ccw.

DxfHatchBoundaryPathEdgeEllipse* dxf_hatch_boundary_path_edge_ellipse_get_next ( DxfHatchBoundaryPathEdgeEllipse ellipse)

Get the pointer to the next HATCH boundary path edge ellipse from a DXF HATCH boundary path edge ellipse.

Returns:
pointer to the next HATCH boundary path edge ellipse.
Warning:
No checks are performed on the returned pointer.
Parameters:
ellipsea pointer to a DXF HATCH boundary path edge ellipse.

Definition at line 10311 of file hatch.c.

References _, DEBUG, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_hatch_boundary_path_edge_ellipse_struct::next.

DxfHatchBoundaryPathEdgeEllipse* dxf_hatch_boundary_path_edge_ellipse_set_next ( DxfHatchBoundaryPathEdgeEllipse ellipse,
DxfHatchBoundaryPathEdgeEllipse next 
)

Set the pointer to the next HATCH boundary path edge ellipse for a DXF HATCH boundary path edge ellipse.

Parameters:
ellipsea pointer to a DXF HATCH boundary path edge ellipse.
nexta pointer to the next HATCH boundary path edge ellipse for the entity.

Definition at line 10351 of file hatch.c.

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

DxfHatchBoundaryPathEdgeEllipse* dxf_hatch_boundary_path_edge_ellipse_get_last ( DxfHatchBoundaryPathEdgeEllipse ellipse)

Get the pointer to the last HATCH boundary path edge ellipse from a linked list of DXF HATCH boundary path edge ellipse.

Returns:
pointer to the last HATCH boundary path edge ellipse.
Warning:
No checks are performed on the returned pointer.
Parameters:
ellipsea pointer to a DXF HATCH boundary path edge ellipse.

Definition at line 10397 of file hatch.c.

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

DxfHatchBoundaryPathEdgeLine* dxf_hatch_boundary_path_edge_line_new ( )

Allocate memory for a DXF HATCH boundary path edge line.

Fill the memory contents with zeros.

Definition at line 10441 of file hatch.c.

References _, DXF_DEBUG_BEGIN, and DXF_DEBUG_END.

Referenced by dxf_hatch_boundary_path_edge_get_lines(), and dxf_hatch_boundary_path_edge_line_init().

DxfHatchBoundaryPathEdgeLine* dxf_hatch_boundary_path_edge_line_init ( DxfHatchBoundaryPathEdgeLine line)

Allocate memory and initialize data fields in a DXF HATCH boundary path edge line entity.

Returns:
NULL when no memory was allocated, a pointer to the allocated memory when succesful.
Parameters:
lineDXF hatch boundary path edge line entity.

Definition at line 10479 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, dxf_hatch_boundary_path_edge_line_new(), dxf_hatch_boundary_path_edge_line_struct::id_code, dxf_hatch_boundary_path_edge_line_struct::next, dxf_hatch_boundary_path_edge_line_struct::x0, dxf_hatch_boundary_path_edge_line_struct::x1, dxf_hatch_boundary_path_edge_line_struct::y0, and dxf_hatch_boundary_path_edge_line_struct::y1.

Here is the call graph for this function:

int dxf_hatch_boundary_path_edge_line_free ( DxfHatchBoundaryPathEdgeLine line)

Free the allocated memory for a DXF HATCH boundary path edge line and all it's data fields.

Returns:
EXIT_SUCCESS when done, or EXIT_FAILURE when an error occurred.
Parameters:
linePointer to the memory occupied by the DXF HATCH boundary path edge line entity.

Definition at line 10524 of file hatch.c.

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

Referenced by dxf_hatch_boundary_path_edge_line_free_chain().

void dxf_hatch_boundary_path_edge_line_free_chain ( DxfHatchBoundaryPathEdgeLine hatch_boundary_path_edge_lines)

Free the allocated memory for a chain of DXF HATCH boundary path edge lines and all their data fields.

Parameters:
hatch_boundary_path_edge_linespointer to the chain of DXF HATCH boundary path edge lines.

Definition at line 10563 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, dxf_hatch_boundary_path_edge_line_free(), and dxf_hatch_boundary_path_edge_line_struct::next.

Here is the call graph for this function:

int dxf_hatch_boundary_path_edge_line_get_id_code ( DxfHatchBoundaryPathEdgeLine line)

Get the ID code from a DXF HATCH boundary path edge line.

Returns:
ID code.
Parameters:
linea pointer to a DXF HATCH boundary path edge line.

Definition at line 10598 of file hatch.c.

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

DxfHatchBoundaryPathEdgeLine* dxf_hatch_boundary_path_edge_line_set_id_code ( DxfHatchBoundaryPathEdgeLine line,
int  id_code 
)

Set the ID code for a DXF HATCH boundary path edge line.

Parameters:
linea pointer to a DXF HATCH boundary path edge line.
id_codeIdentification number for the entity.
This is to be an unique (sequential) number in the DXF file.

Definition at line 10637 of file hatch.c.

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

double dxf_hatch_boundary_path_edge_line_get_x0 ( DxfHatchBoundaryPathEdgeLine line)

Get the X-value of the start point coordinate from a DXF HATCH boundary path edge line.

Returns:
x0.
Parameters:
linea pointer to a DXF HATCH boundary path edge line.

Definition at line 10681 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_hatch_boundary_path_edge_line_struct::x0.

DxfHatchBoundaryPathEdgeLine* dxf_hatch_boundary_path_edge_line_set_x0 ( DxfHatchBoundaryPathEdgeLine line,
double  x0 
)

Set the X-value of the start point coordinate for a DXF HATCH boundary path edge line.

Parameters:
linea pointer to a DXF HATCH boundary path edge line.
x0the X-value of the center point coordinate to be set for the entity.

Definition at line 10713 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_hatch_boundary_path_edge_line_struct::x0.

double dxf_hatch_boundary_path_edge_line_get_y0 ( DxfHatchBoundaryPathEdgeLine line)

Get the Y-value of the start point coordinate from a DXF HATCH boundary path edge line.

Returns:
y0.
Parameters:
linea pointer to a DXF HATCH boundary path edge line.

Definition at line 10748 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_hatch_boundary_path_edge_line_struct::y0.

DxfHatchBoundaryPathEdgeLine* dxf_hatch_boundary_path_edge_line_set_y0 ( DxfHatchBoundaryPathEdgeLine line,
double  y0 
)

Set the Y-value of the start point coordinate for a DXF HATCH boundary path edge line.

Parameters:
linea pointer to a DXF HATCH boundary path edge line.
y0the Y-value of the center point coordinate to be set for the entity.

Definition at line 10780 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_hatch_boundary_path_edge_line_struct::y0.

DxfPoint* dxf_hatch_boundary_path_edge_line_get_start_point ( DxfHatchBoundaryPathEdgeLine line,
int  id_code 
)

Get the start point of a DXF HATCH boundary path edge line.

Returns:
the start point.
Parameters:
linea pointer to a DXF HATCH boundary path edge line.
id_codeIdentification number for the entity.
This is to be an unique (sequential) number in the DXF file.

Definition at line 10814 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, dxf_point_init(), dxf_hatch_boundary_path_edge_line_struct::id_code, dxf_hatch_boundary_path_edge_line_struct::x0, dxf_hatch_boundary_path_edge_line_struct::x1, dxf_hatch_boundary_path_edge_line_struct::y0, and dxf_hatch_boundary_path_edge_line_struct::y1.

Here is the call graph for this function:

DxfHatchBoundaryPathEdgeLine* dxf_hatch_boundary_path_edge_line_set_start_point ( DxfHatchBoundaryPathEdgeLine line,
DxfPoint point 
)

Set the start point of a DXF HATCH boundary path edge line.

Returns:
a pointer to a DXF HATCH boundary path edge line.
Parameters:
linea pointer to a DXF HATCH boundary path edge line.
pointa pointer to a DXF POINT entity.

Definition at line 10875 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, dxf_point_struct::x0, dxf_hatch_boundary_path_edge_line_struct::x0, dxf_point_struct::y0, and dxf_hatch_boundary_path_edge_line_struct::y0.

double dxf_hatch_boundary_path_edge_line_get_x1 ( DxfHatchBoundaryPathEdgeLine line)

Get the X-value of the end point coordinate from a DXF HATCH boundary path edge line.

Returns:
x1.
Parameters:
linea pointer to a DXF HATCH boundary path edge line.

Definition at line 10917 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_hatch_boundary_path_edge_line_struct::x1.

DxfHatchBoundaryPathEdgeLine* dxf_hatch_boundary_path_edge_line_set_x1 ( DxfHatchBoundaryPathEdgeLine line,
double  x1 
)

Set the X-value of the end point coordinate for a DXF HATCH boundary path edge line.

Parameters:
linea pointer to a DXF HATCH boundary path edge line.
x1the X-value of the end point coordinate to be set for the entity.

Definition at line 10949 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_hatch_boundary_path_edge_line_struct::x1.

double dxf_hatch_boundary_path_edge_line_get_y1 ( DxfHatchBoundaryPathEdgeLine line)

Get the Y-value of the end point coordinate from a DXF HATCH boundary path edge line.

Returns:
y1.
Parameters:
linea pointer to a DXF HATCH boundary path edge line.

Definition at line 10984 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_hatch_boundary_path_edge_line_struct::y1.

DxfHatchBoundaryPathEdgeLine* dxf_hatch_boundary_path_edge_line_set_y1 ( DxfHatchBoundaryPathEdgeLine line,
double  y1 
)

Set the Y-value of the end point coordinate for a DXF HATCH boundary path edge line.

Parameters:
linea pointer to a DXF HATCH boundary path edge line.
y1the Y-value of the end point coordinate to be set for the entity.

Definition at line 11016 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_hatch_boundary_path_edge_line_struct::y1.

DxfPoint* dxf_hatch_boundary_path_edge_line_get_end_point ( DxfHatchBoundaryPathEdgeLine line,
int  id_code 
)

Get the end point of a DXF HATCH boundary path edge line.

Returns:
the end point.
Parameters:
linea pointer to a DXF HATCH boundary path edge line.
id_codeIdentification number for the entity.
This is to be an unique (sequential) number in the DXF file.

Definition at line 11050 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, dxf_point_init(), dxf_hatch_boundary_path_edge_line_struct::id_code, dxf_hatch_boundary_path_edge_line_struct::x0, dxf_hatch_boundary_path_edge_line_struct::x1, dxf_hatch_boundary_path_edge_line_struct::y0, and dxf_hatch_boundary_path_edge_line_struct::y1.

Here is the call graph for this function:

DxfHatchBoundaryPathEdgeLine* dxf_hatch_boundary_path_edge_line_set_end_point ( DxfHatchBoundaryPathEdgeLine line,
DxfPoint point 
)

Set the end point of a DXF HATCH boundary path edge line.

Returns:
a pointer to a DXF HATCH boundary path edge line.
Parameters:
linea pointer to a DXF HATCH boundary path edge line.
pointa pointer to a DXF POINT entity.

Definition at line 11111 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, dxf_point_struct::x0, dxf_hatch_boundary_path_edge_line_struct::x1, dxf_point_struct::y0, and dxf_hatch_boundary_path_edge_line_struct::y1.

DxfHatchBoundaryPathEdgeLine* dxf_hatch_boundary_path_edge_line_get_next ( DxfHatchBoundaryPathEdgeLine line)

Get the pointer to the next HATCH boundary path edge line from a DXF HATCH boundary path edge line.

Returns:
pointer to the next HATCH boundary path edge line.
Warning:
No checks are performed on the returned pointer.
Parameters:
linea pointer to a DXF HATCH boundary path edge line.

Definition at line 11155 of file hatch.c.

References _, DEBUG, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_hatch_boundary_path_edge_line_struct::next.

DxfHatchBoundaryPathEdgeLine* dxf_hatch_boundary_path_edge_line_set_next ( DxfHatchBoundaryPathEdgeLine line,
DxfHatchBoundaryPathEdgeLine next 
)

Set the pointer to the next HATCH boundary path edge line for a DXF HATCH boundary path edge line.

Parameters:
linea pointer to a DXF HATCH boundary path edge line.
nexta pointer to the next HATCH boundary path edge line for the entity.

Definition at line 11194 of file hatch.c.

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

DxfHatchBoundaryPathEdgeLine* dxf_hatch_boundary_path_edge_line_get_last ( DxfHatchBoundaryPathEdgeLine line)

Get the pointer to the last HATCH boundary path edge line from a linked list of DXF HATCH boundary path edge line.

Returns:
pointer to the last HATCH boundary path edge line.
Warning:
No checks are performed on the returned pointer.
Parameters:
linea pointer to a DXF HATCH boundary path edge line.

Definition at line 11238 of file hatch.c.

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

DxfHatchBoundaryPathEdgeSpline* dxf_hatch_boundary_path_edge_spline_new ( )

Allocate memory for a DXF HATCH boundary path edge spline.

Fill the memory contents with zeros.

Definition at line 11281 of file hatch.c.

References _, DXF_DEBUG_BEGIN, and DXF_DEBUG_END.

Referenced by dxf_hatch_boundary_path_edge_get_splines(), and dxf_hatch_boundary_path_edge_spline_init().

DxfHatchBoundaryPathEdgeSpline* dxf_hatch_boundary_path_edge_spline_init ( DxfHatchBoundaryPathEdgeSpline spline)
int dxf_hatch_boundary_path_edge_spline_free ( DxfHatchBoundaryPathEdgeSpline spline)

Free the allocated memory for a DXF HATCH boundary path edge spline and all it's data fields.

Returns:
EXIT_SUCCESS when done, or EXIT_FAILURE when an error occurred.
Parameters:
splinePointer to the memory occupied by the DXF HATCH boundary path edge spline entity.

Definition at line 11372 of file hatch.c.

References _, dxf_hatch_boundary_path_edge_spline_struct::control_points, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_hatch_boundary_path_edge_spline_struct::next.

Referenced by dxf_hatch_boundary_path_edge_spline_free_chain().

void dxf_hatch_boundary_path_edge_spline_free_chain ( DxfHatchBoundaryPathEdgeSpline hatch_boundary_path_edge_splines)

Free the allocated memory for a chain of DXF HATCH boundary path edge splines and all their data fields.

Parameters:
hatch_boundary_path_edge_splinespointer to the chain of DXF HATCH boundary path edge splines.

Definition at line 11412 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, dxf_hatch_boundary_path_edge_spline_free(), and dxf_hatch_boundary_path_edge_spline_struct::next.

Here is the call graph for this function:

int dxf_hatch_boundary_path_edge_spline_get_id_code ( DxfHatchBoundaryPathEdgeSpline spline)

Get the ID code from a DXF HATCH boundary path spline.

Returns:
ID code.
Parameters:
splinea pointer to a DXF HATCH boundary path edge spline.

Definition at line 11447 of file hatch.c.

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

DxfHatchBoundaryPathEdgeSpline* dxf_hatch_boundary_path_edge_spline_set_id_code ( DxfHatchBoundaryPathEdgeSpline spline,
int  id_code 
)

Set the ID code for a DXF HATCH boundary path spline.

Parameters:
splinea pointer to a DXF HATCH boundary path edge spline.
id_codeIdentification number for the entity.
This is to be an unique (sequential) number in the DXF file.

Definition at line 11486 of file hatch.c.

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

int dxf_hatch_boundary_path_edge_spline_get_degree ( DxfHatchBoundaryPathEdgeSpline spline)

Get the degree from a DXF HATCH boundary path spline.

Returns:
degree.
Parameters:
splinea pointer to a DXF HATCH boundary path edge spline.

Definition at line 11529 of file hatch.c.

References _, dxf_hatch_boundary_path_edge_spline_struct::degree, DXF_DEBUG_BEGIN, and DXF_DEBUG_END.

DxfHatchBoundaryPathEdgeSpline* dxf_hatch_boundary_path_edge_spline_set_degree ( DxfHatchBoundaryPathEdgeSpline spline,
int  degree 
)

Set the degree for a DXF HATCH boundary path spline.

Parameters:
splinea pointer to a DXF HATCH boundary path edge spline.
degreedegree.

Definition at line 11568 of file hatch.c.

References _, dxf_hatch_boundary_path_edge_spline_struct::degree, DXF_DEBUG_BEGIN, and DXF_DEBUG_END.

int dxf_hatch_boundary_path_edge_spline_get_rational ( DxfHatchBoundaryPathEdgeSpline spline)

Get the rational from a DXF HATCH boundary path spline.

Returns:
rational.
Parameters:
splinea pointer to a DXF HATCH boundary path edge spline.

Definition at line 11609 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_hatch_boundary_path_edge_spline_struct::rational.

DxfHatchBoundaryPathEdgeSpline* dxf_hatch_boundary_path_edge_spline_set_rational ( DxfHatchBoundaryPathEdgeSpline spline,
int  rational 
)

Set the rational for a DXF HATCH boundary path spline.

Parameters:
splinea pointer to a DXF HATCH boundary path edge spline.
rationalrational.

Definition at line 11641 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_hatch_boundary_path_edge_spline_struct::rational.

int dxf_hatch_boundary_path_edge_spline_get_periodic ( DxfHatchBoundaryPathEdgeSpline spline)

Get the periodic from a DXF HATCH boundary path spline.

Returns:
periodic.
Parameters:
splinea pointer to a DXF HATCH boundary path edge spline.

Definition at line 11675 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_hatch_boundary_path_edge_spline_struct::periodic.

DxfHatchBoundaryPathEdgeSpline* dxf_hatch_boundary_path_edge_spline_set_periodic ( DxfHatchBoundaryPathEdgeSpline spline,
int  periodic 
)

Set the periodic for a DXF HATCH boundary path spline.

Parameters:
splinea pointer to a DXF HATCH boundary path edge spline.
periodicperiodic.

Definition at line 11707 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_hatch_boundary_path_edge_spline_struct::periodic.

int dxf_hatch_boundary_path_edge_spline_get_number_of_knots ( DxfHatchBoundaryPathEdgeSpline spline)

Get the number_of_knots from a DXF HATCH boundary path spline.

Returns:
number_of_knots.
Parameters:
splinea pointer to a DXF HATCH boundary path edge spline.

Definition at line 11741 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_hatch_boundary_path_edge_spline_struct::number_of_knots.

DxfHatchBoundaryPathEdgeSpline* dxf_hatch_boundary_path_edge_spline_set_number_of_knots ( DxfHatchBoundaryPathEdgeSpline spline,
int  number_of_knots 
)

Set the number_of_knots for a DXF HATCH boundary path spline.

Parameters:
splinea pointer to a DXF HATCH boundary path edge spline.
number_of_knotsNumber of knots.

Definition at line 11780 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_hatch_boundary_path_edge_spline_struct::number_of_knots.

int dxf_hatch_boundary_path_edge_spline_get_knots ( DxfHatchBoundaryPathEdgeSpline spline,
double  knots[DXF_MAX_HATCH_BOUNDARY_PATH_EDGE_SPLINE_KNOTS] 
)

Get the knot values from a DXF HATCH boundary path spline.

Returns:
pointer to the knot values.
Warning:
No checks are performed on the returned pointer (double).
Parameters:
splinea pointer to a DXF HATCH boundary path edge spline.
knotsarray of knot values.

Definition at line 11823 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, DXF_MAX_HATCH_BOUNDARY_PATH_EDGE_SPLINE_KNOTS, and dxf_hatch_boundary_path_edge_spline_struct::knots.

DxfHatchBoundaryPathEdgeSpline* dxf_hatch_boundary_path_edge_spline_set_knots ( DxfHatchBoundaryPathEdgeSpline spline,
double  knots[DXF_MAX_HATCH_BOUNDARY_PATH_EDGE_SPLINE_KNOTS] 
)

Set the knot values for a DXF HATCH boundary path spline.

Parameters:
splinea pointer to a DXF HATCH boundary path edge spline.
knotsan array containing the additional proprietary data for the entity.

Definition at line 11860 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, DXF_MAX_HATCH_BOUNDARY_PATH_EDGE_SPLINE_KNOTS, and dxf_hatch_boundary_path_edge_spline_struct::knots.

int dxf_hatch_boundary_path_edge_spline_get_number_of_control_points ( DxfHatchBoundaryPathEdgeSpline spline)

Get the number_of_control_points from a DXF HATCH boundary path spline.

Returns:
number_of_control_points.
Parameters:
splinea pointer to a DXF HATCH boundary path edge spline.

Definition at line 11907 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_hatch_boundary_path_edge_spline_struct::number_of_control_points.

DxfHatchBoundaryPathEdgeSpline* dxf_hatch_boundary_path_edge_spline_set_number_of_control_points ( DxfHatchBoundaryPathEdgeSpline spline,
int  number_of_control_points 
)

Set the number_of_control_points for a DXF HATCH boundary path spline.

Parameters:
splinea pointer to a DXF HATCH boundary path edge spline.
number_of_control_pointsNumber of control points.

Definition at line 11947 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_hatch_boundary_path_edge_spline_struct::number_of_control_points.

DxfHatchBoundaryPathEdgeSplineCp* dxf_hatch_boundary_path_edge_spline_get_control_points ( DxfHatchBoundaryPathEdgeSpline spline)

Get the control points from a DXF HATCH boundary path spline.

Returns:
a pointer to the first control point.
Warning:
No low level copy is made of the series of control points.
Parameters:
splinea pointer to a DXF HATCH boundary path edge spline.

Definition at line 11990 of file hatch.c.

References _, dxf_hatch_boundary_path_edge_spline_struct::control_points, DEBUG, DXF_DEBUG_BEGIN, and DXF_DEBUG_END.

DxfHatchBoundaryPathEdgeSpline* dxf_hatch_boundary_path_edge_spline_set_control_points ( DxfHatchBoundaryPathEdgeSpline spline,
DxfHatchBoundaryPathEdgeSplineCp control_points 
)

Set the control_points for a DXF HATCH boundary path spline.

Parameters:
splinea pointer to a DXF HATCH boundary path edge spline.
control_pointsa pointer to the first control point.

Definition at line 12023 of file hatch.c.

References _, dxf_hatch_boundary_path_edge_spline_struct::control_points, DXF_DEBUG_BEGIN, and DXF_DEBUG_END.

int dxf_hatch_boundary_path_edge_spline_append_control_point ( DxfHatchBoundaryPathEdgeSpline spline,
DxfHatchBoundaryPathEdgeSplineCp control_point 
)

Append a control point to a HATCH boundary path edge spline entity.

After testing for NULL pointers, both the control point is appended and the number_of_control_points is increased by 1.

Example:

Start situation: a spline with 4 control points, and the control point control_point that is to be appended.

/home/bert/workspace/git/libdxf/doc/doxygen/html/inline_dotgraph_1.dot


Finished situation: a spline with the appended fifth control point, the memory for control point control_point is freed and set to NULL.

/home/bert/workspace/git/libdxf/doc/doxygen/html/inline_dotgraph_2.dot
Warning:
The pointer to the control point control_point is freed and set to NULL.
Returns:
EXIT_SUCCESS when done, or EXIT_FAILURE when an error occurred.
Parameters:
splineDXF HATCH boundary path edge spline entity.
control_pointDXF HATCH boundary path edge spline control point entity.

Definition at line 12121 of file hatch.c.

References _, dxf_hatch_boundary_path_edge_spline_struct::control_points, DXF_DEBUG_BEGIN, DXF_DEBUG_END, dxf_hatch_boundary_path_edge_spline_control_point_free(), dxf_hatch_boundary_path_edge_spline_control_point_new(), dxf_hatch_boundary_path_edge_spline_cp_struct::id_code, dxf_hatch_boundary_path_edge_spline_cp_struct::next, dxf_hatch_boundary_path_edge_spline_struct::number_of_control_points, dxf_hatch_boundary_path_edge_spline_cp_struct::weight, dxf_hatch_boundary_path_edge_spline_cp_struct::x0, and dxf_hatch_boundary_path_edge_spline_cp_struct::y0.

Here is the call graph for this function:

int dxf_hatch_boundary_path_edge_spline_prepend_control_point ( DxfHatchBoundaryPathEdgeSpline spline,
DxfHatchBoundaryPathEdgeSplineCp control_point 
)

Prepend a control point to a HATCH boundary path edge spline entity.

After testing for NULL pointers the new control point is prepended and the number_of_control_points is increased by 1.

Example:

Start situation: a spline with 4 control points, and the control point control_point that is to be prepended.

/home/bert/workspace/git/libdxf/doc/doxygen/html/inline_dotgraph_3.dot


Finished situation: a spline with the prepended control point totalling 5 control points, the memory for control point control_point is freed and set to NULL.

/home/bert/workspace/git/libdxf/doc/doxygen/html/inline_dotgraph_4.dot
Warning:
The pointer to the control point control_point is freed and set to NULL.
Returns:
EXIT_SUCCESS when done, or EXIT_FAILURE when an error occurred.
Parameters:
splineDXF HATCH boundary path edge spline entity.
control_pointDXF HATCH boundary path edge spline control point entity.

Definition at line 12262 of file hatch.c.

References _, dxf_hatch_boundary_path_edge_spline_struct::control_points, DXF_DEBUG_BEGIN, DXF_DEBUG_END, dxf_hatch_boundary_path_edge_spline_control_point_free(), dxf_hatch_boundary_path_edge_spline_control_point_new(), dxf_hatch_boundary_path_edge_spline_cp_struct::id_code, dxf_hatch_boundary_path_edge_spline_struct::number_of_control_points, dxf_hatch_boundary_path_edge_spline_cp_struct::weight, dxf_hatch_boundary_path_edge_spline_cp_struct::x0, and dxf_hatch_boundary_path_edge_spline_cp_struct::y0.

Here is the call graph for this function:

DxfHatchBoundaryPathEdgeSplineCp* dxf_hatch_boundary_path_edge_spline_get_control_point ( DxfHatchBoundaryPathEdgeSpline spline,
int  position 
)

Get a control point to a HATCH boundary path edge spline entity.

After testing for NULL pointers, a pointer to the requested control point is returned.

Returns:
a pointer to the requested control point.
Parameters:
splineDXF HATCH boundary path edge spline entity.
positionposition of the DXF HATCH boundary path edge spline control point entity.

Definition at line 12338 of file hatch.c.

References _, dxf_hatch_boundary_path_edge_spline_struct::control_points, DXF_DEBUG_BEGIN, DXF_DEBUG_END, dxf_hatch_boundary_path_edge_spline_control_point_free(), dxf_hatch_boundary_path_edge_spline_control_point_new(), dxf_hatch_boundary_path_edge_spline_cp_struct::next, and dxf_hatch_boundary_path_edge_spline_struct::number_of_control_points.

Here is the call graph for this function:

int dxf_hatch_boundary_path_edge_spline_set_control_point ( DxfHatchBoundaryPathEdgeSpline spline,
int  position,
DxfHatchBoundaryPathEdgeSplineCp control_point 
)

Set a control point to a HATCH boundary path edge spline entity.

After testing for NULL pointers, the control point is set at the requested position.

Warning:
The pointer to the control point cp is freed and set to NULL.
Returns:
EXIT_SUCCESS when done, or EXIT_FAILURE when an error occurred.
Parameters:
splineDXF HATCH boundary path edge spline entity.
positionposition of the DXF HATCH boundary path edge spline control point entity.
control_pointDXF HATCH boundary path edge spline control point entity.

Definition at line 12420 of file hatch.c.

References _, dxf_hatch_boundary_path_edge_spline_struct::control_points, DXF_DEBUG_BEGIN, DXF_DEBUG_END, dxf_hatch_boundary_path_edge_spline_control_point_free(), dxf_hatch_boundary_path_edge_spline_control_point_new(), dxf_hatch_boundary_path_edge_spline_cp_struct::id_code, dxf_hatch_boundary_path_edge_spline_cp_struct::next, dxf_hatch_boundary_path_edge_spline_struct::number_of_control_points, dxf_hatch_boundary_path_edge_spline_cp_struct::weight, dxf_hatch_boundary_path_edge_spline_cp_struct::x0, and dxf_hatch_boundary_path_edge_spline_cp_struct::y0.

Here is the call graph for this function:

int dxf_hatch_boundary_path_edge_spline_insert_control_point ( DxfHatchBoundaryPathEdgeSpline spline,
int  position,
DxfHatchBoundaryPathEdgeSplineCp control_point 
)

Insert a control point to a HATCH boundary path edge spline entity.

After testing for NULL pointers, insert the requested control point at the requested position.

Example:

Start situation: a spline with 4 control points, and the control point control_point that is to be inserted.

/home/bert/workspace/git/libdxf/doc/doxygen/html/inline_dotgraph_5.dot


Finished situation: a spline with the inserted control point between control points cp2 and cp3, totalling 5 control points, the memory for control point control_point is freed and set to NULL.

/home/bert/workspace/git/libdxf/doc/doxygen/html/inline_dotgraph_6.dot
Note:
There are two other possible and distinct scenarios, which result in inserting at the first position (see "prepending"), or result in inserting at the last position (see "appending").
Both these cases are addressed in this function (see comments in the source code).
Warning:
The pointer to the control point control_point is freed and set to NULL.
Returns:
EXIT_SUCCESS when done, or EXIT_FAILURE when an error occurred.
Parameters:
splineDXF HATCH boundary path edge spline entity.
positionposition of the DXF HATCH boundary path edge spline control point entity.
control_pointDXF HATCH boundary path edge spline control point entity.

Definition at line 12588 of file hatch.c.

References _, dxf_hatch_boundary_path_edge_spline_struct::control_points, DXF_DEBUG_BEGIN, DXF_DEBUG_END, dxf_hatch_boundary_path_edge_spline_control_point_free(), dxf_hatch_boundary_path_edge_spline_control_point_new(), dxf_hatch_boundary_path_edge_spline_cp_struct::id_code, dxf_hatch_boundary_path_edge_spline_cp_struct::next, dxf_hatch_boundary_path_edge_spline_struct::number_of_control_points, dxf_hatch_boundary_path_edge_spline_cp_struct::weight, dxf_hatch_boundary_path_edge_spline_cp_struct::x0, and dxf_hatch_boundary_path_edge_spline_cp_struct::y0.

Here is the call graph for this function:

int dxf_hatch_boundary_path_edge_spline_remove_control_point ( DxfHatchBoundaryPathEdgeSpline spline,
int  position 
)

Remove a control point from a HATCH boundary path edge spline entity.

After testing for NULL pointers remove the requested control point.

Returns:
EXIT_SUCCESS when done, or EXIT_FAILURE when an error occurred.
Parameters:
splineDXF HATCH boundary path edge spline entity.
positionposition of the DXF HATCH boundary path edge spline control point entity.

Definition at line 12730 of file hatch.c.

References _, dxf_hatch_boundary_path_edge_spline_struct::control_points, DXF_DEBUG_BEGIN, DXF_DEBUG_END, dxf_hatch_boundary_path_edge_spline_control_point_free(), dxf_hatch_boundary_path_edge_spline_control_point_new(), dxf_hatch_boundary_path_edge_spline_cp_struct::next, and dxf_hatch_boundary_path_edge_spline_struct::number_of_control_points.

Here is the call graph for this function:

DxfHatchBoundaryPathEdgeSplineCp* dxf_hatch_boundary_path_edge_spline_copy_control_points ( DxfHatchBoundaryPathEdgeSpline spline)

Copy control points from a HATCH boundary path edge spline entity into a new chain of control points.

After testing for NULL pointers and size of the allocated memory, a new chain of control points (destination) is setup by copying the member values from the control points from the spline (source).
For each control point in the destination chain new memory is allocated.

Example:

Start situation: a spline with 4 control points, and the control point control_points.

/home/bert/workspace/git/libdxf/doc/doxygen/html/inline_dotgraph_7.dot
/home/bert/workspace/git/libdxf/doc/doxygen/html/inline_dotgraph_8.dot


Finished situation: the unchanged spline with 4 control points, and a chain of control points starting at control_points.

/home/bert/workspace/git/libdxf/doc/doxygen/html/inline_dotgraph_9.dot
/home/bert/workspace/git/libdxf/doc/doxygen/html/inline_dotgraph_10.dot
Todo:
code needs to be checked !
Returns:
a pointer to the first of the requested control points, NULL if no control point was found.
Parameters:
splineDXF HATCH boundary path edge spline entity (source).

Definition at line 12915 of file hatch.c.

References _, dxf_hatch_boundary_path_edge_spline_struct::control_points, DXF_DEBUG_BEGIN, DXF_DEBUG_END, dxf_hatch_boundary_path_edge_spline_control_point_new(), dxf_hatch_boundary_path_edge_spline_cp_struct::id_code, dxf_hatch_boundary_path_edge_spline_cp_struct::next, dxf_hatch_boundary_path_edge_spline_cp_struct::weight, dxf_hatch_boundary_path_edge_spline_cp_struct::x0, and dxf_hatch_boundary_path_edge_spline_cp_struct::y0.

Here is the call graph for this function:

int dxf_hatch_boundary_path_edge_spline_append_knot_value ( DxfHatchBoundaryPathEdgeSpline spline,
double  knot_value 
)

Append a knot value to a HATCH boundary path edge spline entity.

After testing for a NULL pointer or an array pointer overflow, both the knot value is appended and the number_of_knots is increased by 1.

Returns:
EXIT_SUCCESS when done, or EXIT_FAILURE when an error occurred.
Parameters:
splineDXF HATCH boundary path edge spline entity.
knot_valueknot value.

Definition at line 13004 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, dxf_hatch_boundary_path_edge_spline_struct::knots, and dxf_hatch_boundary_path_edge_spline_struct::number_of_knots.

int dxf_hatch_boundary_path_edge_spline_prepend_knot_value ( DxfHatchBoundaryPathEdgeSpline spline,
double  knot_value 
)

Prepend a knot value to a HATCH boundary path edge spline entity.

After testing for a NULL pointer or an array pointer overflow, all the knots[] values are shifted one position up, the knot value is prepended and the number_of_knots is increased by 1.

Returns:
EXIT_SUCCESS when done, or EXIT_FAILURE when an error occurred.
Parameters:
splineDXF HATCH boundary path edge spline entity.
knot_valueknot value.

Definition at line 13051 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, dxf_hatch_boundary_path_edge_spline_struct::knots, and dxf_hatch_boundary_path_edge_spline_struct::number_of_knots.

double dxf_hatch_boundary_path_edge_spline_get_knot_value ( DxfHatchBoundaryPathEdgeSpline spline,
int  position 
)

Get a knot value from a HATCH boundary path edge spline entity.

After testing for a NULL pointer or an array pointer overflow, the desired knot value at position is returned.

Returns:
the knot value.
Parameters:
splineDXF HATCH boundary path edge spline entity.
positionposition in the array of knot values [0 .. DXF_MAX_HATCH_BOUNDARY_PATH_EDGE_SPLINE_KNOTS].

Definition at line 13102 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_hatch_boundary_path_edge_spline_struct::knots.

int dxf_hatch_boundary_path_edge_spline_set_knot_value ( DxfHatchBoundaryPathEdgeSpline spline,
int  position,
double  knot_value 
)

Set a knot value to a HATCH boundary path edge spline entity.

After testing for a NULL pointer or an array pointer overflow, the desired knot value at position is set.

Returns:
EXIT_SUCCESS when done, or EXIT_FAILURE when an error occurred.
Parameters:
splineDXF HATCH boundary path edge spline entity.
positionposition in the array of knot values [0 .. DXF_MAX_HATCH_BOUNDARY_PATH_EDGE_SPLINE_KNOTS].
knot_valueknot value.

Definition at line 13155 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_hatch_boundary_path_edge_spline_struct::knots.

int dxf_hatch_boundary_path_edge_spline_insert_knot_value ( DxfHatchBoundaryPathEdgeSpline spline,
int  position,
double  knot_value 
)

Insert a knot value into a HATCH boundary path edge spline entity.

After testing for a NULL pointer or an array pointer overflow, all the knot values upwards of knots[position] are shifted one position, the knot value is inserted at knots[position] and the number_of_knots is increased by 1.

Returns:
EXIT_SUCCESS when done, or EXIT_FAILURE when an error occurred.
Parameters:
splineDXF HATCH boundary path edge spline entity.
positionposition in the array of knot values [0 .. DXF_MAX_HATCH_BOUNDARY_PATH_EDGE_SPLINE_KNOTS].
knot_valueknot value.

Definition at line 13211 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, dxf_hatch_boundary_path_edge_spline_struct::knots, and dxf_hatch_boundary_path_edge_spline_struct::number_of_knots.

int dxf_hatch_boundary_path_edge_spline_remove_knot_value ( DxfHatchBoundaryPathEdgeSpline spline,
int  position 
)

Remove a knot value from a HATCH boundary path edge spline entity.

After testing for a NULL pointer or an array pointer overflow, all the knot values upwards of knots[position] are shifted one position down, and the number_of_knots is decreased by 1.

Returns:
EXIT_SUCCESS when done, or EXIT_FAILURE when an error occurred.
Parameters:
splineDXF HATCH boundary path edge spline entity.
positionposition in the array of knot values [0 .. DXF_MAX_HATCH_BOUNDARY_PATH_EDGE_SPLINE_KNOTS].

Definition at line 13280 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, dxf_hatch_boundary_path_edge_spline_struct::knots, and dxf_hatch_boundary_path_edge_spline_struct::number_of_knots.

int dxf_hatch_boundary_path_edge_spline_copy_knot_values ( DxfHatchBoundaryPathEdgeSpline spline,
double *  knot_values[DXF_MAX_HATCH_BOUNDARY_PATH_EDGE_SPLINE_KNOTS] 
)

Copy knot values from a HATCH boundary path edge spline entity into an array.

After testing for a NULL pointer or an array pointer overflow, all the knot values from spline (source) are copied into an array knot_values (destination).

Warning:
Make sure enough memory is allocated for the destination array.
Returns:
EXIT_SUCCESS when done, or EXIT_FAILURE when an error occurred.
Parameters:
splineDXF HATCH boundary path edge spline entity (source).
knot_valuesArray of knot values (destination).

Definition at line 13356 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, dxf_hatch_boundary_path_edge_spline_struct::knots, and dxf_hatch_boundary_path_edge_spline_struct::number_of_knots.

DxfHatchBoundaryPathEdgeSpline* dxf_hatch_boundary_path_edge_spline_get_next ( DxfHatchBoundaryPathEdgeSpline spline)

Get the pointer to the next HATCH boundary path edge spline entity from a DXF HATCH boundary path edge spline entity.

Returns:
pointer to the next HATCH boundary path edge spline entity.
Warning:
No checks are performed on the returned pointer.
Parameters:
splinea pointer to a DXF HATCH boundary path edge spline entity.

Definition at line 13404 of file hatch.c.

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

DxfHatchBoundaryPathEdgeSpline* dxf_hatch_boundary_path_edge_spline_set_next ( DxfHatchBoundaryPathEdgeSpline spline,
DxfHatchBoundaryPathEdgeSpline next 
)

Set the pointer to the next HATCH boundary path spline for a DXF HATCH boundary path spline.

Parameters:
splinea pointer to a DXF HATCH boundary path spline.
nexta pointer to the next HATCH boundary path spline for the entity.

Definition at line 13440 of file hatch.c.

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

DxfHatchBoundaryPathEdgeSpline* dxf_hatch_boundary_path_edge_spline_get_last ( DxfHatchBoundaryPathEdgeSpline spline)

Get the pointer to the last HATCH boundary path spline from a linked list of DXF HATCH boundary path splines.

Returns:
pointer to the last HATCH boundary path spline.
Warning:
No checks are performed on the returned pointer.
Parameters:
splinea pointer to a DXF HATCH boundary path spline.

Definition at line 13483 of file hatch.c.

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

DxfHatchBoundaryPathEdgeSplineCp* dxf_hatch_boundary_path_edge_spline_control_point_new ( )
DxfHatchBoundaryPathEdgeSplineCp* dxf_hatch_boundary_path_edge_spline_control_point_init ( DxfHatchBoundaryPathEdgeSplineCp control_point)

Allocate memory and initialize data fields in a DXF HATCH boundary path edge spline control point entity.

Returns:
NULL when no memory was allocated, a pointer to the allocated memory when succesful.
Parameters:
control_pointDXF hatch boundary path edge spline control point entity.

Definition at line 13565 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, dxf_hatch_boundary_path_edge_spline_control_point_new(), dxf_hatch_boundary_path_edge_spline_cp_struct::id_code, dxf_hatch_boundary_path_edge_spline_cp_struct::next, dxf_hatch_boundary_path_edge_spline_cp_struct::weight, dxf_hatch_boundary_path_edge_spline_cp_struct::x0, and dxf_hatch_boundary_path_edge_spline_cp_struct::y0.

Here is the call graph for this function:

int dxf_hatch_boundary_path_edge_spline_control_point_free ( DxfHatchBoundaryPathEdgeSplineCp control_point)

Free the allocated memory for a DXF HATCH boundary path edge spline control point and all it's data fields.

Returns:
EXIT_SUCCESS when done, or EXIT_FAILURE when an error occurred.
Parameters:
control_pointPointer to the memory occupied by the DXF HATCH boundary path edge spline control point entity.

Definition at line 13609 of file hatch.c.

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

Referenced by dxf_hatch_boundary_path_edge_spline_append_control_point(), dxf_hatch_boundary_path_edge_spline_control_point_free_chain(), dxf_hatch_boundary_path_edge_spline_get_control_point(), dxf_hatch_boundary_path_edge_spline_insert_control_point(), dxf_hatch_boundary_path_edge_spline_prepend_control_point(), dxf_hatch_boundary_path_edge_spline_remove_control_point(), and dxf_hatch_boundary_path_edge_spline_set_control_point().

void dxf_hatch_boundary_path_edge_spline_control_point_free_chain ( DxfHatchBoundaryPathEdgeSplineCp hatch_boundary_path_edge_spline_control_points)

Free the allocated memory for a chain of DXF HATCH boundary path edge spline control points and all their data fields.

Parameters:
hatch_boundary_path_edge_spline_control_pointspointer to the chain of DXF HATCH boundary path edge spline control points.

Definition at line 13648 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, dxf_hatch_boundary_path_edge_spline_control_point_free(), and dxf_hatch_boundary_path_edge_spline_cp_struct::next.

Here is the call graph for this function:

int dxf_hatch_boundary_path_edge_spline_cp_get_id_code ( DxfHatchBoundaryPathEdgeSplineCp control_point)

Get the ID code from a DXF HATCH boundary path spline control point.

Returns:
ID code.
Parameters:
control_pointa pointer to a DXF HATCH boundary path edge splie control point.

Definition at line 13684 of file hatch.c.

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

DxfHatchBoundaryPathEdgeSplineCp* dxf_hatch_boundary_path_edge_spline_cp_set_id_code ( DxfHatchBoundaryPathEdgeSplineCp control_point,
int  id_code 
)

Set the ID code for a DXF HATCH boundary path spline control point.

Parameters:
control_pointa pointer to a DXF HATCH boundary path spline control point.
id_codeIdentification number for the entity.
This is to be an unique (sequential) number in the DXF file.

Definition at line 13724 of file hatch.c.

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

double dxf_hatch_boundary_path_edge_spline_cp_get_x0 ( DxfHatchBoundaryPathEdgeSplineCp control_point)

Get the X-value of the coordinate from a DXF HATCH boundary path edge spline control point.

Returns:
x0.
Parameters:
control_pointa pointer to a DXF HATCH boundary path edge spline control point.

Definition at line 13768 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_hatch_boundary_path_edge_spline_cp_struct::x0.

DxfHatchBoundaryPathEdgeSplineCp* dxf_hatch_boundary_path_edge_spline_cp_set_x0 ( DxfHatchBoundaryPathEdgeSplineCp control_point,
double  x0 
)

Set the X-value of the coordinate for a DXF HATCH boundary path edge spline control point.

Parameters:
control_pointa pointer to a DXF HATCH boundary path edge spline control point.
x0the X-value of the coordinate to be set for the entity.

Definition at line 13801 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_hatch_boundary_path_edge_spline_cp_struct::x0.

double dxf_hatch_boundary_path_edge_spline_cp_get_y0 ( DxfHatchBoundaryPathEdgeSplineCp control_point)

Get the Y-value of the coordinate from a DXF HATCH boundary path edge spline control point.

Returns:
y0.
Parameters:
control_pointa pointer to a DXF HATCH boundary path edge spline control point.

Definition at line 13837 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_hatch_boundary_path_edge_spline_cp_struct::y0.

DxfHatchBoundaryPathEdgeSplineCp* dxf_hatch_boundary_path_edge_spline_cp_set_y0 ( DxfHatchBoundaryPathEdgeSplineCp control_point,
double  y0 
)

Set the Y-value of the coordinate for a DXF HATCH boundary path edge spline control point.

Parameters:
control_pointa pointer to a DXF HATCH boundary path edge spline control point.
y0the Y-value of the coordinate to be set for the entity.

Definition at line 13870 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_hatch_boundary_path_edge_spline_cp_struct::y0.

DxfPoint* dxf_hatch_boundary_path_edge_spline_cp_get_point ( DxfHatchBoundaryPathEdgeSplineCp control_point,
int  id_code 
)

Get the point of a DXF HATCH boundary path spline control point.

Returns:
the point.
Parameters:
control_pointa pointer to a DXF HATCH boundary path spline control point.
id_codeIdentification number for the DXfPoint entity.
This is to be an unique (sequential) number in the DXF file.

Definition at line 13906 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, dxf_point_init(), dxf_hatch_boundary_path_edge_spline_cp_struct::id_code, dxf_hatch_boundary_path_edge_spline_cp_struct::x0, and dxf_hatch_boundary_path_edge_spline_cp_struct::y0.

Here is the call graph for this function:

DxfHatchBoundaryPathEdgeSplineCp* dxf_hatch_boundary_path_edge_spline_cp_set_point ( DxfHatchBoundaryPathEdgeSplineCp control_point,
DxfPoint point 
)

Set the point of a DXF HATCH boundary path spline control point.

Returns:
a pointer to a DXF HATCH boundary path spline control point.
Parameters:
control_pointa pointer to a DXF HATCH boundary path spline control point.
pointa pointer to a DXF POINT entity.

Definition at line 13962 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, dxf_point_struct::x0, dxf_hatch_boundary_path_edge_spline_cp_struct::x0, dxf_point_struct::y0, and dxf_hatch_boundary_path_edge_spline_cp_struct::y0.

double dxf_hatch_boundary_path_edge_spline_cp_get_weight ( DxfHatchBoundaryPathEdgeSplineCp control_point)

Get the weight value from a HATCH boundary path edge spline control point.

Returns:
the weight value.
Parameters:
control_pointDXF HATCH boundary path edge spline control point.

Definition at line 14005 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_hatch_boundary_path_edge_spline_cp_struct::weight.

DxfHatchBoundaryPathEdgeSplineCp* dxf_hatch_boundary_path_edge_spline_cp_set_weight ( DxfHatchBoundaryPathEdgeSplineCp control_point,
double  weight 
)

Set the weight value to a HATCH boundary path edge spline control point.

Returns:
a pointer to a DXF HATCH boundary path spline control point, or NULL when an error occurred.
Parameters:
control_pointDXF HATCH boundary path edge spline control point.
weightweight value.

Definition at line 14041 of file hatch.c.

References _, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_hatch_boundary_path_edge_spline_cp_struct::weight.

DxfHatchBoundaryPathEdgeSplineCp* dxf_hatch_boundary_path_edge_spline_cp_get_next ( DxfHatchBoundaryPathEdgeSplineCp control_point)

Get the pointer to the next HATCH boundary path edge arc from a DXF HATCH boundary path edge arc.

Returns:
pointer to the next HATCH boundary path edge spline control point.
Warning:
No checks are performed on the returned pointer.
Parameters:
control_pointa pointer to a DXF HATCH boundary path edge spline control point.

Definition at line 14079 of file hatch.c.

References _, DEBUG, DXF_DEBUG_BEGIN, DXF_DEBUG_END, and dxf_hatch_boundary_path_edge_spline_cp_struct::next.

DxfHatchBoundaryPathEdgeSplineCp* dxf_hatch_boundary_path_edge_spline_cp_set_next ( DxfHatchBoundaryPathEdgeSplineCp control_point,
DxfHatchBoundaryPathEdgeSplineCp next 
)

Set the pointer to the next HATCH boundary path edge spline control point for a DXF HATCH boundary path edge spline control point.

Parameters:
control_pointa pointer to a DXF HATCH boundary path edge spline control point.
nexta pointer to the next HATCH boundary path edge spline control point for the entity.

Definition at line 14120 of file hatch.c.

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

DxfHatchBoundaryPathEdgeSplineCp* dxf_hatch_boundary_path_edge_spline_cp_get_last ( DxfHatchBoundaryPathEdgeSplineCp control_point)

Get the pointer to the last HATCH boundary path edge spline control point from a linked list of DXF HATCH boundary path edge spline control points.

Returns:
pointer to the last HATCH boundary path edge spline control point.
Warning:
No checks are performed on the returned pointer.
Parameters:
control_pointa pointer to a DXF HATCH boundary path edge spline control point.

Definition at line 14167 of file hatch.c.

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