Klasse RegionPolicy
java.lang.Object
de.delinkedde.areashopreborn.application.RegionPolicy
Validates parcel geometry and configurable city limits.
-
Konstruktorübersicht
KonstruktorenKonstruktorBeschreibungRegionPolicy(int minimumWidth, int minimumHeight, int minimumLength, long maximumVolume, int maximumParcels) Creates a parcel validation policy that allows block-adjacent parcels.RegionPolicy(int minimumWidth, int minimumHeight, int minimumLength, long maximumVolume, int maximumParcels, boolean allowBoundaryTouch) Creates a parcel validation policy. -
Methodenübersicht
Modifizierer und TypMethodeBeschreibungbooleanReports whether directly neighbouring parcels are permitted.voidvalidate(CuboidBounds proposed, CuboidBounds city, List<EstateRegion> existing, boolean bypassLimits) Validates a proposed parcel against its city and existing siblings.voidvalidate(CuboidBounds proposed, CuboidBounds city, List<EstateRegion> geometryCandidates, int childCount, boolean bypassLimits) Validates geometry candidates while using a separately counted complete child cardinality.
-
Konstruktordetails
-
RegionPolicy
public RegionPolicy(int minimumWidth, int minimumHeight, int minimumLength, long maximumVolume, int maximumParcels) Creates a parcel validation policy that allows block-adjacent parcels.- Parameter:
minimumWidth- minimum inclusive X sizeminimumHeight- minimum inclusive Y sizeminimumLength- minimum inclusive Z sizemaximumVolume- maximum inclusive block volumemaximumParcels- maximum number of direct city children
-
RegionPolicy
public RegionPolicy(int minimumWidth, int minimumHeight, int minimumLength, long maximumVolume, int maximumParcels, boolean allowBoundaryTouch) Creates a parcel validation policy.- Parameter:
minimumWidth- minimum inclusive X sizeminimumHeight- minimum inclusive Y sizeminimumLength- minimum inclusive Z sizemaximumVolume- maximum inclusive block volumemaximumParcels- maximum number of direct city childrenallowBoundaryTouch- whether a new parcel may border an existing parcel directly
-
-
Methodendetails
-
allowsBoundaryTouch
public boolean allowsBoundaryTouch()Reports whether directly neighbouring parcels are permitted.- Gibt zurück:
truewhen a new parcel may share a border with an existing parcel
-
validate
public void validate(CuboidBounds proposed, CuboidBounds city, List<EstateRegion> existing, boolean bypassLimits) Validates a proposed parcel against its city and existing siblings.- Parameter:
proposed- proposed parcel boundscity- parent city boundsexisting- existing direct childrenbypassLimits- whether size and count limits may be bypassed
-
validate
public void validate(CuboidBounds proposed, CuboidBounds city, List<EstateRegion> geometryCandidates, int childCount, boolean bypassLimits) Validates geometry candidates while using a separately counted complete child cardinality.- Parameter:
proposed- proposed parcel boundscity- parent city boundsgeometryCandidates- siblings that can geometrically intersect the proposalchildCount- complete direct child countbypassLimits- whether configurable size and count limits may be bypassed
-