Compartir a través de


Métodos ID2D1Geometry::ComputeLength

Calcula la longitud de la geometría como si cada segmento se anulara en una línea.

Lista de sobrecarga

Método Descripción
ComputeLength(D2D1_MATRIX_3X2_F,FLOAT&*) Calcula la longitud de la geometría como si cada segmento se anulara en una línea.
ComputeLength(D2D1_MATRIX_3X2_F*,FLOAT*) Calcula la longitud de la geometría como si cada segmento se anulara en una línea.
ComputeLength(D2D1_MATRIX_3X2_F,FLOAT,FLOAT&*) Calcula la longitud de la geometría como si cada segmento se anulara en una línea.
ComputeLength(D2D1_MATRIX_3X2_F*,FLOAT,FLOAT*) Calcula la longitud de la geometría como si cada segmento se anulara en una línea.

Ejemplos

En el código siguiente se muestra cómo usar ComputeLength para calcular la longitud de una geometría de ruta de acceso especificada.

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);
}

Requisitos

Requisito Valor
Biblioteca
D2d1.lib
Archivo DLL
D2d1.dll

Consulte también

ID2D1Geometry