Class DXF_Object (unit DXF_structs)

Inherits from

TObject

///////////////////////////////////////////////////////////////////////////// DXF_Object class definition A Collection of DXF_Layers - eg a whole DXF file. /////////////////////////////////////////////////////////////////////////////

Constructors


constructor create(aname:string);

Create an empty object

///////////////////////////////////////////////////////////////////////////// DXF_Object class implementation /////////////////////////////////////////////////////////////////////////////


constructor create_from_file(aname:string; skipped:Tstrings);

Create an object and load from file


Functions

function add_entity_to_layer(entity:DXF_Entity; aname:string) : boolean;

add an entity to a named layer

Avoid using this if possible because we have to search for layer name every time


function add_layer(layer:DXF_Layer) : boolean;

add a pre-filled layer

procedure copy_to_strings(ts:TStrings);


function create_or_find_layer(aname:string) : DXF_Layer;

return layer and create if neccessary

destructor destroy;


function get_max_extent : Point3D;


function get_min_extent : Point3D;


function layer(aname:string) : DXF_Layer;

return the layer with a given name

procedure max_min_extents(var emax,emin:Point3D);

update the extents (not really needed

function merge_files(DXF_:DXF_Object) : boolean;

Add a second DXF file to this one

function new_layer(aname:string; DUPs_OK:boolean) : DXF_Layer;

add an empty layer

function num_layers : integer;


procedure remove_empty_layers_and_lists;

Useful ones

procedure save_to_file(aname:string);


Properties

property name : string


Events

Variables

DXF_name : string;


emax : Point3D;


emin : Point3D;


layer_lists : TList;



Constructors


constructor create(aname:string);

Create an empty object

///////////////////////////////////////////////////////////////////////////// DXF_Object class implementation /////////////////////////////////////////////////////////////////////////////


constructor create_from_file(aname:string; skipped:Tstrings);

Create an object and load from file


Functions


function add_entity_to_layer(entity:DXF_Entity; aname:string) : boolean;

add an entity to a named layer

Avoid using this if possible because we have to search for layer name every time


function add_layer(layer:DXF_Layer) : boolean;

add a pre-filled layer


procedure copy_to_strings(ts:TStrings);


function create_or_find_layer(aname:string) : DXF_Layer;

return layer and create if neccessary


destructor destroy;


function get_max_extent : Point3D;


function get_min_extent : Point3D;


function layer(aname:string) : DXF_Layer;

return the layer with a given name


procedure max_min_extents(var emax,emin:Point3D);

update the extents (not really needed


function merge_files(DXF_:DXF_Object) : boolean;

Add a second DXF file to this one


function new_layer(aname:string; DUPs_OK:boolean) : DXF_Layer;

add an empty layer


function num_layers : integer;


procedure remove_empty_layers_and_lists;

Useful ones


procedure save_to_file(aname:string);


Properties


property name : string


Events


Variables


DXF_name : string;


emax : Point3D;


emin : Point3D;


layer_lists : TList;