DNA Calib 1.1
Project brief
UVBarycentricMapping.h
Go to the documentation of this file.
1// Copyright Epic Games, Inc. All Rights Reserved.
2
3#pragma once
4
8
9namespace dnac {
10
11
13 public:
14 using TrianglePositionIndicesPair = std::pair<Triangle, std::array<std::uint32_t, 3u> >;
15 using BarycentricPositionIndicesPair = std::pair<fvec3, ConstArrayView<std::uint32_t> >;
16
17 public:
18 UVBarycentricMapping(const std::function<ConstArrayView<std::uint32_t>(std::uint32_t)>& faceGetter,
19 ConstArrayView<std::uint32_t> vertexPositionIndices,
20 ConstArrayView<std::uint32_t> textureCoordinateUVIndices,
23 std::uint32_t faceCount,
24 MemoryResource* memRes);
25
26 explicit UVBarycentricMapping(const dna::Reader* reader, std::uint16_t meshIndex, MemoryResource* memRes);
27
30
32
33 private:
36};
37
38} // namespace dnac
The abstract Reader which its implementations are expected to inherit.
Definition: Reader.h:21
Definition: UVBarycentricMapping.h:12
Vector< BoundingBox > bBoxes
Definition: UVBarycentricMapping.h:35
std::pair< fvec3, ConstArrayView< std::uint32_t > > BarycentricPositionIndicesPair
Definition: UVBarycentricMapping.h:15
Vector< TrianglePositionIndicesPair > triangles
Definition: UVBarycentricMapping.h:34
BarycentricPositionIndicesPair getBarycentric(const fvec2 &uv) const
Definition: UVBarycentricMapping.cpp:67
UVBarycentricMapping(const std::function< ConstArrayView< std::uint32_t >(std::uint32_t)> &faceGetter, ConstArrayView< std::uint32_t > vertexPositionIndices, ConstArrayView< std::uint32_t > textureCoordinateUVIndices, ConstArrayView< float > Us, ConstArrayView< float > Vs, std::uint32_t faceCount, MemoryResource *memRes)
Definition: UVBarycentricMapping.cpp:7
std::pair< Triangle, std::array< std::uint32_t, 3u > > TrianglePositionIndicesPair
Definition: UVBarycentricMapping.h:14
ConstArrayView< TrianglePositionIndicesPair > getTriangles() const
Definition: UVBarycentricMapping.cpp:59
ConstArrayView< BoundingBox > getBoundingBoxes() const
Definition: UVBarycentricMapping.cpp:63
MemoryResource is an abstract class that allows the implementation of polymorphic allocators.
Definition: MemoryResource.h:17
A view over a continuous sequence of objects.
Definition: ArrayView.h:55
Definition: Command.h:8
std::vector< T, Allocator > Vector
Definition: include/pma/TypeDefs.h:29
Definition: Vec.h:10