Package com.sk89q.worldedit.regions
Class Polygonal2DRegion
java.lang.Object
java.util.AbstractCollection<BlockVector3>
java.util.AbstractSet<BlockVector3>
com.sk89q.worldedit.regions.AbstractRegion
com.sk89q.worldedit.regions.Polygonal2DRegion
- All Implemented Interfaces:
IBatchProcessor,FlatRegion,Region,Cloneable,Iterable<BlockVector3>,Collection<BlockVector3>,Set<BlockVector3>
Represents a 2D polygonal region.
-
Field Summary
Fields inherited from class com.sk89q.worldedit.regions.AbstractRegion
world -
Constructor Summary
ConstructorsConstructorDescriptionConstruct the region.Polygonal2DRegion(Polygonal2DRegion region) Make a copy of another region.Polygonal2DRegion(World world) Construct the region.Polygonal2DRegion(World world, List<BlockVector2> points, int minY, int maxY) Construct the region. -
Method Summary
Modifier and TypeMethodDescriptionvoidaddPoint(BlockVector2 position) Add a point to the list.voidaddPoint(BlockVector3 position) Add a point to the list.Get this region as an iterable flat region.clone()Make a clone of the region.booleancontains(int targetX, int targetZ) booleancontains(BlockVector3 position) Returns true based on whether the region contains the point.static booleancontains(List<BlockVector2> points, int minY, int maxY, BlockVector3 pt) Checks to see if a point is inside a region.booleancontainsEntireCuboid(int bx, int tx, int by, int ty, int bz, int tz) voidcontract(BlockVector3... changes) Contract the region.voidexpand(BlockVector3... changes) Expand the region.booleanexpandY(int y) Expand the height of the polygon to fit the specified Y.intGet Y-size.intGet Z-size.Get the upper point of a region.intGets the maximum Y value.Get the lower point of a region.intGets the minimum Y value.Get the list of points.longGet the number of blocks in the region.intgetWidth()Get X-size.iterator()Get the iterator.polygonize(int maxPoints) Polygonizes a cross-section or a 2D projection of the region orthogonal to the Y axis.protected voidRecalculate the bounding box of this polygonal region.voidsetMaximumY(int y) Set the maximum Y.voidsetMinimumY(int y) Set the minimum Y.voidshift(BlockVector3 change) Shift the region.intsize()Return the number of points.toString()Returns string representation in the format "(x1, z1) - ...Methods inherited from class com.sk89q.worldedit.regions.AbstractRegion
equals, getCenter, getChunkCubes, getChunks, getWorld, getWorldMaxY, getWorldMinY, hashCode, setWorldMethods inherited from class java.util.AbstractSet
removeAllMethods inherited from class java.util.AbstractCollection
add, addAll, clear, contains, containsAll, isEmpty, remove, retainAll, toArray, toArrayMethods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, waitMethods inherited from interface java.util.Collection
parallelStream, removeIf, stream, toArrayMethods inherited from interface com.fastasyncworldedit.core.queue.IBatchProcessor
flush, join, joinPost, postProcess, postProcessSet, processGet, processGet, remove, trimNBT, trimNBT, trimYMethods inherited from interface com.sk89q.worldedit.regions.Region
construct, contains, containsChunk, filter, filter, filter, filter, filter, getArea, getBoundingBox, getCenter, getChunkCubes, getChunks, getDimensions, getScope, getWorld, isGlobal, processSet, processSet, setWorld
-
Constructor Details
-
Polygonal2DRegion
public Polygonal2DRegion()Construct the region. -
Polygonal2DRegion
Construct the region.- Parameters:
world- the world
-
Polygonal2DRegion
Construct the region.- Parameters:
world- the worldpoints- list of pointsminY- minimum YmaxY- maximum Y
-
Polygonal2DRegion
Make a copy of another region.- Parameters:
region- the other region
-
-
Method Details
-
getPoints
Get the list of points.- Returns:
- a list of points
-
recalculate
protected void recalculate()Recalculate the bounding box of this polygonal region. This should be called after points have been changed. -
addPoint
Add a point to the list.- Parameters:
position- the position
-
addPoint
Add a point to the list.- Parameters:
position- the position
-
getMinimumY
public int getMinimumY()Description copied from interface:FlatRegionGets the minimum Y value.- Specified by:
getMinimumYin interfaceFlatRegion- Specified by:
getMinimumYin interfaceRegion- Returns:
- the Y value
-
setMinimumY
public void setMinimumY(int y) Set the minimum Y.- Parameters:
y- the Y
-
getMaximumY
public int getMaximumY()Description copied from interface:FlatRegionGets the maximum Y value.- Specified by:
getMaximumYin interfaceFlatRegion- Specified by:
getMaximumYin interfaceRegion- Returns:
- the Y value
-
setMaximumY
public void setMaximumY(int y) Set the maximum Y.- Parameters:
y- the Y
-
getMinimumPoint
Description copied from interface:RegionGet the lower point of a region.- Specified by:
getMinimumPointin interfaceRegion- Returns:
- min. point
-
getMaximumPoint
Description copied from interface:RegionGet the upper point of a region.- Specified by:
getMaximumPointin interfaceRegion- Returns:
- max. point
-
getVolume
public long getVolume()Description copied from interface:RegionGet the number of blocks in the region.- Specified by:
getVolumein interfaceRegion- Overrides:
getVolumein classAbstractRegion- Returns:
- number of blocks
-
getWidth
public int getWidth()Description copied from class:AbstractRegionGet X-size.- Specified by:
getWidthin interfaceRegion- Overrides:
getWidthin classAbstractRegion- Returns:
- width
-
getHeight
public int getHeight()Description copied from class:AbstractRegionGet Y-size.- Specified by:
getHeightin interfaceRegion- Overrides:
getHeightin classAbstractRegion- Returns:
- height
-
getLength
public int getLength()Description copied from class:AbstractRegionGet Z-size.- Specified by:
getLengthin interfaceRegion- Overrides:
getLengthin classAbstractRegion- Returns:
- length
-
expand
Description copied from interface:RegionExpand the region.- Specified by:
expandin interfaceRegion- Parameters:
changes- array/arguments with multiple related changes- Throws:
RegionOperationException- if the operation cannot be performed
-
contract
Description copied from interface:RegionContract the region.- Specified by:
contractin interfaceRegion- Parameters:
changes- array/arguments with multiple related changes- Throws:
RegionOperationException- if the operation cannot be performed
-
shift
Description copied from interface:RegionShift the region.- Specified by:
shiftin interfaceRegion- Overrides:
shiftin classAbstractRegion- Parameters:
change- the change- Throws:
RegionOperationException- if the operation cannot be performed
-
contains
public boolean contains(int targetX, int targetZ) -
contains
Description copied from interface:RegionReturns true based on whether the region contains the point. -
contains
Checks to see if a point is inside a region.- Parameters:
points- a list of pointsminY- the min YmaxY- the max Ypt- the position to check- Returns:
- true if the given polygon contains the given point
-
size
public int size()Return the number of points.- Specified by:
sizein interfaceCollection<BlockVector3>- Specified by:
sizein interfaceSet<BlockVector3>- Overrides:
sizein classAbstractRegion- Returns:
- the number of points
-
expandY
public boolean expandY(int y) Expand the height of the polygon to fit the specified Y.- Parameters:
y- the amount to expand- Returns:
- true if the area was expanded
-
iterator
Description copied from class:AbstractRegionGet the iterator.- Specified by:
iteratorin interfaceCollection<BlockVector3>- Specified by:
iteratorin interfaceIterable<BlockVector3>- Specified by:
iteratorin interfaceSet<BlockVector3>- Overrides:
iteratorin classAbstractRegion- Returns:
- iterator of points inside the region
-
asFlatRegion
Description copied from interface:FlatRegionGet this region as an iterable flat region.- Specified by:
asFlatRegionin interfaceFlatRegion- Returns:
- a flat region iterable
-
toString
Returns string representation in the format "(x1, z1) - ... - (xN, zN) * (minY - maxY)"- Overrides:
toStringin classAbstractCollection<BlockVector3>- Returns:
- string
-
clone
Description copied from interface:RegionMake a clone of the region.- Specified by:
clonein interfaceRegion- Overrides:
clonein classAbstractRegion- Returns:
- a cloned version
-
polygonize
Description copied from interface:RegionPolygonizes a cross-section or a 2D projection of the region orthogonal to the Y axis.- Specified by:
polygonizein interfaceRegion- Overrides:
polygonizein classAbstractRegion- Parameters:
maxPoints- maximum number of points to generate. -1 for no limit.- Returns:
- the points.
-
containsEntireCuboid
public boolean containsEntireCuboid(int bx, int tx, int by, int ty, int bz, int tz) - Specified by:
containsEntireCuboidin interfaceRegion
-