Метод ID3DX10Mesh::IntersectSubset
Определяет, пересекается ли луч с подмножеством этой сетки.
Синтаксис
HRESULT IntersectSubset(
[in] UINT AttribId,
[in] D3DXVECTOR3 *pRayPos,
[in] D3DXVECTOR3 *pRayDir,
[in] UINT *pHitCount,
[in] UINT *pFaceIndex,
[in] float *pU,
[in] float *pV,
[in] float *pDist,
[out] ID3D10Blob **ppAllHits
);
Параметры
-
AttribId [in]
-
Тип: UINT
Идентификатор атрибута, определяющий подмножество сетки.
-
pRayPos [in]
-
Тип: D3DXVECTOR3*
Указатель на структуру D3DXVECTOR3 , указывающую точку начала луча.
-
pRayDir [in]
-
Тип: D3DXVECTOR3*
Указатель на структуру D3DXVECTOR3 , указывающую направление луча.
-
pHitCount [in]
-
Тип: UINT*
Количество пересечений луча с сеткой.
-
pFaceIndex [in]
-
Тип: UINT*
Указатель на значение индекса лица, ближайшего к источнику луча, если pHit имеет значение TRUE.
-
pU [in]
-
Тип: float*
Указатель на барицентрическую координату попадания U.
-
pV [in]
-
Тип: float*
Указатель на барицентрическую координату попадания, V.
-
pDist [in]
-
Тип: float*
Указатель на расстояние параметра пересечения луча.
-
ppAllHits [out]
-
Тип: ID3D10Blob**
Указатель на интерфейс ID3D10Blob, содержащий массив D3DX10_INTERSECT_INFO структур. Это список всех попаданий, которые произошли в тесте пересечения.
Возвращаемое значение
Тип: HRESULT
Возвращаемое значение является одним из значений, перечисленных в коде возврата Direct3D 10.
Комментарии
Этот API предоставляет способ понять точки в треугольнике и вокруг нее, независимо от того, где на самом деле находится треугольник. Эта функция возвращает результирующая точка с помощью следующего уравнения: V1 + U(V2 – V1) + V(V3 – V1).
Любая точка плоскости V1V2V3 может быть представлена барицентрической координатой (U,V). Параметр U определяет, сколько V2 взвешивается в результатах, а параметр V определяет, сколько V3 взвешивается в результат. Наконец, значение [1 – (U + V)] определяет, сколько V1 взвешивается в результате.
Барицентрические координаты являются формой общих координат. В этом контексте использование барицентрических координат представляет собой изменение систем координат. То, что верно для декартовых координат, верно для барицентрических координат.
Барицентрические координаты определяют точку внутри треугольника с точки зрения вершин треугольника. Более подробное описание барицентрических координат см. в разделе Описание барицентрических координат Mathworld.
Требования
Требование | Значение |
---|---|
Заголовок |
|
Библиотека |
|
См. также раздел