8#ifndef IGL_PER_EDGE_NORMALS_H
9#define IGL_PER_EDGE_NORMALS_H
44 const Eigen::MatrixBase<DerivedV>& V,
45 const Eigen::MatrixBase<DerivedF>& F,
47 const Eigen::MatrixBase<DerivedFN>& FN,
48 Eigen::PlainObjectBase<DerivedN> & N,
49 Eigen::PlainObjectBase<DerivedE> & E,
50 Eigen::PlainObjectBase<DerivedEMAP> & EMAP);
59 const Eigen::MatrixBase<DerivedV>& V,
60 const Eigen::MatrixBase<DerivedF>& F,
62 Eigen::PlainObjectBase<DerivedN> & N,
63 Eigen::PlainObjectBase<DerivedE> & E,
64 Eigen::PlainObjectBase<DerivedEMAP> & EMAP);
73 const Eigen::MatrixBase<DerivedV>& V,
74 const Eigen::MatrixBase<DerivedF>& F,
75 Eigen::PlainObjectBase<DerivedN> & N,
76 Eigen::PlainObjectBase<DerivedE> & E,
77 Eigen::PlainObjectBase<DerivedEMAP> & EMAP);
80#ifndef IGL_STATIC_LIBRARY
81# include "per_edge_normals.cpp"
#define IGL_INLINE
Definition igl_inline.h:15
PerEdgeNormalsWeightingType
Weighting schemes for per edge normals.
Definition per_edge_normals.h:16
@ NUM_PER_EDGE_NORMALS_WEIGHTING_TYPE
Total number of weighting types.
Definition per_edge_normals.h:24
@ PER_EDGE_NORMALS_WEIGHTING_TYPE_AREA
Incident face normals are averaged weighted by area.
Definition per_edge_normals.h:20
@ PER_EDGE_NORMALS_WEIGHTING_TYPE_DEFAULT
Area weights.
Definition per_edge_normals.h:22
@ PER_EDGE_NORMALS_WEIGHTING_TYPE_UNIFORM
Incident face normals have uniform influence on edge normal.
Definition per_edge_normals.h:18
void per_edge_normals(const Eigen::MatrixBase< DerivedV > &V, const Eigen::MatrixBase< DerivedF > &F, const PerEdgeNormalsWeightingType weight, const Eigen::MatrixBase< DerivedFN > &FN, Eigen::PlainObjectBase< DerivedN > &N, Eigen::PlainObjectBase< DerivedE > &E, Eigen::PlainObjectBase< DerivedEMAP > &EMAP)
Compute face normals via vertex position list, face list.