Programmer's Documentation

Public Member Functions | Private Attributes | List of all members
IgesLineEntity Class Reference

Detailed Description

IGES 110 : Line.

Spec : IGES 5.3 page 119

A line is a bounded, connected portion of a straight line which has distinct start and terminate points. A line is defined by its end points. Each end point is specified relative to definition space by triple coordinates. With respect to definition space, a direction is associated with the line by considering the start point to be listed first and the terminate point second.

The direction of the line with respect to model space is determined by the original direction of the line within definition space, in conjunction with the action of the transformation matrix on the line.

See Also
IgesEntity, IgesFile

#include <iges110.h>

Inheritance diagram for IgesLineEntity:
Collaboration diagram for IgesLineEntity:

Public Member Functions

 IgesLineEntity ()
 create line entity
 IgesLineEntity (const Vct3 &a, const Vct3 &b)
 create line entity from available points
void setup (const double a[], const double b[])
 copy data from provider
const double * point1 () const
 access point 1
const double * point2 () const
 access point 2
void definition (IgesFile &file)
 assemble definition
uint parse (const std::string &pds, const Indices &vpos)
 parse entity data
- Public Member Functions inherited from IgesEntity
 IgesEntity (int ety)
 create entity type etype
virtual ~IgesEntity ()
int etype () const
 entity type
int classOf () const
 entity class identifier
void form (int f)
 access the form field of the directory entry
void blank (int b)
 access status field: blank (0/1)
void subswitch (int b)
 access status field: subordinate switch (0-3)
void useflag (int b)
 access status field: use flag (0-6)
void hierarchy (int b)
 access status field: hierachy flag (0-2)
void trafoMatrix (int tfi)
 access transformation matrix field
int trafoMatrix ()
 access transformation matrix field
void label (const char *s)
 set entity label (use only 8 characters)
std::string label () const
 return label, if present
void subscript (int s)
 set entity subscript
void addNoteRef (int ide)
 add reference to assoc/note DE
void addPropRef (int ide)
 add reference to property/attribute table DE
uint pindex () const
 parameter data index
uint nNoteRef () const
 number of notes
uint nPropRef () const
 number of property references
int noteRef (uint k) const
 access note reference k
int propRef (uint k) const
 access property reference k
int append (IgesFile &igfile)
 append entity to file
bool retrieve (const IgesFile &igfile)
 retrieve entity from file

Private Attributes

double p1 [3]
 defined by two points
double p2 [3]

Additional Inherited Members

- Public Types inherited from IgesEntity
enum  IgesEntityClass {
  NoClass = 0, PointClass = 1, LineClass = 2, CurveClass = 4,
  SurfaceClass = 8, StructureClass = 16, AnyClass = 31
- Static Public Member Functions inherited from IgesEntity
static IgesEntitycreate (const IgesDirEntry &e)
 generate a new entity from code, return zero if not implemented
template<class EType >
static bool as (const IgesEntityPtr &ep, EType &t)
 convenience function
static int classOf (int etype)
 identity class of entity number
- Static Protected Member Functions inherited from IgesEntity
static int asInt (const char *s, int k)
 convenience conversion function
static double asDouble (const char *s, int k)
 convenience conversion function
- Protected Attributes inherited from IgesEntity
IgesDirEntry entry
 directory entry
int plcpre
 line counts in parameter section
int plcpost
std::vector< int > addprop1
 additional properties (two groups)
std::vector< int > addprop2

The documentation for this class was generated from the following files:
Generated on Mon Jan 24 2022 03:03:17 for libsurf by   doxygen 1.8.5