【问题标题】:Combine multiple Ellipses组合多个椭圆
【发布时间】:2009-10-20 11:08:18
【问题描述】:

我需要一种组合多个 EllipseGeometry 以在它们之间建立联合的方法,但 CombineGeometry 类只能组合 2 个几何。 理想的方法是拥有一个类似于 CombineGeometry 的类,它接受的不仅仅是 Geometry1 和 Geometry2 形状。
任何人都知道做出这种行为的对象吗?

【问题讨论】:

    标签: wpf geometry shapes


    【解决方案1】:

    EllipseGeometry 也是一个 Geometry,因此您可以像这样组合:

      <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>
    

    编辑 要组合三个或更多 EllipseGeometries,您可以使用此机制

    <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>
    

    您可以创建一个派生自 Geometry 的新类,并在其中包含 Geometry[] 并使用上述机制实现方法。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-03-19
      • 1970-01-01
      • 2017-07-20
      • 2020-09-17
      • 1970-01-01
      相关资源
      最近更新 更多