# R_GE_R_CONSECUTIVE_POINTS_SAME

## Anforderung

| ID | R_GE_R_CONSECUTIVE_POINTS_SAME |
|------------------------------ | ------ |
| Beschreibung | Punkte innerhalb eines Rings sollen sich nicht wiederholen (ausgenommen der erste und der letzte im Fall von GML, siehe [R_GE_R_NOT_CLOSED](R_GE_R_NOT_CLOSED.md). Dieser Fehler ist oft der Fall wenn zwei Punkte an der selben Stelle sind. |
| Parameter minVertexDistance | Punkte können als gleich angesehen werden, trotz (kleiner) Abstände, [siehe Vertex Anforderungen](geometric.md)
| Fehlercode | GE_R_CONSECUTIVE_POINTS_SAME |

Zum Beispiel dieser Ring ist fehlerhaft:
```xml
<gml:LinearRing>
<gml:pos>0.0 0.0 0.0</gml:pos>
<gml:pos>1.0 0.0 0.0</gml:pos>	
<gml:pos>1.0 0.0 0.0</gml:pos>
<gml:pos>1.0 1.0 0.0</gml:pos>		
<gml:pos>0.0 1.0 0.0</gml:pos>	
<gml:pos>0.0 0.0 0.0</gml:pos>
</gml:LinearRing>
```

Dieser Ring ist auch Fehlerhaft mit dem Parameter minVertexDistance = 0.1
```xml
<gml:LinearRing>
<gml:pos>0.0 0.0 0.0</gml:pos>
<gml:pos>0.05 0.0 0.0</gml:pos>
<gml:pos>1.0 0.0 0.0</gml:pos>	
<gml:pos>1.0 1.0 0.0</gml:pos>		
<gml:pos>0.0 1.0 0.0</gml:pos>	
<gml:pos>0.0 0.0 0.0</gml:pos>
</gml:LinearRing>
```

Das nächste Beispiel zeigt einen fehlerhaften Ring mit einem Punkt, der zwei mal vorkommt aber die Wiederholung nicht aufeinanderfolgend ist. Dies resultiert in einer Selbstverschneidung, dies ist mit dieser Anforderung nicht abgedeckt.

```xml
<gml:LinearRing>
<gml:pos>0.0 0.0 0.0</gml:pos>
<gml:pos>1.0 0.0 0.0</gml:pos>	
<gml:pos>1.0 1.0 0.0</gml:pos>	
<gml:pos>1.0 0.0 0.0</gml:pos>	
<gml:pos>0.0 1.0 0.0</gml:pos>	
<gml:pos>0.0 0.0 0.0</gml:pos>
</gml:LinearRing>
```


## Prüfungen

| ID | C_GE_R_CONSECUTIVE_POINTS_SAME|
|---- | ---- |
| Anforderungs ID | R_GE_R_CONSECUTIVE_POINTS_SAME |
| Vorbedingungen | R_SC_SCHEMA_VALIDATION, [R_GE_R_NOT_CLOSED](R_GE_R_NOT_CLOSED.md), [R_GE_R_TOO_FEW_POINTS](R_GE_R_TOO_FEW_POINTS.md) |
| Beschreibung | Prüft ob sich ein Punkt wiederholt |
| Fehlercode | GE_R_CONSECUTIVE_POINTS_SAME|

| ID | C_GE_R_DUPLICATE_POINT|
|---- | ---- |
| Anforderungs ID | R_GE_R_CONSECUTIVE_POINTS_SAME, GE-gml:LR-0004 (teilweise) |
| Vorbedingungen | R_SC_SCHEMA_VALIDATION, [R_GE_R_NOT_CLOSED](R_GE_R_NOT_CLOSED.md), [R_GE_R_TOO_FEW_POINTS](R_GE_R_TOO_FEW_POINTS.md) |
| Beschreibung | Erkennt aufeinanderfolgende als auch andere wiederholende Punkte. |
| Fehlercode | GE_R_CONSECUTIVE_POINTS_SAME, GE_R_SELF_INTERSECTION |

 