| TerraLib 4.1

- Main Page
- Related Pages
- Modules
- Namespaces
- Classes
- Files
- Examples

- File List
- File Members

Classes | Namespaces | Defines | Typedefs | Functions
E:/Projetos_Primeiro_Semestre_2012/TerraView/terralib/src/terralib/kernel/TeIntersector.h File Reference

This file contains structures and definitions for line intersection algorithms. More...

`#include "TeCoord2D.h"`
`#include "TeRTree.h"`
`#include <vector>`

Go to the source code of this file.

## Classes

struct | TeINTERSECTOR2::TeBoundaryIP
| This struct is used to represent a point intersection between two segments on boundary of a TePolygon or TeLine2D. More...
struct | TeINTERSECTOR2::TeSegIdInPolygonSet
| This struct represents an index to the right place of a segment in a TeLineSet, TeLine2D, TePolygon or TePolygonSet. More...

## Namespaces

namespace | TeINTERSECTOR2

| Contains structures and definitions needed by line intersection algorithms (FOR INTERNAL USE ONLY).

## Defines

#define | EPSILON_COMPARE 1.0e-15
| An epsilon value used to compare two real numbers.

## Typedefs

typedef vector< TeBoundaryIP > | TeINTERSECTOR2::TeVectorBoundaryIP
| This is the type of intersection point list.
typedef pair < TeSegIdInPolygonSet, TeSegIdInPolygonSet > | TeINTERSECTOR2::TePairSegIdInPolygonSet
| This pair is used to index two segments that intersects.
typedef TeSAM::TeRTree < TeSegIdInPolygonSet, 8 > | TeINTERSECTOR2::TeSegmentRTree
| This is the type used to index the segments in the boundary of a TeLine2D, TeLineSet, TePolygon or TePolygonSet.

## Functions

TL_DLL short | TeINTERSECTOR2::TeCCW (const TeCoord2D &c1, const TeCoord2D &c2, const TeCoord2D &c3, bool &between)
| Tells if three points makes a right turn, a left turn or are collinear.
TL_DLL bool | TeINTERSECTOR2::TeIntersection (const TeCoord2D &a, const TeCoord2D &b, const TeCoord2D &c, const TeCoord2D &d, TeBoundaryIP &ips, TeSegmentIntersectionType &intersectionType)
| Returns the intersection point of the segments.
TL_DLL bool | TeINTERSECTOR2::TeIntersects (const TeCoord2D &a, const TeCoord2D &b, const TeCoord2D &c, const TeCoord2D &d, TeSegmentIntersectionType &intersectionType)
| Tells if two segments intersects.
TL_DLL bool | TeINTERSECTOR2::TeSafeIntersections (const TePolygonSet &redPols, const TePolygonSet &bluePols, TeVectorBoundaryIP &report)
| Verifies if there is an intersection between two given polygonsets.
TL_DLL bool | TeINTERSECTOR2::TeSafeIntersections (const TeLine2D &redLine, const TeLine2D &blueLine, TeVectorBoundaryIP &report, const unsigned int &redObjId=0, const unsigned int &blueObjId=0)
| Verifies if there is an intersection between two given lines.
TL_DLL bool | TeINTERSECTOR2::TeIntersects (const TeLine2D &redLine, const TeLine2D &blueLine)
| Returns true if the lines intersects.
TL_DLL bool | TeINTERSECTOR2::TeIntersection (const TePolygonSet &polygons, TeSegmentRTree &tree, TeVectorBoundaryIP &report)
| Reports intersections between segments of polygons in the polygonset list.
TL_DLL bool | TeINTERSECTOR2::TeIntersection (const TePolygonSet &redPolygons, TeSegmentRTree &redTree, const TePolygonSet &bluePolygons, TeINTERSECTOR2::TeVectorBoundaryIP &report)
| Reports intersections between segments of two diferent polygonsets.
TL_DLL bool | TeINTERSECTOR2::TeIntersection (const TeLineSet &redLines, const TePolygonSet &bluePolygons, TeSegmentRTree &blueTree, TeINTERSECTOR2::TeVectorBoundaryIP &report)
| Reports intersections between segments of a lineset and a polygonset.
TL_DLL bool | TeINTERSECTOR2::TeIsSimple (const TePolygonSet &polygons, vector< TePairSegIdInPolygonSet > &selfIntersectionList)
| Tells if there is a self-intersection between segments.
TL_DLL void | TeINTERSECTOR2::TeIndexPolygonSet (const TePolygonSet &polygons, TeSegmentRTree &tree)
| Index polygon's segments.

## Detailed Description

This file contains structures and definitions for line intersection algorithms.

Note:
  These data structures and algorithms MUST BE USED ONLY BY TerraLib kernel and should NOT be used by anyone because THIS IS FOR INTERNAL USE ONLY.

Author:
  Gilberto Ribeiro de Queiroz <gribeiro@dpi.inpe.br>

## Define Documentation

#define EPSILON_COMPARE 1.0e-15

An epsilon value used to compare two real numbers.

All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines