All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.groupbyinc.flux.common.geo.builders.PolygonBuilder.class Maven / Gradle / Ivy

There is a newer version: 198
Show newest version
????4?6com/groupbyinc/flux/common/geo/builders/PolygonBuilder4com/groupbyinc/flux/common/geo/builders/ShapeBuilderPolygonBuilder.javaAcom/groupbyinc/flux/common/geo/builders/ShapeBuilder$GeoShapeTypeGeoShapeType@com/groupbyinc/flux/common/geo/builders/ShapeBuilder$Orientation	Orientation9com/groupbyinc/flux/common/geo/builders/ShapeBuilder$EdgeEdge5com/groupbyinc/flux/common/xcontent/ToXContent$Params.com/groupbyinc/flux/common/xcontent/ToXContentParamsFcom/groupbyinc/flux/common/geo/builders/ShapeBuilder$IntersectionOrderIntersectionOrderTYPECLcom/groupbyinc/flux/common/geo/builders/ShapeBuilder$GeoShapeType;EMPTYA[[Lcom/groupbyinc/flux/common/vividsolutions/jts/geom/Coordinate;orientationBLcom/groupbyinc/flux/common/geo/builders/ShapeBuilder$Orientation;shell;Lcom/groupbyinc/flux/common/geo/builders/LineStringBuilder;holesLjava/util/List;MLjava/util/List;$assertionsDisabledZ?(Lcom/groupbyinc/flux/common/geo/builders/LineStringBuilder;Lcom/groupbyinc/flux/common/geo/builders/ShapeBuilder$Orientation;Z)V()V$&
'RIGHT)	
*	,java/util/ArrayList.
/' 	19com/groupbyinc/flux/common/geo/builders/LineStringBuilder3close=()Lcom/groupbyinc/flux/common/geo/builders/LineStringBuilder;56
47validateLinearRing>(Lcom/groupbyinc/flux/common/geo/builders/LineStringBuilder;)V9:
;	=this8Lcom/groupbyinc/flux/common/geo/builders/PolygonBuilder;
lineStringcoerce?(Lcom/groupbyinc/flux/common/geo/builders/LineStringBuilder;Lcom/groupbyinc/flux/common/geo/builders/ShapeBuilder$Orientation;)V$%
D?(Lcom/groupbyinc/flux/common/geo/builders/CoordinatesBuilder;Lcom/groupbyinc/flux/common/geo/builders/ShapeBuilder$Orientation;)V?(Lcom/groupbyinc/flux/common/geo/builders/CoordinatesBuilder;)V$G
4Hcoordinates= 4)?toString()Ljava/lang/String;??
??(Ljava/lang/String;)V$?
??get(I)Ljava/lang/Object;??k?=com/groupbyinc/flux/common/vividsolutions/jts/geom/Coordinate?equals??
??5invalid LinearRing found (coordinates are not closed)?pointsQLjava/util/List;validateHoley(Lcom/groupbyinc/flux/common/geo/builders/LineStringBuilder;Lcom/groupbyinc/flux/common/geo/builders/LineStringBuilder;)V(com/groupbyinc/flux/common/util/set/Sets?
newHashSet)(Ljava/lang/Iterable;)Ljava/util/HashSet;??
??java/util/HashSet?	retainAll(Ljava/util/Collection;)Z??
??
?m:org/locationtech/spatial4j/exception/InvalidShapeException?LInvalid polygon, interior cannot share more than one point with the exterior?
??exteriorTLjava/util/HashSet;Ljava/util/HashSet;interiorD()[[[Lcom/groupbyinc/flux/common/vividsolutions/jts/geom/Coordinate;??
?)java/util/concurrent/atomic/AtomicBoolean?(Z)V$?
??createEdges$(ILcom/groupbyinc/flux/common/geo/builders/ShapeBuilder$Orientation;Lcom/groupbyinc/flux/common/geo/builders/LineStringBuilder;Lcom/groupbyinc/flux/common/geo/builders/LineStringBuilder;[Lcom/groupbyinc/flux/common/geo/builders/ShapeBuilder$Edge;ILjava/util/concurrent/atomic/AtomicBoolean;)I??
?<[Lcom/groupbyinc/flux/common/geo/builders/ShapeBuilder$Edge;?@f?
intersections@(D[Lcom/groupbyinc/flux/common/geo/builders/ShapeBuilder$Edge;)I??
?merge~([Lcom/groupbyinc/flux/common/geo/builders/ShapeBuilder$Edge;II[Lcom/groupbyinc/flux/common/geo/builders/ShapeBuilder$Edge;I)I??
??f?compose?([Lcom/groupbyinc/flux/common/geo/builders/ShapeBuilder$Edge;[Lcom/groupbyinc/flux/common/geo/builders/ShapeBuilder$Edge;I)[[[Lcom/groupbyinc/flux/common/vividsolutions/jts/geom/Coordinate;??
?lengthnumEdgesedgesholeComponents
translated+Ljava/util/concurrent/atomic/AtomicBoolean;offsetnumHolesbuild*()Lorg/locationtech/spatial4j/shape/Shape;FACTORYDLcom/groupbyinc/flux/common/vividsolutions/jts/geom/GeometryFactory;??	?wrapdateline?#	?
buildGeometry?(Lcom/groupbyinc/flux/common/vividsolutions/jts/geom/GeometryFactory;Z)Lcom/groupbyinc/flux/common/vividsolutions/jts/geom/Geometry;??
?jtsGeometryq(Lcom/groupbyinc/flux/common/vividsolutions/jts/geom/Geometry;)Lorg/locationtech/spatial4j/shape/jts/JtsGeometry;
coordinatesArray?(Lcom/groupbyinc/flux/common/xcontent/XContentBuilder;Lcom/groupbyinc/flux/common/xcontent/ToXContent$Params;)Lcom/groupbyinc/flux/common/xcontent/XContentBuilder;coordinatesToXcontentm(Lcom/groupbyinc/flux/common/xcontent/XContentBuilder;Z)Lcom/groupbyinc/flux/common/xcontent/XContentBuilder;
4builder5Lcom/groupbyinc/flux/common/xcontent/XContentBuilder;params7Lcom/groupbyinc/flux/common/xcontent/ToXContent$Params;
toXContent3com/groupbyinc/flux/common/xcontent/XContentBuilderstartObject7()Lcom/groupbyinc/flux/common/xcontent/XContentBuilder;
type		shapeName?
field[(Ljava/lang/String;Ljava/lang/String;)Lcom/groupbyinc/flux/common/xcontent/XContentBuilder;
name!?

"java/util/Locale$ROOTLjava/util/Locale;&'	%(java/lang/String*toLowerCase&(Ljava/util/Locale;)Ljava/lang/String;,-
+.J
startArrayI(Ljava/lang/String;)Lcom/groupbyinc/flux/common/xcontent/XContentBuilder;12
3
5endArray7
8	endObject:
;J?
=polygon?(Lcom/groupbyinc/flux/common/vividsolutions/jts/geom/GeometryFactory;[[Lcom/groupbyinc/flux/common/vividsolutions/jts/geom/Coordinate;)Lcom/groupbyinc/flux/common/vividsolutions/jts/geom/Polygon;?@
AB[[[Lcom/groupbyinc/flux/common/vividsolutions/jts/geom/Coordinate;Cmultipolygon?(Lcom/groupbyinc/flux/common/vividsolutions/jts/geom/GeometryFactory;[[[Lcom/groupbyinc/flux/common/vividsolutions/jts/geom/Coordinate;)Lcom/groupbyinc/flux/common/vividsolutions/jts/geom/MultiPolygon;EF
G;com/groupbyinc/flux/common/vividsolutions/jts/geom/GeometryI	toPolygon?(Lcom/groupbyinc/flux/common/vividsolutions/jts/geom/GeometryFactory;)Lcom/groupbyinc/flux/common/vividsolutions/jts/geom/Polygon;KL
MpolygonsfactoryfixDateline>()Lcom/groupbyinc/flux/common/vividsolutions/jts/geom/Polygon;
linearRing?(Lcom/groupbyinc/flux/common/vividsolutions/jts/geom/GeometryFactory;Ljava/util/List;)Lcom/groupbyinc/flux/common/vividsolutions/jts/geom/LinearRing;ST
U=com/groupbyinc/flux/common/vividsolutions/jts/geom/LinearRingWBcom/groupbyinc/flux/common/vividsolutions/jts/geom/GeometryFactoryY@[Lcom/groupbyinc/flux/common/vividsolutions/jts/geom/LinearRing;[
createPolygon?(Lcom/groupbyinc/flux/common/vividsolutions/jts/geom/LinearRing;[Lcom/groupbyinc/flux/common/vividsolutions/jts/geom/LinearRing;)Lcom/groupbyinc/flux/common/vividsolutions/jts/geom/Polygon;]^
Z_?Lcom/groupbyinc/flux/common/vividsolutions/jts/geom/LinearRing;QLjava/util/Iterator;Ljava/util/Iterator;toArray(([Ljava/lang/Object;)[Ljava/lang/Object;dekf@[Lcom/groupbyinc/flux/common/vividsolutions/jts/geom/Coordinate;hcreateLinearRing?([Lcom/groupbyinc/flux/common/vividsolutions/jts/geom/Coordinate;)Lcom/groupbyinc/flux/common/vividsolutions/jts/geom/LinearRing;jk
ZlE()Lcom/groupbyinc/flux/common/geo/builders/ShapeBuilder$GeoShapeType;:com/groupbyinc/flux/common/vividsolutions/jts/geom/Polygono=[Lcom/groupbyinc/flux/common/vividsolutions/jts/geom/Polygon;qcreateMultiPolygon?([Lcom/groupbyinc/flux/common/vividsolutions/jts/geom/Polygon;)Lcom/groupbyinc/flux/common/vividsolutions/jts/geom/MultiPolygon;st
Zu
polygonSet	componentT(Lcom/groupbyinc/flux/common/geo/builders/ShapeBuilder$Edge;ILjava/util/ArrayList;)I
coordinate?Lcom/groupbyinc/flux/common/vividsolutions/jts/geom/Coordinate;z{	
|xD~	??;Lcom/groupbyinc/flux/common/geo/builders/ShapeBuilder$Edge;?	
?debugEnabled?|
?LOGGER!Lorg/apache/logging/log4j/Logger;??	?shift: [{}]?java/lang/Double?valueOf(D)Ljava/lang/Double;??
??org/apache/logging/log4j/Logger?debug'(Ljava/lang/String;Ljava/lang/Object;)V????java/util/HashMap?
?'shift?(Lcom/groupbyinc/flux/common/vividsolutions/jts/geom/Coordinate;D)Lcom/groupbyinc/flux/common/vividsolutions/jts/geom/Coordinate;??
?xb	
?containsKey??
??)Shape contains more than one shared point?&(Ljava/lang/Object;)Ljava/lang/Object;??
??(com/groupbyinc/flux/common/collect/Tuple?v2??
??v1??
??'(Ljava/lang/Object;Ljava/lang/Object;)V$?
??put8(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;??
??
/?visitIDfirstAppearancetempedgeidRLjava/util/ArrayList;Ljava/util/ArrayList;anyshiftOffsetconnectedComponents
splitIndexcurrentprevvisitedEdge?Ljava/util/HashMap;>;Ljava/util/HashMap;?(Lcom/groupbyinc/flux/common/geo/builders/ShapeBuilder$Edge;[Lcom/groupbyinc/flux/common/vividsolutions/jts/geom/Coordinate;)[Lcom/groupbyinc/flux/common/vividsolutions/jts/geom/Coordinate;buildCoordinatesT(Ljava/util/List;)[[[Lcom/groupbyinc/flux/common/vividsolutions/jts/geom/Coordinate;Component [{}]:?java/lang/Integer?(I)Ljava/lang/Integer;??
??	{}?java/util/Arrays?'([Ljava/lang/Object;)Ljava/lang/String;??
??RLjava/util/List<[Lcom/groupbyinc/flux/common/vividsolutions/jts/geom/Coordinate;>;j
componentsdLjava/util/List;>;result?([Lcom/groupbyinc/flux/common/geo/builders/ShapeBuilder$Edge;I)[[Lcom/groupbyinc/flux/common/vividsolutions/jts/geom/Coordinate;	?xy
?J?
??([Lcom/groupbyinc/flux/common/geo/builders/ShapeBuilder$Edge;ILjava/util/List;)[Lcom/groupbyinc/flux/common/geo/builders/ShapeBuilder$Edge;$r
/?
/m
/f	mainEdges?
???
?assign?([Lcom/groupbyinc/flux/common/geo/builders/ShapeBuilder$Edge;[[Lcom/groupbyinc/flux/common/vividsolutions/jts/geom/Coordinate;I[Lcom/groupbyinc/flux/common/geo/builders/ShapeBuilder$Edge;Ljava/util/List;)V??
???
?	Holes: {}?}(Lcom/groupbyinc/flux/common/vividsolutions/jts/geom/Coordinate;Lcom/groupbyinc/flux/common/geo/builders/ShapeBuilder$Edge;)V$?

?	intersect?{	
?INTERSECTION_ORDERHLcom/groupbyinc/flux/common/geo/builders/ShapeBuilder$IntersectionOrder;	binarySearch@([Ljava/lang/Object;IILjava/lang/Object;Ljava/util/Comparator;)I
?	compareTo(Ljava/lang/Object;)I	

?)Invalid shape: Hole is not within polygon
	position ({}) of edge {}: {}K(Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)V??	Component: {}	Hole intersections ({}): {}9(Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;)V??possharedVertexindexMAX_COORDINATE{	
equals3DB(Lcom/groupbyinc/flux/common/vividsolutions/jts/geom/Coordinate;)Z!"
?#java/lang/Math%abs(D)D'(
&)connecty(Lcom/groupbyinc/flux/common/geo/builders/ShapeBuilder$Edge;Lcom/groupbyinc/flux/common/geo/builders/ShapeBuilder$Edge;)V+,
-e1e2"#	1java/lang/AssertionError3
4'?(Lcom/groupbyinc/flux/common/vividsolutions/jts/geom/Coordinate;Lcom/groupbyinc/flux/common/geo/builders/ShapeBuilder$Edge;Lcom/groupbyinc/flux/common/vividsolutions/jts/geom/Coordinate;)V$6

7C(Z)[Lcom/groupbyinc/flux/common/vividsolutions/jts/geom/Coordinate;J9
4:LEFT<	
=ring?(IZZ[Lcom/groupbyinc/flux/common/vividsolutions/jts/geom/Coordinate;I[Lcom/groupbyinc/flux/common/geo/builders/ShapeBuilder$Edge;IILjava/util/concurrent/atomic/AtomicBoolean;)[Lcom/groupbyinc/flux/common/geo/builders/ShapeBuilder$Edge;?@
A	directiontopE([Lcom/groupbyinc/flux/common/vividsolutions/jts/geom/Coordinate;II)IDE
FrangeF([Lcom/groupbyinc/flux/common/vividsolutions/jts/geom/Coordinate;II)[DHI
J[DL@v??|
?P	translateC([Lcom/groupbyinc/flux/common/vividsolutions/jts/geom/Coordinate;)VRS
TsetV?
?Wconcat?(IZ[Lcom/groupbyinc/flux/common/vividsolutions/jts/geom/Coordinate;I[Lcom/groupbyinc/flux/common/geo/builders/ShapeBuilder$Edge;II)[Lcom/groupbyinc/flux/common/geo/builders/ShapeBuilder$Edge;YZ
[
handednesstoffsetrngincorrectOrientationya	?bminXmaxXminYmaxY9Provided shape has duplicate consecutive coordinates at: h-(Ljava/lang/Object;)Ljava/lang/StringBuilder;?j
?ksetNext>(Lcom/groupbyinc/flux/common/geo/builders/ShapeBuilder$Edge;)Vmn

opointOffset
edgeOffsetchashCodejava/lang/Objectujava/util/Objectswhash([Ljava/lang/Object;)Iyz
x{getClass()Ljava/lang/Class;}~
v'(Ljava/lang/Object;Ljava/lang/Object;)Z??
x?objLjava/lang/Object;otherjava/lang/Class?desiredAssertionStatus?|
??POLYGON?	?	SignatureCodeLocalVariableTableLineNumberTable
StackMapTable
ExceptionsO()Ljava/util/List;LocalVariableTypeTable?(Lcom/groupbyinc/flux/common/vividsolutions/jts/geom/GeometryFactory;Ljava/util/List;)Lcom/groupbyinc/flux/common/vividsolutions/jts/geom/LinearRing;?(Lcom/groupbyinc/flux/common/geo/builders/ShapeBuilder$Edge;ILjava/util/ArrayList;)I?(Ljava/util/List;>;)[[[Lcom/groupbyinc/flux/common/vividsolutions/jts/geom/Coordinate;?([Lcom/groupbyinc/flux/common/geo/builders/ShapeBuilder$Edge;ILjava/util/List;>;)[Lcom/groupbyinc/flux/common/geo/builders/ShapeBuilder$Edge;!([Lcom/groupbyinc/flux/common/geo/builders/ShapeBuilder$Edge;[[Lcom/groupbyinc/flux/common/vividsolutions/jts/geom/Coordinate;I[Lcom/groupbyinc/flux/common/geo/builders/ShapeBuilder$Edge;Ljava/util/List;>;)V
SourceFileInnerClasses! ?!"#+$%??.*?(*?+?-*?/Y?0?2*,?-?+?8W+?<*+?>??*.?@.A..B#?&	B:@CDE$G(H-I??$4
$C?J*+,?E?? ?@A?
LM$F?Q*?4Y+?I,?E?? ?@JK?
PQ$G?A	*+?+?M??	?@	JK?
TU$N??J*?(*?+?-*?/Y?0?2*?4Y+?R?>*+?V?-+?\=>?*?4Y+?R?`W?????*1abJ?@Jcd/b?*
Z:@["\*]/^6_C^Ia??1X??Pef??C*?>+?h*?-+?i+*?2?n?t*?2?xM,?~?,???4N-+?h???? :]C?@C???efgh:i?jBk??'z??P??/*?-???@?n]^?;*+?????@]?w]??q?+?8W+?<*?2+??W*?? ?@]B#???	?
???	??/*?2???@????6?/*?>???@??5??8
*?>?8W*??
?@?
??
9:??]*??L+?n?(??Y??Y?????+?n??????????+????++?nd?????
??Y??????]AX? ?X?????? ?4?R?\??	?4k'????++????N,????:-??W-???
??YǷȿ??4+?@++]#?????#????????? ?*???*??J????*?>???nd<=*?2?n?8*?2???4???nd`<**?>*?2???4?τ????
M*?2?n?
N??Y??:*?-*?>,??66*?2?n?<`*?-*?>*?2???4,??6-,2S`6????-?6,?,??-??6,?,??-??6,-???f
Bab??b?Gab??@??bX???e???o????x?b?*?b?J???8?M?S?X?e?o????????????????????#??A?1????F???:**??*????????@????5*?>+?	W*?2?xN-?~?-???4:+?	W???+??*(]5?@5
5
??
?(?0?3???z??P??C+?W+???W+ *?-?#?)?/?W+0?4W*+,?6W+?9W+?N-??
+-2?B?+-?H?*+?N??*	OC%?@%P?%Q#???	??????DDJ?KR?2*???N???@?KL??S+*?>???VM*?2?n?XN*?2?x:6?~?-+???4???VS????+,-?`??>'%abS?@SP?Ga:[$/uc?$/ub?	
$1
FL??'ZX\z?$ST?]*++?n???g?i?m??P?J ?J????n?.????@??@??@*+2?mM+??,+?d?XN6-??-*+`2?mS????N*,-?`??>ab![@P?@?8a9[?" ! ".!7%9'??X\???\EF??$+??pM>,??,*+2?BS????*,?v??*ab$P?$OCwq?56769??r?
xy?v*N-?}??ۗ?-?}??嗚-??YN*??ݧ-?}??ۗ?	ۧ-?}??嘜	?9??????????666*:	*:
??Y??:		?}???}	??,??	?}?????	??*???Y??ȿt6	?}???????
:

??:
	????	??	??
??
?}???????
:
?	?}
?}????Ԅ?	?}??Y
	????W,	??W	:
??	??Y:	*??"?d?????f?b?Q??
?J??v??v?bv??t??V ?o?br?bu?bx???	{???
?????v????????$GHI(J+NVO\PlVrYuZx[{]?_?`?b?d?e?f?l?m?p?q?r?s?wxyz*{-|0}FM?Q?T?e??D?
@??
/


?>?7

?4

A??
J??u=+??+*??YK?}S????+?? abx?Jh??????	??
???H?*?n??L=+??)*???kN+--?n?i?g??S???׸??C=+??;????չ?>+2?????+22?ܹ????????+??>x ,abW!?b@>ab?? 
v?C?x?????6
?
???2?8?>?F?U?_?r?x?~???D?+??? ???
???9????iM>?&*2`t??6,*2`????S????,??4!?b(ab9?9?b
,??"???
??!?1?7??
???'
???1p?/Y*???N6*??P*2???@*2,?n``t-??6?/Y?0:*2`?????W,??W????--??
???ڰ?H3(?b<x 
Tabp??p?bp? 
f??? <x?p??
f???&	?
???3?<?R?[?a???
/?M???
?????/Y?0N++??*-??-??-????*????b? ???????
??????????*?ܹ?6???
Y*2?}*2????:?}??}??-??66	?2-??Y6?+-2??}???Y6	???Y?ȿ	??`t6
-
2??tdd6???C??
??-
2????չ????}????-?ܹ???k+2??W??????
d b5???M??b?zbP?#	?jb
?\xb?ab???b??? ????N????5???M?P?s?????????????????	???v
??d
???k
@?
???k
?

???k
C?V????k??
???[?6??*``2:*``2:?????-??d-2S-S?? ?R?? ?G?????}?}?$?*???}???*ۗ??}???*ۗ?
?.???l??R?/?w0??ab?????b??b????b?6
?	???%?(5:`????????6

?R??
+,??#?2?*?+??4Y?5??2?*+??4Y?5?*?*???}?v?
Y*?*????M+?+???}?*?
Y+?+????N*?
Y*?-*??8???*?
Y*?+??*??8??+?
Y+?,+??8???{*??+?s*?}+??h?
Y+?*??+??8M+?+???}?*?
Y+?+????N*?
Y*?-*??8???*?
Y*?+??*??8??+,????>e0?G`/??/??Q0?#c?#???N)7"G$U&e'y(|*?,?-?/?1?3?468:"<?	?R
??[
?
???D		R??+?+???6-?-?;?,?;:+?>???d?BW?d??\	RxbRRR]R??R?bR??:C#+'?h?BD+ELF?f@J?
44???Di?	
44??i?	
44??i
?@???-?G6		`dp`6
	`p`6-
`2??-`2?????6-?K:

1
1g9?
??6?ۗ?N???Q?/?+-?U?	?X?
????6?-?\????xb?C#?]#??h??b????^b??b???
?Db	??b
%?bD?#NyHL
Yn_j]`#?:Z
[\%]DeNfYkjl?m?o?p?s?t?w??A@?$M@?

@
DE??[>6?Q*`2?c*`2?c??	>?0*`2?c*`2?c??*`2??*`2????>??????4Tab[?h[?b[?bYDb?&	{|} ~&;?P?S|Y??? ,?
HI?s?*2??J*2??9*2?c9*2?c9	6?o*`2??)??
*`2??J*`2????*`2??9*`2?c??*`2?c9*`2?c	??*`2?c9	?????Y)RYRYRY	R??R"rab??h??b??b?d?e?f?g	?>?????(?6?@?O?Z?i?t?????????"i?
YZ?6?2??`??4Y?5??2?,?`??4Y?5??
Y,2??S6???1`?
Y,`2`d2??S`2???r`d2?},`2???8`d2`?
Y,`2??[S??`d2???$??Y??Y??i??,`2?l???ȿ???U?!2`d2?p2???#`d22?p`d2????RC?ab6xb6C#6?h6qb6??6rb6?b?J??0?@?J?N?m?|???????????????%?3??	?8?M ?!
RS??/*L+?=>?%+2:????Y??Nc?????ܱ?s{/?h????(?.???i ?tZ?G?vY*?>SY*?2SY*?-S?|???@??????M*+??+?*??+????+?M*?>,?>???#*?2,?2???*?-,?-?????? M?@M??0?@?&	??????3?A?L??
?2@?&?I?????2????i???468?@??*@
@
	




© 2015 - 2024 Weber Informatics LLC | Privacy Policy