public class DefaultWayTagResolver extends java.lang.Object implements WayTagResolver
isValid()
car,bike,foot
, hier also car=1, bike=2, foot=4, usw.isValid()
wtr.tag.highway.secondary=1,5,50,car
car,bike
.
Dieser Wert landet spaeter in den flags
wtr.deny.tracktype.grade5=bike
bike
-flag wenn grade5
wtr.deny.motorcar.yes=car
car
-flag wenn motorcar
erlaubt.
osm2po.config
-Datei.TagResolver
ONEWAY_NO, ONEWAY_YES, ONEWAY_YES_REVERSED, ONEWAY_YES_ROUNDABOUT, ONEWAY_YES_UNKNOWN
CLAZZ_NULL, FLAGS_NULL, TAG_CUSTOM
Constructor and Description |
---|
DefaultWayTagResolver() |
Modifier and Type | Method and Description |
---|---|
void |
close()
Schliesst und ermoeglicht so das Aufraeumen
etwaiger Resourcen.
|
byte |
getClazz()
Liefert eine Typ-Klassen-Id.
|
Var<?> |
getCustom()
Liefert frei definierbare Zusatzinformationen.
|
int |
getFlags()
Sollte ein BitFeld (int) liefern, welches Auskunft
ueber Bestimmte Eigenschaften liefert.
|
java.lang.String |
getName()
Liefert den Namen einer OSM-Entity.
|
int |
getOneWayType()
Einbahnstrasse ja/nein bzw. weitere Sonderlocken.
|
int |
getSpeedInKmh()
Liefert die maximale Geschwindigkeit in Kmh.
|
boolean |
isLevelCrossing()
Liefert true, wenn es sich hier um einen OSM-Weg
handelt, der bei
OsmNode.isLevelCrossing()
entkoppelt werden muss. z.B. bei Bahnuebergaengen,
die Schiene und Strasse verbinden. |
boolean |
isPolygon() |
boolean |
isRoundabout() |
boolean |
isValid()
Liefert die finale Entscheidung, ob ein Weg verarbeitet
oder verworfen werden soll.
|
void |
onObj(java.lang.String key,
java.lang.Object value)
Kann von einem
OsmParserHandler gerufen werden,
um benutzerdefinierte Daten zu uebertragen. |
void |
onTag(java.lang.String key,
java.lang.String value)
Wird vom
OsmParserHandler fuer jedes gelesene Tag aufgerufen. |
void |
onTags(long entityId)
Wird vom
OsmParserHandler aufgerufen, um
eine Instanz dieser Klasse darueber zu informieren,
dass interne Variablen zu reinitialisieren sind. |
void |
onTagsComplete()
Wird nach dem Lesen aller Tags
aufgerufen und bietet somit die letzte Chance
die bisher ermittelten Werte zu interpretieren.
|
void |
open(Config config)
Wird einmalig nach der Instanziierung aufgerufen.
|
public void open(Config config)
TagResolver
open
in interface TagResolver
config
- Config
Konfiguration.public void onTags(long entityId)
TagResolver
OsmParserHandler
aufgerufen, um
eine Instanz dieser Klasse darueber zu informieren,
dass interne Variablen zu reinitialisieren sind.
Also vor dem Lesen einer neuen Tag-Sammlung.onTags
in interface TagResolver
entityId
- Id - Node, Way, Relation.public void onTag(java.lang.String key, java.lang.String value)
TagResolver
OsmParserHandler
fuer jedes gelesene Tag aufgerufen.onTag
in interface TagResolver
key
- String
Schluessel.value
- String
Wert.public void onObj(java.lang.String key, java.lang.Object value)
TagResolver
OsmParserHandler
gerufen werden,
um benutzerdefinierte Daten zu uebertragen.TagResolver.TAG_CUSTOM
bereitstellen
und Objekte vom Typ Var
als TagResolver.getCustom()
zurueckliefern.onObj
in interface TagResolver
key
- String
Schluessel.value
- Object
beliebiger Wert.TagResolver.getCustom()
public java.lang.String getName()
TagResolver
getName
in interface TagResolver
String
Name.public Var<?> getCustom()
TagResolver
getCustom
in interface TagResolver
Var
.TagResolver.onObj(String, Object)
public int getFlags()
TagResolver
getFlags
in interface TagResolver
public byte getClazz()
TagResolver
getClazz
in interface TagResolver
public int getOneWayType()
WayTagResolver
getOneWayType
in interface WayTagResolver
WayTagResolver.ONEWAY_YES
, WayTagResolver.ONEWAY_NO
,
WayTagResolver.ONEWAY_YES_REVERSED
, WayTagResolver.ONEWAY_YES_UNKNOWN
public boolean isValid()
wtr.trustValid=true
(konvertiert alle Wege).
clazz
und flags
sind groesser 0.wtr.finalMask
gesetzt ist, dann muessen
die flags
mit einer der gesetzten Masken
1zu1 uebereinstimmen. Mehrere Maskenwerte sind durch Kommata
getrennt aufzulisten.
isValid
in interface TagResolver
DefaultWayTagResolver
public int getSpeedInKmh()
WayTagResolver
getSpeedInKmh
in interface WayTagResolver
public boolean isLevelCrossing()
WayTagResolver
OsmNode.isLevelCrossing()
entkoppelt werden muss. z.B. bei Bahnuebergaengen,
die Schiene und Strasse verbinden.isLevelCrossing
in interface WayTagResolver
public boolean isPolygon()
isPolygon
in interface WayTagResolver
public boolean isRoundabout()
isRoundabout
in interface WayTagResolver
public void onTagsComplete()
TagResolver
onTagsComplete
in interface TagResolver
public void close()
TagResolver
close
in interface TagResolver