Combine multiple Ellipses

前端 未结 1 649
悲&欢浪女
悲&欢浪女 2021-01-07 10:25

I need a way to combine multiple EllipseGeometry to make a union between them, but CombineGeometry class only can combine 2 Geometries. The ideal way is to have a class simi

相关标签:
1条回答
  • 2021-01-07 11:03

    EllipseGeometry is a Geometry too so you can combine like this:

      <CombinedGeometry GeometryCombineMode="Union">
           <CombinedGeometry.Geometry1>
                <EllipseGeometry RadiusX="70" RadiusY="30" Center="100,150"  />
           </CombinedGeometry.Geometry1>
           <CombinedGeometry.Geometry2>
                <EllipseGeometry RadiusX="70" RadiusY="30" Center="200,150" />
           </CombinedGeometry.Geometry2>
      </CombinedGeometry>
    

    EDIT To combine three or more EllipseGeometries you could use this mechanism

    <CombinedGeometry   GeometryCombineMode="Union">
        <CombinedGeometry.Geometry1>
            <CombinedGeometry GeometryCombineMode="Union">
                  <CombinedGeometry.Geometry1>
                        <EllipseGeometry RadiusX="70" RadiusY="30" Center="100,150"  />
                  </CombinedGeometry.Geometry1>
                  <CombinedGeometry.Geometry2>
                        <EllipseGeometry RadiusX="70" RadiusY="30" Center="200,150" />
                  </CombinedGeometry.Geometry2>
            </CombinedGeometry>
        </CombinedGeometry.Geometry1>
        <CombinedGeometry.Geometry2>
               <EllipseGeometry RadiusX="70" RadiusY="30" Center="100,150"  />
        </CombinedGeometry.Geometry2>
    </CombinedGeometry>
    

    You can create a new class that is derived from Geometry and have a Geometry[] in it and implement methods using above mechanism.

    0 讨论(0)
提交回复
热议问题