RVC::GEOMETRIC Class Reference

Base for "geometric" objects. More...

#include <rvc/geometrc.h>

Inheritance diagram for RVC::GEOMETRIC:
Inheritance graph
[legend]

List of all members.

Classes

class  ELEMSELECTFILTER
class  ELEMSELECTPARMS
class  ELEMTRANSLIST
 Class to manage element translation lists from source to destination elements Eg: 'DestElemNum = TransList[SourceElemNum]' where 'TransList' is an array of INT32's The value '-1' states that the source element does not translate to a destination number. More...
class  GETOBJFILTER_HASMINIMUMELEMENTS
 GETOBJFILTER derived class to determine if the geometric object has the minimum number of elements of the specified types. More...
class  GETOBJFILTER_HASNOIMPLIEDGEOREF
 Geometric object selection filter to disallow selection of geometric objects already having implied georeference. More...
class  GETOBJFILTER_ISDISPLAYABLE
 Geometric object selection filter to disallow selection of empty and invalid extent geometric objects. More...
class  GETOBJFILTER_ISNOTEMPTY
 Geometric object selection filter to disallow selection of empty geometric objects. More...
class  GETOBJFILTER_ISSELECTABLE
 Geometric object selection filter to disallow selection of non geometric objects. More...
class  ITERATOR
 This is the base class for the LINE, POINT, POLYGON, and LABEL iterators. More...
class  LABEL
class  LABELITERATOR
class  LINEITERATOR
class  MAKEPARMSBASE
 Make parameter base class for RVC::GEOMETRIC objects. More...
class  NODEITERATOR
class  OBSERVER
 OBSERVER class for RVC::GEOMETRIC objects. More...
class  POINTITERATOR
class  POLYGONITERATOR
class  SEARCHFILTER
 Filter search class for FindClosestElement() method. More...
class  SEARCHFILTER_BITSET
 Filter search class for FindClosestElement() method supporting bit-set. More...
class  SEARCHFILTER_ELEMTRANSLIST
 Filter search class for FindClosestElement() method supporting bit-set. More...
class  SEARCHFILTER_UNSIGNEDSET
 Filter search class for FindClosestElement() method supporting bit-set. More...
class  SEARCHRESULT

Public Types

enum  CAPABILITY {
  CAPABILITY_None = 0, CAPABILITY_OwnSearchMethods = 512, CAPABILITY_CanAddToEnd, CAPABILITY_CanChangeElements,
  CAPABILITY_HasStyleByElement, CAPABILITY_ElementHasExtents, CAPABILITY_HasLabels, CAPABILITY_LabelHasExtents,
  CAPABILITY_CanDeleteLastElement, CAPABILITY_CanDeleteAnyElement, CAPABILITY_MultipleTableSupport, CAPABILITY_HasSpatialTrees = 766,
  CAPABILITY_HasQuadTrees = 767
}
enum  COMPONENT {
  COMPONENT_Point = 0x01, COMPONENT_Line = 0x02, COMPONENT_Polygon = 0x04, COMPONENT_Label = 0x08,
  COMPONENT_Node = 0x10, COMPONENT_Geometric = (COMPONENT_Point + COMPONENT_Line + COMPONENT_Polygon), COMPONENT_All = (COMPONENT_Geometric + COMPONENT_Label + COMPONENT_Node)
}
enum  EXTRACTFLAGS {
  EXTRACTFLAG_None = 0, EXTRACTFLAG_RegionMethod = 0x00000001, EXTRACTFLAG_RemExRecords = 0x00000002, EXTRACTFLAG_RemStdAttTables = 0x00000004,
  EXTRACTFLAG_IgnoreMissingLines = 0x00000008, EXTRACTFLAG_TableJoinNameStruct = 0x00000010, EXTRACTFLAG_TableJoinStruct = 0x00000020, EXTRACTFLAG_TableRemoveDupRec = 0x00000040,
  EXTRACTFLAG_IgnorePolygonTables = 0x00000080, EXTRACTFLAG_RemoveTables = 0x00000100, EXTRACTFLAG_CopyHyperIndexSub = 0x00000200, EXTRACTFLAG_DensifyPoints = 0x00000400,
  EXTRACTFLAG_CreateNewTables = 0x00000800
}
typedef MILIST< LABELLABELLIST
enum  POINTTYPE { POINTTYPE_2DXY = 1, POINTTYPE_3DXY = 4, POINTTYPE_3DXYZ = 7 }

Public Member Functions

 GEOMETRIC (const RVC::GEOMETRIC &rhs)
 GEOMETRIC ()
virtual ~GEOMETRIC ()=0
ERRVALUE AddSearchTreeElement (INT32 elemnum, ELEMTYPE ElemType, const DPOINT2D &Point)
ERRVALUE AddSearchTreeElement (INT32 elemnum, ELEMTYPE ElemType, const DRECT2D &Extents)
ERRVALUE BuildSearchTree (const QSEARCHTREE::MAKEPARMS &MakeParms) const
ERRVALUE BuildSearchTree (ELEMTYPE ElemType) const
ERRVALUE ClearSearchTree (const QSEARCHTREE::MAKEPARMS &MakeParms) const
ERRVALUE CombineStylesTo (RVC::GEOMETRIC &DestObj, SIMPLE_ARRAY< INT32 > &FontTrans, SIMPLE_ARRAY< INT32 > PattTrans[PATTERNTYPE_NumTypes]) const
ERRVALUE CombineStylesTo (RVC::GEOMETRIC &DestObj) const
ERRVALUE CopySearchTreeElement (INT32 SourceElement, INT32 DestElement, ELEMTYPE ElemType, const DPOINT2D &Point)
ERRVALUE CopySearchTreeElement (INT32 SourceElement, INT32 DestElement, ELEMTYPE ElemType, const DRECT2D &Extents)
ERRVALUE CreateSMLContext (SML::CONTEXT **pcontext) const
ERRVALUE DeleteSearchTree (ELEMTYPE ElemType)
ERRVALUE DeleteSearchTreeElement (INT32 elemnum, ELEMTYPE ElemType, const DPOINT2D &Point)
ERRVALUE DeleteSearchTreeElement (INT32 elemnum, ELEMTYPE ElemType, const DRECT2D &Extents)
ERRVALUE ExtractTo (RVC::GEOMETRIC &DestObj, RVC::GEOMETRIC::ELEMTRANSLIST &TransList, const TRANS2D_MAPGEN &tmg, RVC::GEOMETRIC::EXTRACTFLAGS ExtractFlags=EXTRACTFLAG_None) const
INT32 FindClosestElement (ELEMTYPE ElemType, const DPOINT2D &SearchPt, SEARCHFILTER &SearchFilter, double SearchDist, double *DistFromElem) const
INT32 FindClosestElement (ELEMTYPE ElemType, const DPOINT2D &SearchPt, double SearchDist, double *DistFromElem) const
ERRVALUE FindClosestElements (const DPOINT2D &SearchPt, double SearchDist, SEARCHFILTER &SearchFilter, SIMPLE_ARRAY< RVC::ELEMENT > &ElementList, COMPONENT Component=COMPONENT_All) const
ERRVALUE FindClosestElements (const DPOINT2D &SearchPt, double SearchDist, SIMPLE_ARRAY< RVC::ELEMENT > &ElementList, COMPONENT Component=COMPONENT_All) const
ERRVALUE FindElementDrawSet (ELEMTYPE ElemType, const DRECT2D &SearchExtents, SEARCHRESULT &SearchResult) const
ERRVALUE FindElementSearchSet (ELEMTYPE ElemType, const DRECT2D &SearchExtents, SEARCHRESULT &SearchResult) const
ERRVALUE FindElementSet (ELEMTYPE ElemType, const DRECT2D &Extents, UNSIGNEDSET &ElemSet, bool BuildIndex=false) const
INT32 GetAttachmentIndex (const RVC::ELEMENT &Element) const
DIMENSION GetDimension () const
ERRVALUE GetElementExtents (ELEMTYPE ElemType, INT32 ElemNum, DRECT3D &Extents) const
INT32 GetNextElementID (ELEMTYPE ElemType) const
INT32 GetNumElements (ELEMTYPE ElemType) const
INT32 GetPointDimension () const
INT32 GetPointSize () const
POINTTYPE GetPointType () const
double GetTotalLineLength () const
bool IsElementDeleted (const RVC::ELEMENT &Element) const
bool IsEmpty () const
LABELITERATOR LabelBegin (DIMENSION dim=DIMENSION_2D, STYLE *StyleObj=0)
LABELITERATOR LabelEnd ()
LINEITERATOR LineBegin (DIMENSION dim=DIMENSION_2D)
LINEITERATOR LineEnd ()
NODEITERATOR NodeBegin (DIMENSION dim=DIMENSION_3D)
NODEITERATOR NodeEnd ()
RVC::GEOMETRICoperator= (const RVC::GEOMETRIC &rhs)
POINTITERATOR PointBegin (DIMENSION dim=DIMENSION_2D)
POINTITERATOR PointEnd ()
POLYGONITERATOR PolygonBegin (DIMENSION dim=DIMENSION_2D)
POLYGONITERATOR PolygonEnd ()
ERRVALUE ReadElement (INT32 ElemNum, REGION2D &Region, DIMENSION dim) const
ERRVALUE ReadElement (INT32 ElemNum, POLYLINE &PointList, DIMENSION dim) const
ERRVALUE ReadElement (INT32 ElemNum, POLYLINELIST &LineList, DIMENSION dim) const
ERRVALUE ReadNextLabel (ELEMENT &Element, MILIST< LABEL > &Label, DIMENSION dim=DIMENSION_2D, STYLE *StyleObj=0) const
ERRVALUE ReadNextLine (ELEMENT &Element, POLYLINELIST &LineList, DIMENSION dim=DIMENSION_2D) const
ERRVALUE ReadNextNode (ELEMENT &Element, DPOINT3D &Node) const
ERRVALUE ReadNextPoint (ELEMENT &Element, POLYLINE &PointList, DIMENSION dim=DIMENSION_2D) const
ERRVALUE ReadNextRegion (ELEMENT &Element, REGION2D &Region, DIMENSION dim=DIMENSION_2D) const
ERRVALUE ReadRegion (const BITSET_UNOWNED &ElemSet, REGION2D &Region, DIMENSION dim, bool NoIslands=false) const
ERRVALUE SetExtents (const DRECT3D &extents)
ERRVALUE SetNextElementID (ELEMTYPE ElemType, INT32 NextElementID)
ERRVALUE SetTotalLineLength (double length)
int SetupElemTransList (const RVC::GEOMETRIC::ELEMSELECTPARMS &SelectParms, RVC::GEOMETRIC::ELEMTRANSLIST &TransList, RVC::GEOMETRIC::ELEMSELECTFILTER &SelectFilter) const
int SetupElemTransList (const RVC::GEOMETRIC::ELEMSELECTPARMS &SelectParms, RVC::GEOMETRIC::ELEMTRANSLIST &TransList) const
bool TestElementAgainstRegion (const RVC::ELEMENT &Element, const REGION2D &region, TESTCRITERIA TestMode) const
ERRVALUE UpdateExtents (const DRECT3D &extents)

Static Public Member Functions

static RVC::GEOMETRICGetGeometric (const RVC::OBJITEM &ObjItem)
static RVC::GEOMETRICGetGeometric (const RVC::OBJECT &object)
static RVC::OBJTYPESET GetObjTypeSet ()
static bool IsGeometric (RVC::OBJTYPE ObjType)

Private Member Functions

virtual ERRVALUE v_ExtractTo (RVC::GEOMETRIC &DestObj, RVC::GEOMETRIC::ELEMTRANSLIST &TransList, const TRANS2D_MAPGEN &tmg, RVC::GEOMETRIC::EXTRACTFLAGS ExtractFlags) const =0
virtual INT32 v_FindClosestElementLow (ELEMTYPE ElemType, const DPOINT2D &SearchPt, SEARCHFILTER *SearchFilter, double SearchDist, double *DistFromElem) const =0
virtual ERRVALUE v_FindClosestElementsLow (const DPOINT2D &SearchPt, double SearchDist, SEARCHFILTER *SearchFilter, SIMPLE_ARRAY< RVC::ELEMENT > &ElementList, COMPONENT Component) const
virtual ERRVALUE v_FindElementDrawSet (ELEMTYPE ElemType, const DRECT2D &SearchExtents, SEARCHRESULT &SearchResult) const
virtual ERRVALUE v_FindElementSearchSet (ELEMTYPE ElemType, const DRECT2D &SearchExtents, SEARCHRESULT &SearchResult) const
virtual ERRVALUE v_FindElementSet (ELEMTYPE ElemType, const DRECT2D &SearchExtents, UNSIGNEDSET &ElemSet, bool BuildIndex) const
virtual INT32 v_GetAttachmentIndex (const RVC::ELEMENT &Element) const
virtual ERRVALUE v_GetElementExtents (ELEMTYPE ElemType, INT32 ElemNum, DRECT3D &Extents) const =0
virtual INT32 v_GetNextElementID (ELEMTYPE ElemType) const =0
virtual INT32 v_GetNumElements (ELEMTYPE ElemType) const =0
virtual INT32 v_GetPointSize () const =0
virtual POINTTYPE v_GetPointType () const =0
virtual QSEARCHTREEv_GetSearchTree (ELEMTYPE ElemType) const =0
virtual SPATIALTREEv_GetSpatialTree () const
virtual double v_GetTotalLineLength () const =0
virtual bool v_IsElementDeleted (const RVC::ELEMENT &Element) const =0
virtual bool v_IsEmpty () const =0
virtual ERRVALUE v_ReadElement (INT32 ElemNum, REGION2D &Region, DIMENSION dim) const
virtual ERRVALUE v_ReadElement (INT32 ElemNum, POLYLINE &PointList, DIMENSION dim) const
virtual ERRVALUE v_ReadElement (INT32 ElemNum, POLYLINELIST &LineList, DIMENSION dim) const
virtual ERRVALUE v_ReadNextLabel (ELEMENT &Element, MILIST< LABEL > &Label, DIMENSION dim, STYLE *StyleObj) const
virtual ERRVALUE v_ReadNextLine (ELEMENT &Element, POLYLINELIST &LineList, DIMENSION dim) const
virtual ERRVALUE v_ReadNextNode (ELEMENT &Element, DPOINT3D &Node) const
virtual ERRVALUE v_ReadNextPoint (ELEMENT &Element, POLYLINE &PointList, DIMENSION dim) const
virtual ERRVALUE v_ReadNextRegion (ELEMENT &Element, REGION2D &Region, DIMENSION dim) const
virtual ERRVALUE v_ReadRegion (const BITSET_UNOWNED &ElemSet, REGION2D &Region, DIMENSION dim, bool NoIslands) const
virtual ERRVALUE v_SetExtents (const DRECT3D &extents)=0
virtual ERRVALUE v_SetNextElementID (ELEMTYPE ElemType, INT32 NextElementID)=0
virtual void v_SetSearchTree (ELEMTYPE ElemType, QSEARCHTREE *SearchTree) const =0
virtual void v_SetSpatialTree (SPATIALTREE *) const
virtual ERRVALUE v_SetTotalLineLength (double length)=0
virtual int v_SetupElemTransList (const RVC::GEOMETRIC::ELEMSELECTPARMS &SelectParms, RVC::GEOMETRIC::ELEMTRANSLIST &TransList, RVC::GEOMETRIC::ELEMSELECTFILTER *SelectFilter) const =0
virtual bool v_TestElementAgainstRegion (const RVC::ELEMENT &Element, const REGION2D &region, TESTCRITERIA TestMode) const =0
virtual ERRVALUE v_UpdateExtents (const DRECT3D &extents)=0

Detailed Description

Base for "geometric" objects.


Member Typedef Documentation


Member Enumeration Documentation

Enumerator:
CAPABILITY_None 
CAPABILITY_OwnSearchMethods 

Object has its own search methods (Oracle, MySQL, ...).

CAPABILITY_CanAddToEnd 

Object can be modified by adding elements to the end of the object.

CAPABILITY_CanChangeElements 

Existing object elements can be modified.

CAPABILITY_HasStyleByElement 

Each element can have its own style settings.

CAPABILITY_ElementHasExtents 

Each element has extents stored with it, except labels.

CAPABILITY_HasLabels 

Object has labels.

CAPABILITY_LabelHasExtents 

Each label has extents stored with it.

CAPABILITY_CanDeleteLastElement 

Can delete the last element in the set.

CAPABILITY_CanDeleteAnyElement 

Can delete any element in the set.

CAPABILITY_MultipleTableSupport 

Format can support any number of tables.

CAPABILITY_HasSpatialTrees 

Object can support spatial tree indexes.

CAPABILITY_HasQuadTrees 

Object can support quad tree indexes.

Reimplemented from RVC::GEOSPATIAL.

Enumerator:
COMPONENT_Point 
COMPONENT_Line 
COMPONENT_Polygon 
COMPONENT_Label 
COMPONENT_Node 
COMPONENT_Geometric 
COMPONENT_All 
Enumerator:
EXTRACTFLAG_None 
EXTRACTFLAG_RegionMethod 

SelectMethod is a REGION2D.

EXTRACTFLAG_RemExRecords 

Remove Excess (Unattached) database records.

EXTRACTFLAG_RemStdAttTables 

Remove Standard Attribute database tables.

EXTRACTFLAG_IgnoreMissingLines 

Ignore missing lines from extraction operation, polygon and node line lists.

EXTRACTFLAG_TableJoinNameStruct 

Join tables in Append functions if names alike and compatable structures.

EXTRACTFLAG_TableJoinStruct 

Join tables in Append functions if compatable structures.

EXTRACTFLAG_TableRemoveDupRec 

Do not copy over records if exists in dest table.

EXTRACTFLAG_IgnorePolygonTables 

Do not copy over polygon databases.

EXTRACTFLAG_RemoveTables 

Remove destination tables.

EXTRACTFLAG_CopyHyperIndexSub 

Copy Hyper index subobjects.

EXTRACTFLAG_DensifyPoints 

Densify line points using transformation parameters.

EXTRACTFLAG_CreateNewTables 

Copy records and tables instead of maintaining links.

Enumerator:
POINTTYPE_2DXY 

2-D coordinates, X and Y given (default)

POINTTYPE_3DXY 

3-D coordinates, X, Y given, Z constant

POINTTYPE_3DXYZ 

3-D coordinates, X, Y and Z given


Constructor & Destructor Documentation

RVC::GEOMETRIC::GEOMETRIC (  ) 

Default constructor.

RVC::GEOMETRIC::GEOMETRIC ( const RVC::GEOMETRIC rhs  ) 

Copy constructor.

virtual RVC::GEOMETRIC::~GEOMETRIC (  )  [pure virtual]

Destructor.


Member Function Documentation

ERRVALUE RVC::GEOMETRIC::AddSearchTreeElement ( INT32  elemnum,
ELEMTYPE  ElemType,
const DPOINT2D Point 
)

Add an element to the search tree Need to call OpenSearchTree() before using this method.

ERRVALUE RVC::GEOMETRIC::AddSearchTreeElement ( INT32  elemnum,
ELEMTYPE  ElemType,
const DRECT2D Extents 
)

Add an element to the search tree Need to call OpenSearchTree() before using this method.

ERRVALUE RVC::GEOMETRIC::BuildSearchTree ( const QSEARCHTREE::MAKEPARMS MakeParms  )  const

Populate a search tree given existing elements using the extents and number of elements given by the QSEARCHTREE::MAKEPARMS.

This will replace any existing search tree for this type with a new search tree.

ERRVALUE RVC::GEOMETRIC::BuildSearchTree ( ELEMTYPE  ElemType  )  const

Populate a search tree given existing elements using the extents and number of elements.

currently in the object. This will replace any existing search tree for this type with a new search tree.

ERRVALUE RVC::GEOMETRIC::ClearSearchTree ( const QSEARCHTREE::MAKEPARMS MakeParms  )  const

Clear a search tree using the extents and number of initial elements given by the QSEARCHTREE::MAKEPARMS.

Does not add known elements to the search tree.

ERRVALUE RVC::GEOMETRIC::CombineStylesTo ( RVC::GEOMETRIC DestObj,
SIMPLE_ARRAY< INT32 > &  FontTrans,
SIMPLE_ARRAY< INT32 PattTrans[PATTERNTYPE_NumTypes] 
) const

Combine styles from source object 'this' to the destination object 'DestObj'.

this method deals with style links from source tables Used for objects with direct style attachments (a.k.a CAD)

ERRVALUE RVC::GEOMETRIC::CombineStylesTo ( RVC::GEOMETRIC DestObj  )  const

Combine styles from source object 'this' to the destination object 'DestObj'.

this method deals with style links from source tables

ERRVALUE RVC::GEOMETRIC::CopySearchTreeElement ( INT32  SourceElement,
INT32  DestElement,
ELEMTYPE  ElemType,
const DPOINT2D Point 
)

Copy an element from one part of the search tree to another (atomic method) Need to call OpenSearchTree() before using this method.

ERRVALUE RVC::GEOMETRIC::CopySearchTreeElement ( INT32  SourceElement,
INT32  DestElement,
ELEMTYPE  ElemType,
const DRECT2D Extents 
)

Copy an element from one part of the search tree to another (atomic method) Need to call OpenSearchTree() before using this method.

ERRVALUE RVC::GEOMETRIC::CreateSMLContext ( SML::CONTEXT **  pcontext  )  const

Create an SML context for the given derived class instance.

Parameters:
pcontext SML context allocated and RETURNED
ERRVALUE RVC::GEOMETRIC::DeleteSearchTree ( ELEMTYPE  ElemType  ) 

Delete the search tree.

ERRVALUE RVC::GEOMETRIC::DeleteSearchTreeElement ( INT32  elemnum,
ELEMTYPE  ElemType,
const DPOINT2D Point 
)

Delete an element from the search tree Need to call OpenSearchTree() before using this method.

ERRVALUE RVC::GEOMETRIC::DeleteSearchTreeElement ( INT32  elemnum,
ELEMTYPE  ElemType,
const DRECT2D Extents 
)

Delete an element from the search tree Need to call OpenSearchTree() before using this method.

ERRVALUE RVC::GEOMETRIC::ExtractTo ( RVC::GEOMETRIC DestObj,
RVC::GEOMETRIC::ELEMTRANSLIST TransList,
const TRANS2D_MAPGEN tmg,
RVC::GEOMETRIC::EXTRACTFLAGS  ExtractFlags = EXTRACTFLAG_None 
) const [inline]

Extract elements from source 'this' object to existing destination object Deals with database attachments and element transfers Not implemented TIN yet.

INT32 RVC::GEOMETRIC::FindClosestElement ( ELEMTYPE  ElemType,
const DPOINT2D SearchPt,
SEARCHFILTER SearchFilter,
double  SearchDist,
double *  DistFromElem 
) const [inline]

Determine closest element based on point and search distance with filter.

Returns:
Element found, -1 if no elements are close enough, < -1 if error
INT32 RVC::GEOMETRIC::FindClosestElement ( ELEMTYPE  ElemType,
const DPOINT2D SearchPt,
double  SearchDist,
double *  DistFromElem 
) const [inline]

Determine closest element based on point and search distance.

Returns:
Element found, -1 if no elements are close enough, < -1 if error
ERRVALUE RVC::GEOMETRIC::FindClosestElements ( const DPOINT2D SearchPt,
double  SearchDist,
SEARCHFILTER SearchFilter,
SIMPLE_ARRAY< RVC::ELEMENT > &  ElementList,
COMPONENT  Component = COMPONENT_All 
) const [inline]

Determine set of elements that are within the 'SearchDist' of the 'SearchPt' with filter.

ERRVALUE RVC::GEOMETRIC::FindClosestElements ( const DPOINT2D SearchPt,
double  SearchDist,
SIMPLE_ARRAY< RVC::ELEMENT > &  ElementList,
COMPONENT  Component = COMPONENT_All 
) const [inline]

Determine set of elements that are within the 'SearchDist' of the 'SearchPt'.

ERRVALUE RVC::GEOMETRIC::FindElementDrawSet ( ELEMTYPE  ElemType,
const DRECT2D SearchExtents,
SEARCHRESULT SearchResult 
) const

Obtain set of elements that fall within the rectangle, return list in 'SearchResult' This method will NOT build search trees to determine the elements that fall within the rectangle.

If a search or spatial tree is not available to limit the search, all elements will be returned

ERRVALUE RVC::GEOMETRIC::FindElementSearchSet ( ELEMTYPE  ElemType,
const DRECT2D SearchExtents,
SEARCHRESULT SearchResult 
) const

Obtain set of elements that fall within the rectangle, return list in 'SearchResult' This method will build search trees, if needed, to determine the elements that fall within the rectangle.

ERRVALUE RVC::GEOMETRIC::FindElementSet ( ELEMTYPE  ElemType,
const DRECT2D Extents,
UNSIGNEDSET ElemSet,
bool  BuildIndex = false 
) const

Obtain set of elements that fall within specified extent, optionally building index/quadtree if needed.

Parameters:
ElemType Element type
Extents Extents
ElemSet Element set returned
BuildIndex Build search index (quadtree) if does not exist or is outdated
INT32 RVC::GEOMETRIC::GetAttachmentIndex ( const RVC::ELEMENT Element  )  const [inline]

Obtain the DBASE_ELEMENT Attachement index from the element specified.

Returns:
'-1' if element does not have a database attachment, >= 0 if it does.
DIMENSION RVC::GEOMETRIC::GetDimension (  )  const [inline]

Obtain DIMENSION type.

Returns:
DIMENSION type
ERRVALUE RVC::GEOMETRIC::GetElementExtents ( ELEMTYPE  ElemType,
INT32  ElemNum,
DRECT3D Extents 
) const [inline]

Obtain element extents using element type and element number.

Parameters:
Extents Element extents RETURNED, set to invalid if error or element is deleted
static RVC::GEOMETRIC* RVC::GEOMETRIC::GetGeometric ( const RVC::OBJITEM ObjItem  )  [static]

Get geometric object referred to by 'ObjItem'.

Returns:
Allocated instance of RVC::GEOMETRIC object (must be 'delete'd) or 0 if error
static RVC::GEOMETRIC* RVC::GEOMETRIC::GetGeometric ( const RVC::OBJECT object  )  [static]

Get geometric object referred to by 'object'.

Returns:
Allocated instance of RVC::GEOMETRIC object (must be 'delete'd) or 0 if error
INT32 RVC::GEOMETRIC::GetNextElementID ( ELEMTYPE  ElemType  )  const [inline]

Obtain next element ID depending on element type.

Returns:
Element ID to be used for the next element
INT32 RVC::GEOMETRIC::GetNumElements ( ELEMTYPE  ElemType  )  const [inline]

Obtain number of elements based on element type Specifying ELEMTYPE_All will return the total combination of elements in the object.

Returns:
Number of elements if valid ELEMTYPE for object, -1 if not
static RVC::OBJTYPESET RVC::GEOMETRIC::GetObjTypeSet (  )  [static]

Get correct OBJTYPESET for all geometric OBJTYPE's.

Returns:
OBJTYPESET for all geometric OBJTYPE's

Reimplemented from RVC::GEOSPATIAL.

INT32 RVC::GEOMETRIC::GetPointDimension (  )  const [inline]

Obtain number of point coordinate dimensions.

Returns:
Number of dimensions
INT32 RVC::GEOMETRIC::GetPointSize (  )  const [inline]

Obtain size of point coordinate.

Returns:
Size of point in bytes
POINTTYPE RVC::GEOMETRIC::GetPointType (  )  const [inline]

Obtain point coordinate type.

Returns:
POINTTYPE coordinate type
double RVC::GEOMETRIC::GetTotalLineLength (  )  const [inline]

Obtain the total line length of all of the lines in the geometric object combined.

Returns:
Total length of all of the lines combined or zero if not computed
bool RVC::GEOMETRIC::IsElementDeleted ( const RVC::ELEMENT Element  )  const [inline]

Determine if the element in this object is deleted.

Returns:
'true' if the element is deleted, 'false' if not.
bool RVC::GEOMETRIC::IsEmpty (  )  const [inline]

Determine if the object has any elements.

Returns:
'true' if the object is empty, 'false' if not.
static bool RVC::GEOMETRIC::IsGeometric ( RVC::OBJTYPE  ObjType  )  [static]

Determine if the object type is a geometric object.

LABELITERATOR RVC::GEOMETRIC::LabelBegin ( DIMENSION  dim = DIMENSION_2D,
STYLE StyleObj = 0 
) [inline]

Obtain a start iterator for geometric labels.

Returns:
a LABELITERATOR instance that contains the first label or LabelEnd()
LABELITERATOR RVC::GEOMETRIC::LabelEnd (  )  [inline]

Obtain the end iterator for geometric labels.

LINEITERATOR RVC::GEOMETRIC::LineBegin ( DIMENSION  dim = DIMENSION_2D  )  [inline]

Obtain a start iterator for geometric lines.

Returns:
a LINEITERATOR instance that contains the first line or LineEnd()
LINEITERATOR RVC::GEOMETRIC::LineEnd (  )  [inline]

Obtain the end iterator for geometric lines.

NODEITERATOR RVC::GEOMETRIC::NodeBegin ( DIMENSION  dim = DIMENSION_3D  )  [inline]

Obtain a start iterator for geometric nodes.

Returns:
a NODEITERATOR instance that contains the first node or NodeEnd()
NODEITERATOR RVC::GEOMETRIC::NodeEnd (  )  [inline]

Obtain the end iterator for geometric nodes.

RVC::GEOMETRIC& RVC::GEOMETRIC::operator= ( const RVC::GEOMETRIC rhs  ) 

Assignment.

Reimplemented from RVC::OBJECT.

Reimplemented in RVC::CAD, RVC::GEOREGION, RVC::GEOTABLE, RVC::SHAPE, RVC::TIN, and RVC::VECTOR.

POINTITERATOR RVC::GEOMETRIC::PointBegin ( DIMENSION  dim = DIMENSION_2D  )  [inline]

Obtain a start iterator for geometric points.

Returns:
a POINTITERATOR instance that contains the first point set or PointEnd()
POINTITERATOR RVC::GEOMETRIC::PointEnd (  )  [inline]

Obtain the end iterator for geometric points.

POLYGONITERATOR RVC::GEOMETRIC::PolygonBegin ( DIMENSION  dim = DIMENSION_2D  )  [inline]

Obtain a start iterator for geometric polygons.

Returns:
a POLYGONITERATOR instance that contains the first polygon set or PolygonEnd()
POLYGONITERATOR RVC::GEOMETRIC::PolygonEnd (  )  [inline]

Obtain the end iterator for geometric polygons.

ERRVALUE RVC::GEOMETRIC::ReadElement ( INT32  ElemNum,
REGION2D Region,
DIMENSION  dim 
) const [inline]

Read an element into 'Region'. Region will be empty if the element is not a 'polygon' type.

ERRVALUE RVC::GEOMETRIC::ReadElement ( INT32  ElemNum,
POLYLINE PointList,
DIMENSION  dim 
) const [inline]

Read an element into 'PointList'. PointList will be empty if the element is not a 'point' type.

ERRVALUE RVC::GEOMETRIC::ReadElement ( INT32  ElemNum,
POLYLINELIST LineList,
DIMENSION  dim 
) const [inline]

Read an element into 'LineList'. LineList will be empty if the element is not a 'line' type.

ERRVALUE RVC::GEOMETRIC::ReadNextLabel ( ELEMENT Element,
MILIST< LABEL > &  Label,
DIMENSION  dim = DIMENSION_2D,
STYLE StyleObj = 0 
) const [inline]

Read the next label in order based on the previous label given The 'Element' field determines which element was previously read and will be set to the next element that was read on this method's return.

If the ELEMENT::GetNumber() returns -1, the end of the element list has been reached.

ERRVALUE RVC::GEOMETRIC::ReadNextLine ( ELEMENT Element,
POLYLINELIST LineList,
DIMENSION  dim = DIMENSION_2D 
) const [inline]

Read the next point in order based on the previous point given The 'Element' field determines which element was previously read and will be set to the next element that was read on this method's return.

If the ELEMENT::GetNumber() returns -1, the end of the element list has been reached.

ERRVALUE RVC::GEOMETRIC::ReadNextNode ( ELEMENT Element,
DPOINT3D Node 
) const [inline]

Read the next point in order based on the previous point given The 'Element' field determines which element was previously read and will be set to the next element that was read on this method's return.

If the ELEMENT::GetNumber() returns -1, the end of the element list has been reached.

ERRVALUE RVC::GEOMETRIC::ReadNextPoint ( ELEMENT Element,
POLYLINE PointList,
DIMENSION  dim = DIMENSION_2D 
) const [inline]

Read the next point in order based on the previous point given The 'Element' field determines which element was previously read and will be set to the next element that was read on this method's return.

If the ELEMENT::GetNumber() returns -1, the end of the element list has been reached.

ERRVALUE RVC::GEOMETRIC::ReadNextRegion ( ELEMENT Element,
REGION2D Region,
DIMENSION  dim = DIMENSION_2D 
) const [inline]

Read the next point in order based on the previous point given The 'Element' field determines which element was previously read and will be set to the next element that was read on this method's return.

If the ELEMENT::GetNumber() returns -1, the end of the element list has been reached.

ERRVALUE RVC::GEOMETRIC::ReadRegion ( const BITSET_UNOWNED ElemSet,
REGION2D Region,
DIMENSION  dim,
bool  NoIslands = false 
) const [inline]

Generate a region given a bitset of polygonal elements to use.

The 'Region' will be empty if the virtual method is not supported.

Parameters:
ElemSet Set of polygonal elements to generate region from
Region Region to set
dim Set to dimension needed
NoIslands 'True' of no islands wanted
ERRVALUE RVC::GEOMETRIC::SetExtents ( const DRECT3D extents  )  [inline]

Set the extents of an object Only use if you have a write lock on the entire object.

ERRVALUE RVC::GEOMETRIC::SetNextElementID ( ELEMTYPE  ElemType,
INT32  NextElementID 
) [inline]

Set next element ID depending on element type.

ERRVALUE RVC::GEOMETRIC::SetTotalLineLength ( double  length  )  [inline]

Set the total line length of all of the lines in the geometric object combined.

int RVC::GEOMETRIC::SetupElemTransList ( const RVC::GEOMETRIC::ELEMSELECTPARMS SelectParms,
RVC::GEOMETRIC::ELEMTRANSLIST TransList,
RVC::GEOMETRIC::ELEMSELECTFILTER SelectFilter 
) const [inline]

Generate element translation lists dependent on the selection parameters.

Returns:
> 0 if elements are found to meet the selection parameters, '0' if no elements found, < 0 error
int RVC::GEOMETRIC::SetupElemTransList ( const RVC::GEOMETRIC::ELEMSELECTPARMS SelectParms,
RVC::GEOMETRIC::ELEMTRANSLIST TransList 
) const [inline]

Generate element translation lists dependent on the selection parameters.

Returns:
> 0 if elements are found to meet the selection parameters, '0' if no elements found, < 0 error
bool RVC::GEOMETRIC::TestElementAgainstRegion ( const RVC::ELEMENT Element,
const REGION2D region,
TESTCRITERIA  TestMode 
) const [inline]

Test element against region The REGION2D needs to be in 'object' coordinates, no conversion is done internally.

Returns:
True if test against region was sucessful
ERRVALUE RVC::GEOMETRIC::UpdateExtents ( const DRECT3D extents  )  [inline]

Update the extents of an object, this is a thread safe method.

virtual ERRVALUE RVC::GEOMETRIC::v_ExtractTo ( RVC::GEOMETRIC DestObj,
RVC::GEOMETRIC::ELEMTRANSLIST TransList,
const TRANS2D_MAPGEN tmg,
RVC::GEOMETRIC::EXTRACTFLAGS  ExtractFlags 
) const [private, pure virtual]
virtual INT32 RVC::GEOMETRIC::v_FindClosestElementLow ( ELEMTYPE  ElemType,
const DPOINT2D SearchPt,
SEARCHFILTER SearchFilter,
double  SearchDist,
double *  DistFromElem 
) const [private, pure virtual]
virtual ERRVALUE RVC::GEOMETRIC::v_FindClosestElementsLow ( const DPOINT2D SearchPt,
double  SearchDist,
SEARCHFILTER SearchFilter,
SIMPLE_ARRAY< RVC::ELEMENT > &  ElementList,
COMPONENT  Component 
) const [private, virtual]
virtual ERRVALUE RVC::GEOMETRIC::v_FindElementDrawSet ( ELEMTYPE  ElemType,
const DRECT2D SearchExtents,
SEARCHRESULT SearchResult 
) const [private, virtual]
virtual ERRVALUE RVC::GEOMETRIC::v_FindElementSearchSet ( ELEMTYPE  ElemType,
const DRECT2D SearchExtents,
SEARCHRESULT SearchResult 
) const [private, virtual]
virtual ERRVALUE RVC::GEOMETRIC::v_FindElementSet ( ELEMTYPE  ElemType,
const DRECT2D SearchExtents,
UNSIGNEDSET ElemSet,
bool  BuildIndex 
) const [private, virtual]
virtual INT32 RVC::GEOMETRIC::v_GetAttachmentIndex ( const RVC::ELEMENT Element  )  const [private, virtual]
virtual ERRVALUE RVC::GEOMETRIC::v_GetElementExtents ( ELEMTYPE  ElemType,
INT32  ElemNum,
DRECT3D Extents 
) const [private, pure virtual]
virtual INT32 RVC::GEOMETRIC::v_GetNextElementID ( ELEMTYPE  ElemType  )  const [private, pure virtual]
virtual INT32 RVC::GEOMETRIC::v_GetNumElements ( ELEMTYPE  ElemType  )  const [private, pure virtual]
virtual INT32 RVC::GEOMETRIC::v_GetPointSize (  )  const [private, pure virtual]
virtual POINTTYPE RVC::GEOMETRIC::v_GetPointType (  )  const [private, pure virtual]
virtual QSEARCHTREE* RVC::GEOMETRIC::v_GetSearchTree ( ELEMTYPE  ElemType  )  const [private, pure virtual]
virtual SPATIALTREE* RVC::GEOMETRIC::v_GetSpatialTree (  )  const [private, virtual]
virtual double RVC::GEOMETRIC::v_GetTotalLineLength (  )  const [private, pure virtual]
virtual bool RVC::GEOMETRIC::v_IsElementDeleted ( const RVC::ELEMENT Element  )  const [private, pure virtual]
virtual bool RVC::GEOMETRIC::v_IsEmpty (  )  const [private, pure virtual]
virtual ERRVALUE RVC::GEOMETRIC::v_ReadElement ( INT32  ElemNum,
REGION2D Region,
DIMENSION  dim 
) const [private, virtual]
virtual ERRVALUE RVC::GEOMETRIC::v_ReadElement ( INT32  ElemNum,
POLYLINE PointList,
DIMENSION  dim 
) const [private, virtual]
virtual ERRVALUE RVC::GEOMETRIC::v_ReadElement ( INT32  ElemNum,
POLYLINELIST LineList,
DIMENSION  dim 
) const [private, virtual]
virtual ERRVALUE RVC::GEOMETRIC::v_ReadNextLabel ( ELEMENT Element,
MILIST< LABEL > &  Label,
DIMENSION  dim,
STYLE StyleObj 
) const [private, virtual]
virtual ERRVALUE RVC::GEOMETRIC::v_ReadNextLine ( ELEMENT Element,
POLYLINELIST LineList,
DIMENSION  dim 
) const [private, virtual]
virtual ERRVALUE RVC::GEOMETRIC::v_ReadNextNode ( ELEMENT Element,
DPOINT3D Node 
) const [private, virtual]
virtual ERRVALUE RVC::GEOMETRIC::v_ReadNextPoint ( ELEMENT Element,
POLYLINE PointList,
DIMENSION  dim 
) const [private, virtual]
virtual ERRVALUE RVC::GEOMETRIC::v_ReadNextRegion ( ELEMENT Element,
REGION2D Region,
DIMENSION  dim 
) const [private, virtual]
virtual ERRVALUE RVC::GEOMETRIC::v_ReadRegion ( const BITSET_UNOWNED ElemSet,
REGION2D Region,
DIMENSION  dim,
bool  NoIslands 
) const [private, virtual]
virtual ERRVALUE RVC::GEOMETRIC::v_SetExtents ( const DRECT3D extents  )  [private, pure virtual]
virtual ERRVALUE RVC::GEOMETRIC::v_SetNextElementID ( ELEMTYPE  ElemType,
INT32  NextElementID 
) [private, pure virtual]
virtual void RVC::GEOMETRIC::v_SetSearchTree ( ELEMTYPE  ElemType,
QSEARCHTREE SearchTree 
) const [private, pure virtual]
virtual void RVC::GEOMETRIC::v_SetSpatialTree ( SPATIALTREE  )  const [private, virtual]
virtual ERRVALUE RVC::GEOMETRIC::v_SetTotalLineLength ( double  length  )  [private, pure virtual]
virtual int RVC::GEOMETRIC::v_SetupElemTransList ( const RVC::GEOMETRIC::ELEMSELECTPARMS SelectParms,
RVC::GEOMETRIC::ELEMTRANSLIST TransList,
RVC::GEOMETRIC::ELEMSELECTFILTER SelectFilter 
) const [private, pure virtual]
virtual bool RVC::GEOMETRIC::v_TestElementAgainstRegion ( const RVC::ELEMENT Element,
const REGION2D region,
TESTCRITERIA  TestMode 
) const [private, pure virtual]
virtual ERRVALUE RVC::GEOMETRIC::v_UpdateExtents ( const DRECT3D extents  )  [private, pure virtual]

The documentation for this class was generated from the following file:

Generated on Sun Oct 7 21:37:17 2012 for TNTsdk 2012 by  doxygen 1.6.1