ebook img

Boolean Operations using Generalized Winding Numbers PDF

0.75 MB·
Save to my drive
Quick download
Download
Most books are stored in the elastic cloud where traffic is expensive. For this reason, we have a limit on daily download.

Preview Boolean Operations using Generalized Winding Numbers

Boolean Operations using Generalized Winding Numbers AlecJacobson ColumbiaUniversity Abstract Thegeneralizedwindingnumberfunctionmeasuresinsidenessfor arbitraryorientedtrianglemeshes. Exploitingthis,Isimilarlygen- eralize binary boolean operations to act on such meshes. The re- sultingoperationsforunion,intersection,difference,etc.avoidvol- umetricdiscretizationorpre-processing. Figure1: Holey,non-manifoldtrianglemeshesAandB eachin- duceageneralizedwindingnumberfunctionontheother’sfaces, usefulforbooleanoperationssuchasA\B. 1 Booleans & Classic Winding Numbers 6 IfA ⊂ R3 andB ⊂ R3 areopensubregionsofspace,thentheir 1 unioncontainsallpointsinAorB,theirintersectionallpointsin windingnumberwB(ta)isundefinedandthisalgorithmwillfail. 0 AandB,andthedifferenceofBfromAallpointsinAbutnotB. Coplanaroverlapscanbehandledbyidentifyingperfectlycoplanar 2 Writteninsetnotation,wehaverespectively: trianglesduringtriangle-triangleintersectionresolution. Foreach pairofresolved“duplicate”trianglesta andtb,eitherkeeponeor n A∪B={p|p∈Aorp∈B}, (1) discardbothdependingontheoperation. Forexample,ifconduct- a ingthedifferenceofBfromA,thendiscardbothift andt have J A∩B={p|p∈Aandp∈B}, (2) thesameorientationandkeept otherwise. a b a 9 A\B={p|p∈Aandp∈/ B}. (3) Theclassicnotionofthewindingnumberappliestoanyclosedori- 2 entedsurface,notjustthoseboundingasolid. Thewindingnum- ] Meanwhile,thewindingnumberfunctionwA: R3\∂A → Zde- berforsuchsurfaceswillbeapossiblynegativeintegerindicating R termines for every point whether it is inside the set A purely by howmanytimesapointisinsidethesurface. Wecanimmediately examining the set’s oriented boundary ∂A. The winding number generalize our algorithm to handle any immersed closed oriented G integratesthesignedsurfaceareaof∂Aprojectedontoaunitball trianglemeshesbyreplacingw (p)=1withw (p)>0. Alter- X X . aroundagivenpointp,orinpolarcoordinatesandw.l.o.g.p=0: natively,ifweconsider“inside-out”regionsasinsidethenreplace s c (cid:40) wX(p)=1with|wX(p)|>0. [ (cid:90)(cid:90) 1 ifp∈A, wA(p)= sinϕdϑdϕ,= 0 otherwise(p∈/ A). (4) 2 Generalized Winding Numbers 1 ∂A v 3 IfAisan(embedded)solid,itswindingnumberwillbeexactlyone Jacobson et al. [2013] define the generalized winding number 5 forpointsinsideAandexactlyzeroforpointsoutside. wX: R3 \X → R for arbitrary oriented triangle meshes as the 9 sumofthesignedsolidanglesΩtsubtendedbyeachtrianglet: Wecanreplacethesetinclusionsinthedefinitionsoftheboolean 7 operations in Equations (1-3) with winding number expressions: (cid:88) 1 0 w (p)= Ω (p). (7) . replacep∈X withwX(p)=1andp∈/ X withwX(p)=0. X 4π t 1 t∈X 0 Algorithm Thisimmediatelyrevealsanalgorithmforconducting Thissmoothfunctionmeasuresforeachpointinspacehowmuchit 6 boolean operations on solid1 triangle meshes A and B with ver- isinsideX.Forexample,apuncturedspherewillinduceawinding 1 ticesatgeneralpositionsinspaceAandB. Refineeachmeshat numbervalueclosetooneinsideandfarfromthehole,andavalue : v mutual triangle-triangle intersections with the other so that inter- closetozerooutsideandfarfromthehole.Nearthehole,thevalue i sections lie only at vertices and along edges (see, e.g., [Jacobson willsmoothlytransitionfromnearonetonearzeropassingthrough X etal.2013]).Foreachtrianglet ofA,determineitswindingnum- onehalfclosebythehole. a ar btreiarnwgiltehtre’sspbeacrtytcoenBte,r.e.Lg.i,kebwyiesveadluetaetrinmginweBfo(rtae)acwhhteriraentgaleistthoef Wemayimmediatelygeneralizethebooleanalgorithminthepre- a b vioussectiontoarbitraryorientedtrianglemeshes. Simplyreplace B its winding number with respect to A. Finally—depending on w (p) = 1withw (p) > 1/2; alternatively, with|w (p)| > thebooleanoperation—keep,keep-and-flip,ordiscardeachtrian- X X X 1/2iftreatingnegativeregionsasinside. glefromAandB.Forexample,forA\B(seeFigure1), ThisproposedmethodavoidsvolumetricdiscretizationofJacobson (cid:40) keep ifw (t )=0, et al. [2013] but enjoys their hierarchical winding number evalu- ∀ta ∈A discard otheBrwisae(w (t )=1), (5) ation. Computing the generalized winding number as a floating B a pointsummationcouldpotentiallyleadtoincorrectassignmentdue (cid:40) keep-and-flip ifw (t )=1, toround-off. Ifevaluationpoints(i.e.,barycentersfromtheother ∀tb ∈B discard otheArwisbe(w (t )=0). (6) mesh)arenotveryclosetoopenboundariesthenthisisanon-issue. A b Reference For non-general position meshes, if the barycenter t from a tri- a angle ofAlies exactlyon B (e.g., dueto coplanar overlaps), the JACOBSON,A.,KAVAN,L.,ANDSORKINE-HORNUNG,O.2013. Robust inside-outside segmentation using generalized winding 1Asolidtrianglemeshistheorientedboundaryofsolidregion: itsin- numbers. ACMTrans.Graph.. ducedwindingnumberisexactlyzerooroneforanypointnotonthemesh.

See more

The list of books you might like

Most books are stored in the elastic cloud where traffic is expensive. For this reason, we have a limit on daily download.