Geometry.Combine Метод

Определение

Объединяет два объекта Geometry.

Перегрузки

Combine(Geometry, Geometry, GeometryCombineMode, Transform)

Комбинирует две геометрии с использованием заданного GeometryCombineMode и применяет к результирующей геометрии заданное преобразование.

Combine(Geometry, Geometry, GeometryCombineMode, Transform, Double, ToleranceType)

Комбинирует две геометрии с использованием заданного GeometryCombineMode и коэффициента допуска и применяет к результирующей геометрии заданное преобразование.

Combine(Geometry, Geometry, GeometryCombineMode, Transform)

Комбинирует две геометрии с использованием заданного GeometryCombineMode и применяет к результирующей геометрии заданное преобразование.

public:
 static System::Windows::Media::PathGeometry ^ Combine(System::Windows::Media::Geometry ^ geometry1, System::Windows::Media::Geometry ^ geometry2, System::Windows::Media::GeometryCombineMode mode, System::Windows::Media::Transform ^ transform);
public static System.Windows.Media.PathGeometry Combine (System.Windows.Media.Geometry geometry1, System.Windows.Media.Geometry geometry2, System.Windows.Media.GeometryCombineMode mode, System.Windows.Media.Transform transform);
static member Combine : System.Windows.Media.Geometry * System.Windows.Media.Geometry * System.Windows.Media.GeometryCombineMode * System.Windows.Media.Transform -> System.Windows.Media.PathGeometry
Public Shared Function Combine (geometry1 As Geometry, geometry2 As Geometry, mode As GeometryCombineMode, transform As Transform) As PathGeometry

Параметры

geometry1
Geometry

Первая геометрия для комбинирования.

geometry2
Geometry

Вторая геометрия для комбинирования.

mode
GeometryCombineMode

Одно из значений из перечисления, задающее способ комбинирования геометрий.

transform
Transform

Преобразование, применяемое к комбинированной геометрии, или null.

Возвращаемое значение

Комбинированная геометрия.

Комментарии

Этот метод использует коэффициент допуска по умолчанию (описанный свойством StandardFlatteningTolerance ) при объединении геометрических объектов. Чтобы указать собственный коэффициент допуска, используйте Combine метод .

Некоторые Geometry методы (например, Combine) создают или используют многоугольное приближение геометрии. Коэффициент допуска задает максимальное расстояние между точками в этом аппроксимации многоугольников. Меньшие значения допуска дают лучшие аппроксимации, но требуют больше обработки, чем аппроксимация с большим коэффициентом допуска.

При использовании Combine объединения следует тщательно продумать, так как это может быть очень ресурсоемким ЦП. В большинстве случаев GeometryGroup или AddGeometry будет работать лучше.

Используйте Combine только в следующих случаях:

  • Геометрическая операция не является объединением.

  • Любая из геометрических объектов имеет FillRule значение , EvenOdd а геометрии являются самопересекающимися (т. е FillRule . фактически имеет значение).

  • Время не является проблемой, но пространство имеет значение (например, если геометрия создается один раз, а затем кэшируется). Как правило, создает меньшие выходные данные, Combine чем AddGeometry.

  • Результирующая геометрия будет обводиться или использоваться в анимации пути и AddGeometry не предоставляет нужный контур.

Применяется к

Combine(Geometry, Geometry, GeometryCombineMode, Transform, Double, ToleranceType)

Комбинирует две геометрии с использованием заданного GeometryCombineMode и коэффициента допуска и применяет к результирующей геометрии заданное преобразование.

public:
 static System::Windows::Media::PathGeometry ^ Combine(System::Windows::Media::Geometry ^ geometry1, System::Windows::Media::Geometry ^ geometry2, System::Windows::Media::GeometryCombineMode mode, System::Windows::Media::Transform ^ transform, double tolerance, System::Windows::Media::ToleranceType type);
public static System.Windows.Media.PathGeometry Combine (System.Windows.Media.Geometry geometry1, System.Windows.Media.Geometry geometry2, System.Windows.Media.GeometryCombineMode mode, System.Windows.Media.Transform transform, double tolerance, System.Windows.Media.ToleranceType type);
static member Combine : System.Windows.Media.Geometry * System.Windows.Media.Geometry * System.Windows.Media.GeometryCombineMode * System.Windows.Media.Transform * double * System.Windows.Media.ToleranceType -> System.Windows.Media.PathGeometry
Public Shared Function Combine (geometry1 As Geometry, geometry2 As Geometry, mode As GeometryCombineMode, transform As Transform, tolerance As Double, type As ToleranceType) As PathGeometry

Параметры

geometry1
Geometry

Первая геометрия для комбинирования.

geometry2
Geometry

Вторая геометрия для комбинирования.

mode
GeometryCombineMode

Одно из значений из перечисления, задающее способ комбинирования геометрий.

transform
Transform

Преобразование, применяемое к комбинированной геометрии, или null.

tolerance
Double

Максимальный диапазон для расстояния между точками кусочно-линейной аппроксимации данных геометрий. Чем меньше значения, тем точнее результаты и медленнее производится выполнение. Если значение tolerance меньше .000001, вместо него используется значение .000001.

type
ToleranceType

Одно из значений ToleranceType, с помощью которого можно определить, является ли коэффициент допуска абсолютным значением или же он измеряется относительно области геометрии.

Возвращаемое значение

Комбинированная геометрия.

Комментарии

Некоторые Geometry методы (например, Combine) создают или используют многоугольное приближение геометрии. Коэффициент допуска задает максимальное расстояние между точками в этом аппроксимации многоугольников. Меньшие значения допуска дают лучшие аппроксимации, но требуют больше обработки, чем аппроксимация с большим коэффициентом допуска.

При использовании Combine объединения следует тщательно продумать, так как это может быть очень ресурсоемким ЦП. В большинстве случаев GeometryGroup или AddGeometry будет работать лучше.

Используйте Combine только в следующих случаях:

  • Геометрическая операция не является объединением.

  • Любая из геометрических объектов имеет FillRule значение , EvenOdd а геометрии являются самопересекающимися (т. е FillRule . фактически имеет значение).

  • Время не является проблемой, но пространство имеет значение (например, если геометрия создается один раз, а затем кэшируется). Как правило, создает меньшие выходные данные, Combine чем AddGeometry.

  • Результирующая геометрия будет обводиться или использоваться в анимации пути и AddGeometry не предоставляет нужный контур.

Применяется к