Freigeben über


ID2D1Geometry::ComputeLength-Methoden

Berechnet die Länge der Geometrie so, als ob jedes Segment in eine Zeile gerollt wurde.

Überladeliste

Methode Beschreibung
ComputeLength(D2D1_MATRIX_3X2_F,FLOAT&*) Berechnet die Länge der Geometrie so, als ob jedes Segment in eine Zeile gerollt wurde.
ComputeLength(D2D1_MATRIX_3X2_F*,FLOAT*) Berechnet die Länge der Geometrie so, als ob jedes Segment in eine Zeile gerollt wurde.
ComputeLength(D2D1_MATRIX_3X2_F,FLOAT,FLOAT&*) Berechnet die Länge der Geometrie so, als ob jedes Segment in eine Zeile gerollt wurde.
ComputeLength(D2D1_MATRIX_3X2_F*,FLOAT,FLOAT*) Berechnet die Länge der Geometrie so, als ob jedes Segment in eine Zeile gerollt wurde.

Beispiele

Der folgende Code zeigt, wie Sie ComputeLength verwenden, um die Länge einer angegebenen Pfadgeometrie zu berechnen.

float length = 0;
hr = m_pPathGeometry->ComputeLength(
    NULL, //no transform
    &length
    );

if (SUCCEEDED(hr))
{
    m_Animation.SetStart(0);        //start at beginning of path
    m_Animation.SetEnd(length);     //length at end of path
    m_Animation.SetDuration(5.0f);  //seconds

    ZeroMemory(&m_DwmTimingInfo, sizeof(m_DwmTimingInfo));
    m_DwmTimingInfo.cbSize = sizeof(m_DwmTimingInfo);

    // Get the composition refresh rate. If the DWM isn't running,
    // get the refresh rate from GDI -- probably going to be 60Hz
    if (FAILED(DwmGetCompositionTimingInfo(NULL, &m_DwmTimingInfo)))
    {
        HDC hdc = GetDC(m_hwnd);
        m_DwmTimingInfo.rateCompose.uiDenominator = 1;
        m_DwmTimingInfo.rateCompose.uiNumerator = GetDeviceCaps(hdc, VREFRESH);
        ReleaseDC(m_hwnd, hdc);
    }

    ShowWindow(m_hwnd, SW_SHOWNORMAL);

    UpdateWindow(m_hwnd);
}

Anforderungen

Anforderung Wert
Bibliothek
D2d1.lib
DLL
D2d1.dll

Siehe auch

ID2D1Geometrie