Klasa CD2DGeometry
Otoka id2D1Geometry.
Składnia
class CD2DGeometry : public CD2DResource;
Elementy członkowskie
Konstruktory publiczne
Nazwa/nazwisko | opis |
---|---|
CD2DGeometry::CD2DGeometry | Tworzy obiekt CD2DGeometry. |
CD2DGeometry::~CD2DGeometry | Destruktora. Wywoływana, gdy obiekt geometryczny D2D jest niszczony. |
Metody publiczne
Nazwa/nazwisko | opis |
---|---|
CD2DGeometry::Attach | Dołącza istniejący interfejs zasobu do obiektu |
CD2DGeometry::CombineWithGeometry | Łączy tę geometrię z określoną geometrią i przechowuje wynik w id2D1SimplifiedGeometrySink. |
CD2DGeometry::CompareWithGeometry | Opisuje przecięcie między tą geometrią a określoną geometrią. Porównanie jest wykonywane przy użyciu określonej tolerancji spłaszczania. |
CD2DGeometry::ComputeArea | Oblicza obszar geometrii po przekształceniu przez określoną macierz i spłaszczone przy użyciu określonej tolerancji. |
CD2DGeometry::ComputeLength | Oblicza długość geometrii, tak jakby każdy segment został wyrejestrowany do linii. |
CD2DGeometry::ComputePointAtLength | Oblicza wektor punktowy i styczny na określonej odległości wzdłuż geometrii po przekształceniu przez określoną macierz i spłaszczony przy użyciu określonej tolerancji. |
CD2DGeometry::D estroy | Niszczy obiekt CD2DGeometry. (Przesłonięcia) CD2DResource::D estroy. |
CD2DGeometry::D etach | Odłącza interfejs zasobu od obiektu |
CD2DGeometry::FillContainsPoint | Wskazuje, czy obszar wypełniony geometrią zawiera określony punkt, biorąc pod uwagę określoną tolerancję spłaszczania. |
CD2DGeometry::Get | Zwraca interfejs ID2D1Geometry |
CD2DGeometry::GetBounds | |
CD2DGeometry::GetWidenedBounds | Pobiera granice geometrii po jej poszerzone przez określoną szerokość i styl pociągnięcia oraz przekształcone przez określoną macierz. |
CD2DGeometry::IsValid | Sprawdza poprawność zasobów (przesłania cd2DResource::IsValid). |
CD2DGeometry::Konspekt | Oblicza konspekt geometrii i zapisuje wynik w pliku ID2D1SimplifiedGeometrySink. |
CD2DGeometry::Upraszczanie | Tworzy uproszczoną wersję geometrii, która zawiera tylko linie i (opcjonalnie) sześcienne krzywe Beziera i zapisuje wynik do id2D1SimplifiedGeometrySink. |
CD2DGeometry::StrokeContainsPoint | Określa, czy pociągnięcie geometrii zawiera określony punkt, biorąc pod uwagę określoną grubość, styl i przekształcenie pociągnięcia. |
CD2DGeometry::Tessellate | Tworzy zestaw trójkątów z ranami zegara, które pokrywają geometrię po jej przekształceniu przy użyciu określonej macierzy i spłaszczone przy użyciu określonej tolerancji. |
CD2DGeometry::Widen | Rozszerza geometrię określonego pociągnięcia i zapisuje wynik w id2D1SimplifiedGeometrySink po przekształceniu przez określoną macierz i spłaszczone przy użyciu określonej tolerancji. |
Operatory publiczne
Nazwa/nazwisko | opis |
---|---|
CD2DGeometry::operator ID2D1Geometry* | Zwraca interfejs ID2D1Geometry |
Chronione składowe danych
Nazwa/nazwisko | opis |
---|---|
CD2DGeometry::m_pGeometry | Wskaźnik do id2D1Geometry. |
Hierarchia dziedziczenia
CD2DGeometry
Wymagania
Nagłówek: afxrendertarget.h
CD2DGeometry::~CD2DGeometry
Destruktora. Wywoływana, gdy obiekt geometryczny D2D jest niszczony.
virtual ~CD2DGeometry();
CD2DGeometry::Attach
Dołącza istniejący interfejs zasobu do obiektu
void Attach(ID2D1Geometry* pResource);
Parametry
pResource
Istniejący interfejs zasobu. Nie można mieć wartości NULL
CD2DGeometry::CD2DGeometry
Tworzy obiekt CD2DGeometry.
CD2DGeometry(
CRenderTarget* pParentTarget,
BOOL bAutoDestroy = TRUE);
Parametry
pParentTarget
Wskaźnik do obiektu docelowego renderowania.
bAutoDestroy
Wskazuje, że obiekt zostanie zniszczony przez właściciela (pParentTarget).
CD2DGeometry::CombineWithGeometry
Łączy tę geometrię z określoną geometrią i przechowuje wynik w id2D1SimplifiedGeometrySink.
BOOL CombineWithGeometry(
CD2DGeometry& inputGeometry,
D2D1_COMBINE_MODE combineMode,
const D2D1_MATRIX_3X2_F& inputGeometryTransform,
ID2D1SimplifiedGeometrySink* geometrySink,
FLOAT flatteningTolerance = D2D1_DEFAULT_FLATTENING_TOLERANCE) const;
Parametry
inputGeometry
Geometria do połączenia z tym wystąpieniem.
combineMode
Typ operacji łączenia do wykonania.
inputGeometryTransform
Przekształcenie, które ma być stosowane do inputGeometry przed połączeniem.
geometrySink
Wynik operacji łączenia.
spłaszczanieDolerancja
Maksymalna granica odległości między punktami w przybliżeniu wielokątnych geometrii. Mniejsze wartości generują dokładniejsze wyniki, ale powodują wolniejsze wykonywanie.
Wartość zwracana
Jeśli metoda powiedzie się, zwraca wartość TRUE. W przeciwnym razie zwraca wartość FALSE.
CD2DGeometry::CompareWithGeometry
Opisuje przecięcie między tą geometrią a określoną geometrią. Porównanie jest wykonywane przy użyciu określonej tolerancji spłaszczania.
D2D1_GEOMETRY_RELATION CompareWithGeometry(
CD2DGeometry& inputGeometry,
const D2D1_MATRIX_3X2_F& inputGeometryTransform,
FLOAT flatteningTolerance = D2D1_DEFAULT_FLATTENING_TOLERANCE) const;
Parametry
inputGeometry
Geometria do przetestowania.
inputGeometryTransform
Przekształcenie do zastosowania do inputGeometry.
spłaszczanieDolerancja
Maksymalna granica odległości między punktami w przybliżeniu wielokątnych geometrii. Mniejsze wartości generują dokładniejsze wyniki, ale powodują wolniejsze wykonywanie.
Wartość zwracana
Jeśli metoda powiedzie się, zwraca wartość TRUE. W przeciwnym razie zwraca wartość FALSE.
CD2DGeometry::ComputeArea
Oblicza obszar geometrii po przekształceniu przez określoną macierz i spłaszczone przy użyciu określonej tolerancji.
BOOL ComputeArea(
const D2D1_MATRIX_3X2_F& worldTransform,
FLOAT& area,
FLOAT flatteningTolerance = D2D1_DEFAULT_FLATTENING_TOLERANCE) const;
Parametry
worldTransform
Transformacja, która ma zastosowanie do tej geometrii przed obliczeniu jej obszaru.
obszar
Gdy ta metoda zwraca, zawiera wskaźnik do obszaru przekształconej, spłaszczonej wersji tej geometrii. Musisz przydzielić magazyn dla tego parametru.
spłaszczanieDolerancja
Maksymalna granica odległości między punktami w przybliżeniu wielokątne geometrii. Mniejsze wartości generują dokładniejsze wyniki, ale powodują wolniejsze wykonywanie.
Wartość zwracana
Jeśli metoda powiedzie się, zwraca wartość TRUE. W przeciwnym razie zwraca wartość FALSE.
CD2DGeometry::ComputeLength
Oblicza długość geometrii, tak jakby każdy segment został wyrejestrowany do linii.
BOOL ComputeLength(
const D2D1_MATRIX_3X2_F& worldTransform,
FLOAT& length,
FLOAT flatteningTolerance = D2D1_DEFAULT_FLATTENING_TOLERANCE) const;
Parametry
worldTransform
Przekształcenie, które ma być stosowane do geometrii przed obliczeniem jego długości.
length
Gdy ta metoda zwraca, zawiera wskaźnik do długości geometrii. W przypadku zamkniętych geometrii długość obejmuje niejawny segment zamykający. Musisz przydzielić magazyn dla tego parametru.
spłaszczanieDolerancja
Maksymalna granica odległości między punktami w przybliżeniu wielokątne geometrii. Mniejsze wartości generują dokładniejsze wyniki, ale powodują wolniejsze wykonywanie.
Wartość zwracana
Jeśli metoda powiedzie się, zwraca wartość TRUE. W przeciwnym razie zwraca wartość FALSE.
CD2DGeometry::ComputePointAtLength
Oblicza wektor punktowy i styczny na określonej odległości wzdłuż geometrii po przekształceniu przez określoną macierz i spłaszczony przy użyciu określonej tolerancji.
BOOL ComputePointAtLength(
FLOAT length,
const D2D1_MATRIX_3X2_F& worldTransform,
CD2DPointF& point,
CD2DPointF& unitTangentVector,
FLOAT flatteningTolerance = D2D1_DEFAULT_FLATTENING_TOLERANCE) const;
Parametry
length
Odległość wzdłuż geometrii punktu i tangensu do znalezienia. Jeśli ta odległość jest mniejsza niż 0, ta metoda oblicza pierwszy punkt geometrii. Jeśli ta odległość jest większa niż długość geometrii, ta metoda oblicza ostatni punkt w geometrii.
worldTransform
Przekształcenie, które ma być stosowane do geometrii przed obliczeniem określonego punktu i tangensu.
punkt
Lokalizacja na określonej odległości wzdłuż geometrii. Jeśli geometria jest pusta, ten punkt zawiera wartość NaN jako wartości x i y.
unitTangentVector
Gdy ta metoda zwraca, zawiera wskaźnik do wektora tangensowego w określonej odległości wzdłuż geometrii. Jeśli geometria jest pusta, ten wektor zawiera wartość NaN jako wartości x i y. Musisz przydzielić magazyn dla tego parametru.
spłaszczanieDolerancja
Maksymalna granica odległości między punktami w przybliżeniu wielokątne geometrii. Mniejsze wartości generują dokładniejsze wyniki, ale powodują wolniejsze wykonywanie.
Wartość zwracana
Jeśli metoda powiedzie się, zwraca wartość TRUE. W przeciwnym razie zwraca wartość FALSE.
CD2DGeometry::D estroy
Niszczy obiekt CD2DGeometry.
virtual void Destroy();
CD2DGeometry::D etach
Odłącza interfejs zasobu od obiektu
ID2D1Geometry* Detach();
Wartość zwracana
Wskaźnik do odłączonego interfejsu zasobu.
CD2DGeometry::FillContainsPoint
Wskazuje, czy obszar wypełniony geometrią zawiera określony punkt, biorąc pod uwagę określoną tolerancję spłaszczania.
BOOL FillContainsPoint(
CD2DPointF point,
const D2D1_MATRIX_3X2_F& worldTransform,
BOOL* contains,
FLOAT flatteningTolerance = D2D1_DEFAULT_FLATTENING_TOLERANCE) const;
Parametry
punkt
Punkt do przetestowania.
worldTransform
Przekształcenie, które ma być stosowane do geometrii przed rozpoczęciem testowania w celu powstrzymania.
Contains
Gdy ta metoda zwraca wartość logiczną, która ma wartość TRUE, jeśli obszar wypełniony przez geometrię zawiera punkt; w przeciwnym razie, FAŁSZ. Musisz przydzielić magazyn dla tego parametru.
spłaszczanieDolerancja
Dokładność liczbowa, za pomocą której jest obliczana dokładna ścieżka geometryczna i przecięcie ścieżki. Punkty, w których brakuje wypełnienia o mniejsze niż tolerancja, są nadal brane pod uwagę wewnątrz. Mniejsze wartości generują dokładniejsze wyniki, ale powodują wolniejsze wykonywanie.
Wartość zwracana
Jeśli metoda powiedzie się, zwraca wartość TRUE. W przeciwnym razie zwraca wartość FALSE.
CD2DGeometry::Get
Zwraca interfejs ID2D1Geometry
ID2D1Geometry* Get();
Wartość zwracana
Wskaźnik do interfejsu ID2D1Geometry lub NULL, jeśli obiekt nie został jeszcze zainicjowany.
CD2DGeometry::GetBounds
BOOL GetBounds(
const D2D1_MATRIX_3X2_F& worldTransform,
CD2DRectF& bounds) const;
Parametry
worldTransform
Granice
Wartość zwracana
CD2DGeometry::GetWidenedBounds
Pobiera granice geometrii po jej poszerzone przez określoną szerokość i styl pociągnięcia oraz przekształcone przez określoną macierz.
BOOL GetWidenedBounds(
FLOAT strokeWidth,
ID2D1StrokeStyle* strokeStyle,
const D2D1_MATRIX_3X2_F& worldTransform,
CD2DRectF& bounds,
FLOAT flatteningTolerance = D2D1_DEFAULT_FLATTENING_TOLERANCE) const;
Parametry
strokeWidth
Ilość, o którą należy poszerzyć geometrię przez naciśnięcie jej konturu.
strokeStyle
Styl pociągnięcia, który rozszerza geometrię.
worldTransform
Przekształcenie stosowane do geometrii po przekształceniu geometrii i po pociągnięciu geometrii.
Granice
Gdy ta metoda zwróci wartość , zawiera granice rozszerzonej geometrii. Musisz przydzielić magazyn dla tego parametru.
spłaszczanieDolerancja
Maksymalna granica odległości między punktami w przybliżeniu wielokątnych geometrii. Mniejsze wartości generują dokładniejsze wyniki, ale powodują wolniejsze wykonywanie.
Wartość zwracana
Jeśli metoda powiedzie się, zwraca wartość TRUE. W przeciwnym razie zwraca wartość FALSE.
CD2DGeometry::IsValid
Sprawdza poprawność zasobów
virtual BOOL IsValid() const;
Wartość zwracana
Wartość TRUE, jeśli zasób jest prawidłowy; w przeciwnym razie FAŁSZ.
CD2DGeometry::m_pGeometry
Wskaźnik do id2D1Geometry.
ID2D1Geometry* m_pGeometry;
CD2DGeometry::operator ID2D1Geometry*
Zwraca interfejs ID2D1Geometry
operator ID2D1Geometry*();
Wartość zwracana
Wskaźnik do interfejsu ID2D1Geometry lub NULL, jeśli obiekt nie został jeszcze zainicjowany.
CD2DGeometry::Konspekt
Oblicza konspekt geometrii i zapisuje wynik w pliku ID2D1SimplifiedGeometrySink.
BOOL Outline(
const D2D1_MATRIX_3X2_F& worldTransform,
ID2D1SimplifiedGeometrySink* geometrySink,
FLOAT flatteningTolerance = D2D1_DEFAULT_FLATTENING_TOLERANCE) const;
Parametry
worldTransform
Przekształcenie, które ma być stosowane do konturu geometrii.
geometrySink
Id2D1SimplifiedGeometrySink, do którego dołączono przekształcony kontur geometryczny.
spłaszczanieDolerancja
Maksymalna granica odległości między punktami w przybliżeniu wielokątne geometrii. Mniejsze wartości generują dokładniejsze wyniki, ale powodują wolniejsze wykonywanie.
Wartość zwracana
Jeśli metoda powiedzie się, zwraca wartość TRUE. W przeciwnym razie zwraca wartość FALSE.
CD2DGeometry::Upraszczanie
Tworzy uproszczoną wersję geometrii, która zawiera tylko linie i (opcjonalnie) sześcienne krzywe Beziera i zapisuje wynik do id2D1SimplifiedGeometrySink.
BOOL Simplify(
D2D1_GEOMETRY_SIMPLIFICATION_OPTION simplificationOption,
const D2D1_MATRIX_3X2_F& worldTransform,
ID2D1SimplifiedGeometrySink* geometrySink,
FLOAT flatteningTolerance = D2D1_DEFAULT_FLATTENING_TOLERANCE) const;
Parametry
uproszczenieOpcje
Wartość określająca, czy uproszczona geometria powinna zawierać krzywe.
worldTransform
Przekształcenie, które ma zastosowanie do uproszczonej geometrii.
geometrySink
Id2D1SimplifiedGeometrySink, do którego dołączono uproszczoną geometrię.
spłaszczanieDolerancja
Maksymalna granica odległości między punktami w przybliżeniu wielokątne geometrii. Mniejsze wartości generują dokładniejsze wyniki, ale powodują wolniejsze wykonywanie.
Wartość zwracana
Jeśli metoda powiedzie się, zwraca wartość TRUE. W przeciwnym razie zwraca wartość FALSE.
CD2DGeometry::StrokeContainsPoint
Określa, czy pociągnięcie geometrii zawiera określony punkt, biorąc pod uwagę określoną grubość, styl i przekształcenie pociągnięcia.
BOOL StrokeContainsPoint(
CD2DPointF point,
FLOAT strokeWidth,
ID2D1StrokeStyle* strokeStyle,
const D2D1_MATRIX_3X2_F& worldTransform,
BOOL* contains,
FLOAT flatteningTolerance = D2D1_DEFAULT_FLATTENING_TOLERANCE) const;
Parametry
punkt
Punkt do przetestowania pod kątem zawierania.
strokeWidth
Grubość pociągnięcia do zastosowania.
strokeStyle
Styl pociągnięcia do zastosowania.
worldTransform
Transformacja do zastosowania do geometrii pociągniętej.
Contains
Gdy ta metoda zwraca wartość logiczną ustawioną na WARTOŚĆ TRUE, jeśli pociągnięcie geometrii zawiera określony punkt; w przeciwnym razie, FAŁSZ. Musisz przydzielić magazyn dla tego parametru.
spłaszczanieDolerancja
Dokładność liczbowa, za pomocą której jest obliczana dokładna ścieżka geometryczna i przecięcie ścieżki. Punkty brakuje pociągnięcia o mniejsze niż tolerancja są nadal brane pod uwagę wewnątrz. Mniejsze wartości generują dokładniejsze wyniki, ale powodują wolniejsze wykonywanie.
Wartość zwracana
Jeśli metoda powiedzie się, zwraca wartość TRUE. W przeciwnym razie zwraca wartość FALSE.
CD2DGeometry::Tessellate
Tworzy zestaw trójkątów z ranami zegara, które pokrywają geometrię po jej przekształceniu przy użyciu określonej macierzy i spłaszczone przy użyciu określonej tolerancji.
BOOL Tessellate(
const D2D1_MATRIX_3X2_F& worldTransform,
ID2D1TessellationSink* tessellationSink,
FLOAT flatteningTolerance = D2D1_DEFAULT_FLATTENING_TOLERANCE) const;
Parametry
worldTransform
Przekształcenie, które ma dotyczyć tej geometrii lub wartości NULL.
tessellationSink
ID2D1TessellationSink, do którego dołączana jest tessellated.
spłaszczanieDolerancja
Maksymalna granica odległości między punktami w przybliżeniu wielokątne geometrii. Mniejsze wartości generują dokładniejsze wyniki, ale powodują wolniejsze wykonywanie.
Wartość zwracana
Jeśli metoda powiedzie się, zwraca wartość TRUE. W przeciwnym razie zwraca wartość FALSE.
CD2DGeometry::Widen
Rozszerza geometrię określonego pociągnięcia i zapisuje wynik w id2D1SimplifiedGeometrySink po przekształceniu przez określoną macierz i spłaszczone przy użyciu określonej tolerancji.
BOOL Widen(
FLOAT strokeWidth,
ID2D1StrokeStyle* strokeStyle,
const D2D1_MATRIX_3X2_F& worldTransform,
ID2D1SimplifiedGeometrySink* geometrySink,
FLOAT flatteningTolerance = D2D1_DEFAULT_FLATTENING_TOLERANCE) const;
Parametry
strokeWidth
Ilość, o jaką należy poszerzyć geometrię.
strokeStyle
Styl pociągnięcia, który ma być stosowany do geometrii lub wartości NULL.
worldTransform
Przekształcenie, które ma być stosowane do geometrii po jego poszerzeniu.
geometrySink
Id2D1SimplifiedGeometrySink, do którego dołączana jest poszerzony geometria.
spłaszczanieDolerancja
Maksymalna granica odległości między punktami w przybliżeniu wielokątne geometrii. Mniejsze wartości generują dokładniejsze wyniki, ale powodują wolniejsze wykonywanie.
Wartość zwracana
Jeśli metoda powiedzie się, zwraca wartość TRUE. W przeciwnym razie zwraca wartość FALSE.