Class Polyline_ (unit DXF_structs)

Inherits from

DXF_Entity

///////////////////////////////////////////////////////////////////////////// Polyline Definition /////////////////////////////////////////////////////////////////////////////

Constructors


constructor create(OCSaxis:Point3D; numpoints:integer; points:ppointlist; col:integer; closed_:boolean);

///////////////////////////////////////////////////////////////////////////// Polyline /////////////////////////////////////////////////////////////////////////////


Functions

function closest_vertex(p:Point3D) : Point3D;


function closest_vertex_square_distance_2D(p:Point3D) : double;


procedure copy_attribs(p:Polyline_);


function count_lines : integer;


function count_points : integer;


function count_polys_closed : integer;


function count_polys_open : integer;


destructor destroy;


function details : string;


procedure Draw(acanvas:TCanvas; map_fn:coord_convert; OCS:pM);


procedure DrawVertices(acanvas:TCanvas; map_fn:coord_convert; OCS:pM);


function get_attrib(i:integer) : double;


function is_point_inside_object2D(p:Point3D) : boolean;


procedure max_min_extents(var emax,emin:Point3D);

3D polyline mesh vertex

function Move_point(p,newpoint:Point3D) : boolean;

some functions I use.

procedure quantize_coords(epsilon:double; mask:byte);


procedure set_attrib(i:integer; v:double);


procedure translate(T:Point3D);


function triangle_centre : Point3D;


procedure write_to_DXF(var IO:textfile; layer:string);


Properties

Events

Variables

attribs : array[0..max_my_attribs-1] of double;


closed : boolean;


numattrs : integer;


numvertices : integer;


polypoints : ppointlist;



Constructors


constructor create(OCSaxis:Point3D; numpoints:integer; points:ppointlist; col:integer; closed_:boolean);

///////////////////////////////////////////////////////////////////////////// Polyline /////////////////////////////////////////////////////////////////////////////


Functions


function closest_vertex(p:Point3D) : Point3D;


function closest_vertex_square_distance_2D(p:Point3D) : double;


procedure copy_attribs(p:Polyline_);


function count_lines : integer;


function count_points : integer;


function count_polys_closed : integer;


function count_polys_open : integer;


destructor destroy;


function details : string;


procedure Draw(acanvas:TCanvas; map_fn:coord_convert; OCS:pM);


procedure DrawVertices(acanvas:TCanvas; map_fn:coord_convert; OCS:pM);


function get_attrib(i:integer) : double;


function is_point_inside_object2D(p:Point3D) : boolean;


procedure max_min_extents(var emax,emin:Point3D);

3D polyline mesh vertex


function Move_point(p,newpoint:Point3D) : boolean;

some functions I use...most removed....


procedure quantize_coords(epsilon:double; mask:byte);


procedure set_attrib(i:integer; v:double);


procedure translate(T:Point3D);


function triangle_centre : Point3D;


procedure write_to_DXF(var IO:textfile; layer:string);


Properties


Events


Variables


attribs : array[0..max_my_attribs-1] of double;


closed : boolean;


numattrs : integer;


numvertices : integer;


polypoints : ppointlist;